现在的问题是访问如下地址,预期访问到admin模块下plugs控制器下的upfile方法
但是得到了如下的报错,由于错误的截取,导致实际访问到了'pfile'这个不存在的模块。。。
红框内为错误的 解析结果
有大佬知道这是怎么回事吗
下面是nginx的配置
现在的问题是访问如下地址,预期访问到admin模块下plugs控制器下的upfile方法
但是得到了如下的报错,由于错误的截取,导致实际访问到了'pfile'这个不存在的模块。。。
红框内为错误的 解析结果
有大佬知道这是怎么回事吗
下面是nginx的配置
以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
根据您提供的信息,我注意到以下几点:
在server块中,您使用了SCRIPT_FILENAME来获取脚本文件名。这在Nginx的解析过程中可能会出现问题。
SCRIPT_FILENAME通常用于检查请求是否指向脚本,而不是直接获取路径。如果您的应用程序是一个完整的Web应用,那么您应该使用SCRIPT_NAME来获取当前URL。
如果您正在使用SCRIPT_FILENAME,可能是因为某些脚本依赖于特定的文件结构或环境变量(例如,通过设置SCRIPT_FILENAME)。然而,在大多数情况下,您应该使用SCRIPT_NAME。
您提到的错误是在pfile.html文件中的<title>标签中出现的。这可能是由于错误地将<title>...</title>替换为了<title></title>造成的。
解决此问题的方法包括:
SCRIPT_NAME:如果您正在使用SCRIPT_FILENAME,请务必将其更改为SCRIPT_NAME,以获取正确的路径信息。<title>应被替换为</title>。以下是修改后的server块的示例:
server {
listen 80;
server_name example.com;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
请注意,这段代码适用于Apache服务器,而非Nginx。如果您正在使用的是Nginx,请将listen、server_name和location等部分调整为您自己的服务器配置。