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

Laravel应用部署至Heroku后出现Forbidden访问禁止问题求助

解决Heroku上Laravel应用访问禁止(Forbidden)问题

以下是排查和解决的具体操作步骤:

  • 确认Web根目录配置
    Heroku默认将项目的public目录作为Web根目录,需确保Laravel项目的根目录指向设置正确。可以查看Heroku的构建日志,排查是否存在路径配置类的错误。

  • 验证Procfile命令正确性
    确保Procfile内的启动命令无误,标准的Laravel部署Procfile内容应为:

    web: vendor/bin/heroku-php-apache2 public/
    

    注意末尾的public/必须保留,它用于指定Apache服务的根目录为Laravel的public文件夹。

  • 清除缓存后重新部署
    在本地执行以下命令清除Laravel缓存,再重新推送代码至Heroku:

    php artisan cache:clear
    php artisan config:clear
    git add .
    git commit -m "Clear cache before deploy"
    git push heroku main
    
  • 调整目录权限
    确保Laravel的storage和bootstrap/cache目录具备可写权限。可以在composer.json的post-install-cmd节点中添加权限设置脚本:

    "post-install-cmd": [
        "chmod -R 775 storage bootstrap/cache"
    ]
    

    完成修改后重新推送代码,Heroku会在安装依赖后自动执行该脚本。

  • 查看Heroku应用日志
    执行heroku logs --tail命令实时查看应用运行日志,日志中会包含Forbidden错误的具体触发原因(比如文件缺失、权限不足、路由配置异常等),可根据日志信息针对性解决问题。

内容的提问来源于stack exchange,提问作者Omer Habib

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 16:22:04