thinkphp5 nginx配置 安全pathinfo版本

来源:互联网 发布:人工智能学会 编辑:程序博客网 时间:2024/06/18 04:51
server    {        listen 80;        server_name tp.com www.tp.com;        index index.html index.htm index.php;        root  /home/wwwroot/thinkphp/public/;        location / {            if (!-e $request_filename) {                rewrite ^(.*)$ /index.php$1 last;                break;            }        }        location ~ ^(.+\.php)(.*)$ {            # try_files $uri =404;            fastcgi_pass unix:/tmp/php-cgi.sock;            fastcgi_index index.php;            include fastcgi_params;            fastcgi_split_path_info ^(.+\.php)(\/?.*)$;            fastcgi_param PATH_INFO $fastcgi_path_info;            # 强制将某些非法地址交给 index.php 处理            set $new_fastcgi_script_name $fastcgi_script_name;            if (!-e $document_root$fastcgi_script_name) {                set $new_fastcgi_script_name "/index.php";            }             fastcgi_param SCRIPT_FILENAME $document_root$new_fastcgi_script_name;            fastcgi_param SCRIPT_NAME $new_fastcgi_script_name;        }        location /nginx_status        {            stub_status on;            access_log   off;        }        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$        {            if (!-e $request_filename) {                rewrite ^/(uploads/.*)$ /pic.php?$1 last;            }            expires      30d;        }        location ~ .*\.(js|css)?$        {            expires      12h;        }        location ~ /\.        {            deny all;        }    }