-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Closed
Description
1Panel Version
2.0.10
Please describe your needs or suggestions for improvements
现在网站默认配置conf文件php部分里,关于pathinfo的部分依然用的很古老的nginx写法,可以精简
location ~ [^/]\.php(/|$) {
fastcgi_pass 127.0.0.1:9081;
include fastcgi-php.conf;
include fastcgi_params;
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_params文件里
fastcgi_param SCRIPT_NAME $real_script_name; # 无用
fastcgi_param PATH_INFO $path_info; # 无用
}
Please describe the solution you suggest
fastcgi_params文件可精简为
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #这一行用于解决path_info问题
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;
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;
网址配置conf的php部分可精简为
location ~ [^/]\.php(/|$) {
fastcgi_pass 127.0.0.1:9000;
include fastcgi-php.conf;
include fastcgi_params;
}
php.ini 里,cgi.fix_pathinfo值设置为1(默认就是1)
Additional Information
No response