我刚刚将我的Laravel 5 proyect上传到托管服务器。索引页几乎可以工作,但每个链接都被破坏了。每条路由都返回一个内部服务器错误消息。 这是实际的信息:
内部服务器错误
服务器遇到内部错误或配置错误 无法完成您的请求。
请与服务器管理员联系,告知他们时间 发生了错误,以及您可能做过的任何事情 导致错误。
有关此错误的详细信息可能在服务器错误中可用 日志中。
此外,遇到500内部服务器错误错误 尝试使用ErrorDocument来处理请求。
我已将存储文件夹权限设置为777,但我甚至没有收到错误日志。
有什么建议吗?
答案 0 :(得分:11)
最后我可以解决它添加
RewriteBase /
到公共文件夹中的.htaccess文件。
这是我完整的.htaccess文件:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteBase /
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
最奇怪的是我已经尝试过了,因为那是我如何用Laravel 4解决同样的问题。让它发挥作用的是改变
RewriteBase /
到错误的
RewriteBase ../
然后将其更改回
RewriteBase /
并且神秘地解决了。
我希望这可以帮助任何人。这是5:22,我需要一些睡眠
答案 1 :(得分:0)
如果您将public_html中的.htaccess
遗漏到.zip
或其他项目中,则您将遇到此问题。
答案 2 :(得分:0)
首先请确保.htaccess
目录中存在public_html
文件。 linux服务器上通过zip进行的大多数上传操作都不会自动复制.htaccess
文件,因为该文件已隐藏。