【发布时间】:2013-01-25 16:09:18
【问题描述】:
http.conf 有 mod rewrite 未注释
所以没有自定义路线在#laravel 中有人提到这将是因为 mod rewrite 不起作用这里是我的设置:
laravel.conf 有如下代码:
Alias /laravel/ "C:\BitNami/frameworks/laravel/public/"
Alias /laravel "C:\BitNami/frameworks/laravel/public"
<Directory "C:\BitNami/frameworks/laravel/public">
Options +MultiViews
AllowOverride None
<IfVersion < 2.3 >
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3>
Require all granted
</IfVersion>
</Directory>
如果我取消注释这些行:
#RewriteEngine On
#RewriteRule ^/$ /laravel/ [PT]
然后主路由将映射到
http://localhost/
而不是
http://localhost/laravel
这是可取的,但次要于主要问题
.htaccess 里面的 public 文件夹有这个:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteBase /laravel
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
这是我在 routes.php 中的测试代码:
Route::get('test',function(){
return 'test worked';
});
应该用
解决http://localhost/laravel/test
但是我得到一个 404 错误
【问题讨论】:
-
有同样的问题,不知道如何在Windows下修复它...
标签: apache mod-rewrite wamp laravel bitnami