【问题标题】:Laravel 5 on shared hosting getting internal server error共享主机上的 Laravel 5 出现内部服务器错误
【发布时间】:2015-06-10 07:45:28
【问题描述】:

我正在尝试通过 FTP 在我的共享主机上运行我的 Laravel 5 项目。

我已将本地 XAMP 文件夹中的所有项目文件上传到服务器根目录,并将文件放在 public_html 文件夹中的“公共”文件夹中。

当我转到 mydomain.com 时,我被重定向到 mydomain.com/auth/login,正如我在 routes.php 中设置的那样,尽管我在所有路径上都收到 500 个内部服务器错误,但这似乎可以正常工作。

【问题讨论】:

  • 您的根文件夹中有 .htaccess 文件吗?
  • 仅在public_html中,但我尝试在根文件夹中使用这样的.htaccess,但没有成功: RewriteEngine On RewriteCond %{REQUEST_URI} !^public RewriteRule ^(.* )$ public/$1 [L]
  • 您是否按照教程在共享主机上托管您的 laravel ?如果是,请链接它
  • 这里类似于方法#1:driesvints.com/blog/laravel-4-on-a-shared-host 但我将所有核心应用程序文件放在根目录中,因为这样我就不必更改 index.php 中的路径

标签: deployment ftp laravel-5 shared-hosting


【解决方案1】:

有时这是因为存储文件夹不可被服务器写入。一种可能的方法是通过 ssh 进入应用程序(即 /path/to/mywebsite),然后执行

chmod -R 777 storage/

因为日志,缓存,需要写在那里。或者您也可以使用 FTP 应用程序来执行此操作(只需使所有内容都可执行、可读、可写)。

更新:

另一个解决方案(我不时使用 - 显然也在这里工作:-))是添加

RewriteBase /

紧随其后的一行

RewriteEngine On

在 .htaccess 文件中。

【讨论】:

  • 777 on storage 似乎没有解决它......但是我也没有看到任何错误日志
  • 如何在 .htaccess 中的“RewriteEngine On”之后添加“RewriteBase /”作为一行?
  • 成功了,非常感谢!将其添加为答案,我会支持它
【解决方案2】:

Laravel 要求存储是所有人可读、可写和可执行的,所以你需要运行

chmod -R 777 storage/

这通常可以解决问题,但如果 Internal Server 500 仍然存在,请运行

composer dump-autoload

然后

php artisan optimize

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-18
    • 1970-01-01
    • 2018-02-22
    • 2021-01-11
    • 2019-09-20
    • 2016-03-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多