如何解决使用docker在laravel上的Nginx子目录给出404
我有一个nginx容器,该容器在laravel容器的上游,并使用以下配置文件,我试图添加一个名为cms
的位置,然后该位置应使用我的laravel上游服务器。但是现在我得到404,找不到文件错误。我已经尝试了Internet上几乎所有的解决方案,但没有任何成就。
Nignx.conf
location ^~ /cms/ {
root /var/www/public;
try_files $uri $uri/ @cms;
location ~ \.php$ {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass redirect;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
location @cms{
rewrite /cms/(.*)$ /cms/index.php?/$1 last;
#try_files $uri $uri/ /index.php?$query_string;
}
PHP-FPM日志
172.10.9.91 - 17/Sep/2020:14:29:59 +0000 "GET /cms/index.php" 404
172.10.9.91 - 17/Sep/2020:14:30:05 +0000 "GET /cms/index.php" 404
172.10.9.91 - 17/Sep/2020:14:30:20 +0000 "GET /cms/index.php" 404
172.10.9.91 - 17/Sep/2020:14:30:30 +0000 "GET /cms/index.php" 404
当我尝试通过删除/cms/index.php?/1$
来更改上述配置文件时,似乎Nginx没有使用上游服务器,并且代码在我当前的主域上提供了404。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。