nginx、TP框架实现兼容pathinfo和rewrite两种url访问方式

nginx、TP框架实现兼容pathinfo和rewrite两种url访问方式

https://blog.csdn.net/jo_andy/article/details/52598097

环境:centos7,yum安装的nginx1.10、php-fpm,tp3.2
本方法只需要配置nginx.conf的一个文件就可以支持pathinfo和rewrite两种url访问方式

vim /etc/nginx/nginx.conf

 

1、支持rewrite方式:
location / 处添加以下代码

if (!-e $request_filename) {
   rewrite  ^(.*)$  /index.php?s=$1  last;
    break;
}

 

最终变成

 

location / {
            root   html/code;
            index  index.php index.html index.htm;
            if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php?s=$1  last;
                break;
            }
        }

 

2.实现pathinfo模式
找到有效的 location ~ .php$那部分
首先,将这个$去掉,
然后里面添加以下两行代码

fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;

 

最终变成

location ~ \.php {
            root           html/code;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info ^(.+\.php)(.*)$;
            fastcgi_param PATH_INFO $fastcgi_path_info;         
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

 

3.重启nginx和php-fpm即可使用了

service nginx restart
service php-fpm restart

 

 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113483.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jrtplib 编译安装配置[通俗易懂]

    jrtplib 编译安装配置[通俗易懂]  RTP是目前解决流媒体实时传输问题的最好办法,而JRTPLIB是一个用C++语言实现的RTP库,包括UDP通讯,它的主页地址是:Jori’spage  jrtplib源码的获取,可以在它的主页上直接下载,也可以使用git直接克隆一份。因为它的主页是国外网站,下载速度非常慢,我这里提供一份已经下载好的最新的jrtplib源码:jrtplib-3.11.1.tar.gz  我…

    2022年7月28日
    17
  • WebGame开发总结

    WebGame开发总结项目基本情况:  服务器端采用c++和c#混合开发,网络层采用c++开发,业务逻辑用c#开发。客户端采用silverlight。数据库采用mysql。GM工具用Asp.net,GM工具盒服务器通讯用wcf,基本把微软的东西都用遍了。  服务器端在开始的时候,使用了某位同事之前开发的一款服务器端引擎,改引擎曾经开源但现在基本不再更新。引擎地址:http://mmorpg.codeplex.com/  这款引擎在使用上只满足了部分需求,再加上原作者又跳槽,引擎基本是我在维护和改进,不过基本上都往里面

    2022年5月2日
    51
  • linux设置文件权限777_linux目录详解

    linux设置文件权限777_linux目录详解Linux、Fedora、Ubuntu修改文件、文件夹权限的方法差不多。很多人开始接触Linux时都很头痛Linux的文件权限问题。这里告诉大家如何修改Linux文件-文件夹权限。以主文件夹下的一个名为“cc”的文件夹为例。下面一步一步介绍如何修改权限:1.打开终端。输入”su”(没有引号)2.接下来会要你输入密码,输入你的root密码。3.假设我的文件夹在主目录里,地址为/var/home/d…

    2025年10月25日
    3
  • Java实现将数字转为大写汉字

    Java实现将数字转为大写汉字

    2022年3月6日
    50
  • android定时器取消,Android定时器崩溃取消

    android定时器取消,Android定时器崩溃取消我有一个定时器运行,然后熄灭,并做了一些事情,定时器启动罚款。Android定时器崩溃取消然后我想要做的是点击一个按钮,然后创建一个电子邮件。除了在计时器运行时单击该按钮之外,一切正常,应用程序崩溃。当按下按钮时试图取消计时器时,也会使应用程序崩溃。任何帮助,将不胜感激。下面的代码片段:publicclassmyApplicationextendsActivity{StringBuild…

    2022年7月25日
    19
  • jsp include与include

    jsp include与includeinclude是翻译是进行合并,然后对合并文件进行编译jsp:include是分别编译,然后对二进制文件合并

    2022年7月13日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号