You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure App Services部署Laravel应用出现403 Nginx 1.24.0错误求助

解决Azure App Service上Laravel 8.1应用的403 Nginx 1.24.0错误

以下是针对该问题的排查和解决步骤:

1. 确认站点根目录指向Laravel的public文件夹

Laravel的入口文件是public/index.php,Azure App Service默认可能未正确指向该目录,可通过以下方式配置:

  • 进入App Service的配置 -> 路径映射,添加虚拟应用程序:设置虚拟路径为/,物理路径为/home/site/wwwroot/public(Linux环境)或site\wwwroot\public(Windows环境)。
  • 或在配置 -> 常规设置中,设置启动命令为cd /home/site/wwwroot && php artisan serve --host 0.0.0.0 --port 8080(Linux环境),强制指定应用入口。

2. 修复文件权限问题

欠费恢复后文件系统权限可能被重置,Laravel需要storage和bootstrap/cache目录具备读写权限:

  • 通过App Service的开发工具 -> SSH连接到实例,执行命令:
    chmod -R 775 /home/site/wwwroot/storage /home/site/wwwroot/bootstrap/cache
    chown -R www-data:www-data /home/site/wwwroot/storage /home/site/wwwroot/bootstrap/cache
    

3. 恢复默认Nginx配置(若手动修改过)

如果之前尝试自定义Nginx配置导致冲突,删除你添加的.nginx.conf或nginx.conf文件,让App Service使用默认的PHP站点配置——默认配置已适配Laravel路由规则,无需手动调整。

4. 重启并重新部署应用

  • 在Azure门户的App Service概述页面,点击重启按钮,等待实例重启完成。
  • 重新触发一次部署(比如从代码仓库重新部署,或手动上传代码),确保部署流程无异常。

5. 查看日志定位具体原因

通过日志可精准找到403错误根源:

  • 查看Laravel日志:在SSH中查看/home/site/wwwroot/storage/logs下的日志文件,记录了应用层面的错误信息。
  • 查看Nginx日志:在App Service的监测 -> 日志流中选择nginx日志,查看具体的403错误详情(如目录访问被禁止、文件不存在或权限不足等)。

内容的提问来源于stack exchange,提问作者Felipe Lipe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 18:05:08