我的客户最近从1and1.com托管公司购买了linux 1& 1无限套餐。我在Laravel 4.2框架中为他构建了应用程序。该应用程序在我的本地计算机上以及在我自己的VPS上运行得非常好。但是当我在客户端主机上设置文件时,看起来.htaccess文件无效。这就是为什么,laravel路由不起作用,我在尝试访问网站的不同路由时不断收到404错误消息。
我已经对这个问题进行了很多研究,发现很多人都遇到了同样的问题,却找不到解决这个问题的真正方法。
这是.htaccess代码:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
我正在使用Laravel 4.2
答案 0 :(得分:12)
我在1&amp; 1托管解决方案上遇到了同样的问题。我建议添加:
RewriteBase /
对我有用。
一切顺利, 中号
答案 1 :(得分:2)
我使用Laravel 5.2,谢谢,它对我也有用,谢谢 我将RewriteBase添加到我的.htaccess文件
<IfModule mod_rewrite.c>
RewriteBase /
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
答案 2 :(得分:0)
这对我有用,只是以下内容在我的.htaccess
RewriteBase /
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]