【问题标题】:Laravel 500 error no logsLaravel 500 错误没有日志
【发布时间】:2018-08-12 07:49:50
【问题描述】:

首先,根据stackoverflow,当bootstrap/cachestorage目录的权限有问题时会出现这个问题。我几乎尝试了所有关于这方面的建议,但没有运气。

我很高兴在我的旧笔记本电脑上使用 Xubuntu 16.04,开发了一个项目。使用docker-compose 设置开发环境。昨天我买了全新的电脑,安装了 Kubuntu 18.04,安装了 docker 和我工作所需的一切。

克隆存储库,运行composer installdocker-compose up,然后运行php artisan migratephp artisan storage:link。但是当我尝试在浏览器中打开网站时,我收到 500 错误,正文为空。

APP_DEBUG 设置为 true。

6 小时后,我来到这里,结果几乎为零。尝试了在这里和论坛 (just example) 上找到的数十种解决方案。

我什至做了一个小实验:从我的旧笔记本电脑中删除项目目录,从头开始克隆它,安装所需的一切并且它工作。没有任何权限问题。

还有什么让我更伤心:docker 容器中没有日志,laravel 目录中没有日志,什么都没有。

请帮忙!怎么了?也许是库本图?也许是 18.04?也许是更新的 docker 版本?

附:现在bootstrap/cachestorage 目录归alex:alex 所有,拥有775 个权限。和我的笔记本电脑一模一样。

【问题讨论】:

    标签: php laravel docker ubuntu


    【解决方案1】:

    在第 37 行之前将dd($exception->getMessage()); 添加到exception handler class。运行请求并检查响应。

    如果这没有任何用处,请通过检查访问和错误日​​志来验证请求是否访问了网络服务器。检查系统日志也使用dmesg 和类似的。

    由于您提到了 Docker,如果您使用的是 nginx,请确保在运行 docker-compose up 时不会覆盖您的站点配置。

    【讨论】:

    • 或者我的上帝,你做的不可能!插入该行后,我终于收到有关数据库连接问题的错误消息。非常感谢!
    【解决方案2】:

    看起来错误可能与应该为 777 的存储权限、ownerhp 或应用程序的引导程序有关,甚至在它运行您的文件之前,当它拉出配置设置时。

    检查 .env 配置,以及 config 目录中的配置文件是否有任何错误。

    对于存储切换到 777 权限

    chmod -R 777 storage
    

    对于配置问题,请先尝试

    php artisan config:clear
    

    从控制台。

    【讨论】:

      【解决方案3】:

      如果您在 linux 服务器上,则可能是 selinux 权限。 尝试将 selinux 设置为被动:

      在终端类型中:

      setenforce 0
      

      然后看看你是否看到错误。如果它可以正常工作,您应该重新打开 selinux:

      setenforce 1 
      

      然后用selinux命令给目录可写:

      chcon -R -t httpd_sys_rw_content_t /path  
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-03-30
        • 2011-11-01
        • 2019-09-01
        • 2017-08-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多