• 技术文章 >后端开发 >php教程

    php Nginx服务器配置支持pathinfo

    不言不言2018-04-13 11:10:29原创721
    本篇文章给大家分享的内容是关于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中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:pathinfo Nginx php
    上一篇:php中的const和global 下一篇:php 守护进程(Daemon)
    大前端线上培训班

    相关文章推荐

    • 推荐一本PHP程序猿都应该拜读的书_PHP• CodeIgniter自定义控制器MY_Controller用法分析_php实例• php实现给一张图片加上水印效果_php实例• Thinkphp关闭缓存的方法_php实例• ThinkPHP CURD方法之table方法详解_php实例

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网