php Nginx服务器配置支持pathinfo

宜家博客
宜家博客
宜家博客
48038
文章
0
评论
2020年6月30日22:14:50 评论 0 1939字阅读6分27秒

本篇文章给大家分享的内容是关于php Nginx服务器配置支持pathinfo,有着一定的参考价值,有需要的朋友可以参考一下

第一种方法:

修改Nginx的配置未见nginx.conf

location ~ \.php {  
        fastcgi_pass 127.0.0.1:9000;  
        fastcgi_index index.php;  
        include /usr/local/etc/nginx/fastcgi.conf;  
        set $real_script_name $fastcgi_script_name;  
        if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {  
                set $real_script_name $1;  
                set $path_info $2;  
        }  
        fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;  
        fastcgi_param SCRIPT_NAME $real_script_name;  
        fastcgi_param PATH_INFO $path_info;  
}

如果只应用于特定host 则不需要修改fastcgi.conf的配置文件,别忘记重新加载nginx配置

第二种方法:

nginx.conf代码如下:

location ~ [^/]\.php(/|$) {
      #fastcgi_pass remote_php_ip:9000;
      fastcgi_pass unix:/dev/shm/php-cgi.sock;
      fastcgi_index index.php;
      include fastcgi.conf;
      set $real_script_name $fastcgi_script_name;  
        if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {  
                set $real_script_name $1;  
                set $path_info $2;  
        }  
        fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;  
        fastcgi_param SCRIPT_NAME $real_script_name;  
        fastcgi_param PATH_INFO $path_info;
    }

fastcgi.conf代码如下:

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REQUEST_SCHEME     $scheme;
fastcgi_param  HTTPS              $https if_not_empty;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

重新加载nginx:

nginx -s reload

相关推荐:

nginx下启动php-fpm出现错误的原因以及解决方案

Nginx的配置文件怎样分段下载

以上就是php Nginx服务器配置支持pathinfo的详细内容,更多请关注php教程网其它相关文章!

继续阅读
weinxin
欢迎加入中国站长博客之家
本站的所有资源都会上传分享到博客之家,希望大家互相学习交流进步。
宜家博客
采用nginx让多个tomcat实现负载均衡 php教程

采用nginx让多个tomcat实现负载均衡

由于目录已将项目正式部署并发布了,但由于时不时地会出现bug,修复bug再次提交后,会让项目出现短时间的无法访问的问题,虽然时间虽短,但还是会影响用户的体验。为了不让用户察觉出项目的变动,于是我便采用...
nginx怎么预防脚本攻击 php教程

nginx怎么预防脚本攻击

怎么防止别人用脚本攻击网站? 回复内容: 怎么防止别人用脚本攻击网站? 攻击网站有多种方式,你需要的是一台能对流量进行分析,甚至能把流量与业务进行关联分析的行为级防火墙,而不是简单的给nginx上什么...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: