【发布时间】:2013-11-17 02:41:06
【问题描述】:
我已经尝试了几个小时来安装 Laravel 4 并使虚拟主机和路由工作,但到目前为止我一直很不走运。我提到我是在 Windows 7 机器和 WAMP 上执行此操作的。
我将描述我已经完成的工作:
我已启用 rewrite_module。
使用以下内容更新了 httpd-vhosts.conf:
<VirtualHost *:80>
DocumentRoot "c:/wamp/www/laravel/public"
ServerName laravel.dev
ServerAlias www.laravel.dev
</VirtualHost>
接下来,我设置了etc/hosts:
127.0.0.1 localhost
127.0.0.1 laravel.dev
此外,wamp/../conf/httpd.conf 和 wamp/.../conf/original/httpd.conf 中的以下行均未注释:
LoadModule vhost_alias_module modules/mod_vhost_alias.so
Include conf/extra/httpd-vhosts.conf
我.htaccess的内容如下:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
然而,当我转到 http://laravel.dev 时,我收到 Internal Server Error - 服务器遇到内部错误或配置错误,无法完成您的请求。。
如果我从 public 文件夹中删除 .htaccess 文件,那么我会看到 Laravel “你已经到达”消息。如果那时,我创建一个这样的路由(在 app\routes.php 内):
Route::get('/newroute', function()
{
return View::make('hello');
});
然后转到http://laravel.dev/newroute 我会得到一个404 Not Found - 在此服务器上找不到请求的 URL /newroute。
我很困惑,不知道如何才能克服这个问题。我提到(虽然我认为很清楚)我在克隆项目模板、安装依赖项后运行了composer install。
【问题讨论】:
-
所以你有 2 个 htaccess 文件? “public”目录下的htaccess文件是什么?
标签: php apache .htaccess mod-rewrite laravel