【发布时间】:2015-05-29 22:27:50
【问题描述】:
我将 Laravel 4.2 用于 Web 应用程序。在我的本地主机中一切都很好,但是当我将应用程序上传到服务器时,laravel 的路由不起作用。
例如,我要去 site.com/,它会打开网站,但是当我去 site.com/some_route 时,它会尝试给我一个 500 内部屏幕上出现服务器错误,并且在错误日志中我看到 文件不存在:site.com/some_route。
我也可以从浏览器中看到 laravel 的内部文件夹,我的意思是如果我去 site.com/app 浏览器会打开 laravel 的 app 文件夹。
在我的主目录中有一个 empty .htaccess 文件,在我的 laravel 公用文件夹中我有一个 .htaccess 文件,其中包含以下代码:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
我在这里真的需要帮助,因为我不擅长 .htaccess 文件和服务器,所以我坚持了几个小时。 谢谢
【问题讨论】:
-
你需要通过 composer/SSH 安装 Laravel。
-
在我的本地主机上运行正常,我开发了一个多月,很好,可以是服务器吗?
-
尝试在 RewriteEngine On 之后在您的 .htaccess 中添加 RewriteEngine On RewriteBase /
-
权限设置好了吗?
标签: php apache .htaccess laravel