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

Azure按量付费部署Laravel遇403 Forbidden nginx/1.26.2错误求助

排查Laravel部署Azure Pay-As-You-Go后Nginx 403 Forbidden错误的步骤
  • 检查Nginx站点配置的根目录指向
    必须确保Nginx配置的root指向Laravel项目的public子目录,而非项目根目录,否则会触发403。示例正确配置:

    root /var/www/html/your-laravel-project/public;
    index index.php index.html index.htm;
    
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    

    修改后重启Nginx生效:sudo systemctl restart nginx

  • 修正Laravel目录权限
    给Nginx运行用户(通常为www-data)赋予项目目录的访问权限,重点确保storage和bootstrap/cache可写入:

    sudo chown -R www-data:www-data /var/www/html/your-laravel-project
    sudo chmod -R 755 /var/www/html/your-laravel-project/storage
    sudo chmod -R 755 /var/www/html/your-laravel-project/bootstrap/cache
    

    禁止使用777权限,避免安全风险。

  • 验证Azure网络安全配置
    确认Azure VM的网络安全组(NSG)已开放80(HTTP)和443(HTTPS)端口的入站流量,同时检查VM的公共IP是否正常绑定,无额外防火墙拦截请求。

  • 核对Laravel环境配置
    检查项目根目录的.env文件:

    • APP_URL需与Azure公网IP/域名一致
    • APP_ENV设置为production
    • 确保APP_KEY已生成,未生成则执行:php artisan key:generate --force
  • 查看日志定位具体问题
    查看Nginx错误日志获取触发403的细节:

    sudo tail -f /var/log/nginx/error.log
    

    同时查看Laravel应用日志:

    sudo tail -f /var/www/html/your-laravel-project/storage/logs/laravel.log
    

    日志信息会明确指出是权限、路由还是配置类问题。

  • Azure App Service专属检查(若未用VM部署)
    如果是部署到Azure App Service:

    • 确认部署中心绑定了正确代码分支,部署流程自动执行了composer install
    • 检查启动命令是否配置正确,例如指向Nginx配置或执行php artisan serve
    • 查看App Service的日志流,获取部署或运行时错误

内容的提问来源于stack exchange,提问作者Fanie Bugenne

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 05:17:41