Docker下Laravel应用无法访问:Nginx配置排错指南
在Docker环境部署Laravel应用时,正确配置Nginx至关重要。如果您的应用无法通过yxfxs.test访问,本文将指导您排查并解决Nginx配置问题。
问题原因及解决方案:
常规Nginx配置在Docker环境下可能失效,主要原因在于Laravel项目路径与Nginx容器的路径映射不一致。
步骤一:正确挂载Laravel项目
启动PHP镜像时,使用-v参数将本地Laravel项目绝对路径挂载到容器内的/var/www/目录:
docker run --name phpimagename -v "/本地laravel绝对路径:/var/www/laravel" php:8-fpm
登录后复制
请务必替换/本地laravel绝对路径为您的实际项目路径。
步骤二:映射端口
启动Nginx镜像,并将容器的80端口映射到主机的8083端口:
docker run -p "8083:80" nginx
登录后复制
步骤三:修改Nginx配置文件
在Nginx容器内的配置文件中,关键在于fastcgi_pass和fastcgi_param SCRIPT_FILENAME参数的设置。 将fastcgi_pass指向您的PHP-FPM容器名称和端口:
fastcgi_pass phpimagename:9000; fastcgi_param SCRIPT_FILENAME /var/www/laravel/public$fastcgi_script_name;
登录后复制
确保phpimagename与步骤一中指定的容器名称一致。
通过以上步骤,Nginx将正确访问挂载的Laravel项目,您即可通过yxfxs.test访问应用。 请检查您的域名解析是否正确指向主机8083端口。
以上就是Docker中Laravel应用无法访问,配置问题如何解决?的详细内容,更多请关注php中文网其它相关文章!