让Nginx支持ThingPHP的rewrite路由模式

****前言****
心累了,没有配置好Nginx整合ThinkPHP的话,啥提示也没有,之前一直将tp框架项目部署在apache服务器上面,记录这次让Nginx支持ThingPHP的rewrite路由模式。

LNMP基于docker构建

****解决方案****

  • 修改网站虚拟主机的配置文件 **.conf
server {
    listen  8090;

    server_name  localhost;

    location / { 
        root   /www/backstage/;
        index  index.htm index.html index.php;  
        #访问路径的文件不存在则重写URL转交给ThinkPHP处理  
        if (!-e $request_filename) {  
           rewrite  ^/(.*)$  /index.php/$1  last;  
           break;  
        }  
    }  

    location ~ \.php/?.*$ {  
        root           /www/backstage/;
        fastcgi_pass   __DOCKER_PHP_FPM__:9000;
        fastcgi_index  index.php; 
        #加载Nginx默认"服务器环境变量"配置  
        include        fastcgi.conf;  
          
        #设置PATH_INFO并改写SCRIPT_FILENAME,SCRIPT_NAME服务器环境变量  
        set $fastcgi_script_name2 $fastcgi_script_name;  
        if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") {  
            set $fastcgi_script_name2 $1;  
            set $path_info $2;  
        }  
        fastcgi_param   PATH_INFO $path_info;  
        fastcgi_param   SCRIPT_FILENAME   $document_root$fastcgi_script_name2;  
        fastcgi_param   SCRIPT_NAME   $fastcgi_script_name2;  
    }  
}


  • 配置TP框架的conf
/**
 * 路由配置
 */
'URL_ROUTER_ON' => true,      //开启路由
'URL_MODEL' => 2,

****价值源于技术,贡献源于分享****

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,183评论 19 139
  • Nginx简介 解决基于进程模型产生的C10K问题,请求时即使无状态连接如web服务都无法达到并发响应量级一万的现...
    魏镇坪阅读 6,345评论 0 9
  • 第41讲 | 世上有哪些竞争规则 暴力依然是非常重要和常见的竞争规则。 靠智力高低竞争资源。 以论资排辈界定产权。...
    知鱼君阅读 3,770评论 0 0
  • 一 黑夜舍不得白天 留下来吧 于是 失眠了 二 思想太放肆 脱缰乱跑 于是 失眠了 三 心儿掉进乱草堆 逃不出来 ...
    我是芳林阅读 1,702评论 3 6

友情链接更多精彩内容