|
发表于 2024-4-19 14:33:53
|
显示全部楼层
|
本帖最后由 追影 于 2024-4-26 18:30 编辑
最近帮一个客户金沙娱场城app的技术支持发现 大米cms7 nginx下 /index.php/home/index/index访问出现404
一搜索原来是nginx默认不支持path_info 他用的是windows的宝塔 php7.2 发现宝塔内置了path_info相关配置 但是是错误的 不起作用
include/php72.conf llinux的宝塔/www/server/nginx/conf/pathinfo.conf
修改这个为:- location ~ \.php(.*)$ {
- try_files $uri =404;
- fastcgi_pass 127.0.0.1:20072; #默认都有的注意这个不要覆盖他的
- fastcgi_index index.php; #默认都有的注意这个不要覆盖他的
- set $path_info "";
- set $real_script_name $fastcgi_script_name;
- if ($fastcgi_script_name ~ "^(. ?\.php)(/. )[ discuz_code_0 ]quot;) {
- #将文件地址赋值给变量 $real_script_name
- set $real_script_name $1;
- #将文件地址后的参数赋值给变量 $path_info
- set $path_info $2;
- }
- #配置fastcgi的一些参数
- fastcgi_param script_filename $document_root$real_script_name;
- fastcgi_param script_name $real_script_name;
- fastcgi_param path_info $path_info;
- include fastcgi_params;
- }
复制代码
顺利解决:
测试支持pathinfo否trade目录下新建test.php-
- var_dump($_server['path_info']);
复制代码
出现下图
|
|