1. 问题
Windows服务器下使用宝塔面板配置 nginx 部署HkCms时,访问如:http://www.xxxx.com/index/index/index下正常访问,但是在访问http://www.xxxx.com/xxx.php/ceshi/ceshi时,直接报404。在测试过程中发现nginx并没有去到php,所以有可能是phpinfo解析规则问题。
2. 解决
- 宝塔里去到网站打开设置打开配置文件,phpinfo使用的是以下配置文件,根据这个路径去到宝塔目录里面找到php/73.conf
#PHP-INFO-START
include php/73.conf;
#PHP-INFO-END
- 修改以下配置,注释的是原有的配置
location ~ \.php(.*)$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:20073;
fastcgi_index index.php;
#fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fastcgi_param PATH_INFO $fastcgi_path_info;
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
set $fastcgi_script_name2 $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") {
set $fastcgi_script_name2 $1;
set $path_info $2;
}
fastcgi_param PATH_INFO $path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name2;
fastcgi_param SCRIPT_NAME $fastcgi_script_name2;
include fastcgi_params;
}
- 重启Nginx服务,测试访问成功
发表评论 取消回复