Laravel Route不与Wamp合作

时间:2013-03-25 03:26:45

标签: php mod-rewrite routes wamp laravel

正如标题所述,我无法让我的网站重定向。我做了几次尝试,即将失去它。

我的.htaccess文件如下:

Options +FollowSymLinks
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . index.php [L]

我将此文件放在www / Laravel / public文件夹以及www目录

  • 启用了mod_rewrite
  • AllowOverride设置为全部

我的主机文件如下

127.0.0.1       localhost

以下是routes.php

中包含的路由代码
Route::get('authors', array('uses'=>'authors@index'));

我有一个名为authors.php的控制器,这里是代码

class Authors_Controller extends Base_Controller {
public $restful = true;
public function get_index () {      
    return View::make('authors.index');}
}

我正在使用Windows 7旗舰版。我要把我的脑袋弄出来。请帮帮我,我很糟糕。

8 个答案:

答案 0 :(得分:14)

如果你的laravel项目位于c:\ wamp \ laravel \那么你应该可以打电话 http://localhost/laravel/public 并查看默认的laravel欢迎页面或您自己的页面。

如果是这样,你必须检查两个:

  1. 打开您的/app/config/app.php文件,检查url的值是否指向您的项目。 'url'=>'http://localhost/laravel/
  2. 然后打开.htaccess文件并在RewriteEngine On行下添加RewriteBase规则 RewriteBase /laravel/public/
  3. 希望有所帮助! :)

答案 1 :(得分:8)

我遇到了同样的问题。我使用了上面的解决方案并且有效。

也必须在wamp中启用Apache rewrite_module。

答案 2 :(得分:2)

您需要设置指向公共目录的虚拟主机... 在httpd.conf文件中。

可以在Apache菜单下找到...

像这样...

<VirtualHost *:80>
DocumentRoot c:\wamp\www\laravel\public
ServerName testing.com
</VirtualHost>

您的主机文件将反映您选择的网址...在这种情况下... testing.com

127.0.0.1      testing.com

答案 3 :(得分:2)

检查rewrite_module

转到

  • wamp icon
  • 的Apache
  • Apache模块
  • 检查rewrite_module

欢呼,你在经历了一些头痛之后

答案 4 :(得分:1)

必须在WAMP中启用Apache rewrite_module。它适用于我的wampserver。

答案 5 :(得分:0)

实际上它有一个非常简单的解决方案。所有你需要做的只是检查apache中的重写模块。检查图像中的步骤 laravel problem with wamp server solution

答案 6 :(得分:0)

在根目录中创建index.php文件。

<?php
header("refresh: 0; http://localhost/appnamehere/public");
?>

如果您在一个域下有多个站点,则可能无法更改您的公共Webroot。

我在正确的位置拥有所有正确的设置和正确的.htaccess文件,但它不会重定向。这为我修好了。

本文有助于使wampserver / wampmanager链接正常工作。 Project Links do not work on Wamp Server

发布脚本:

如果您在以下位置添加到虚拟主机文件: E:\ WAMP \ BIN \ apache的\ apache2.4.23 \的conf \额外\的httpd-vhosts.conf 并创建一个指向公共目录的虚拟主机,如下所示:

<VirtualHost *:80>
    ServerName Blog
    ServerAlias Blog
    DocumentRoot E:/wamp/www/Blog/public
    <Directory  "E:/wamp/www/Blog/public/">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
       AllowOverride All
        Require local
    </Directory>
</VirtualHost>
#

然后添加到C:\ Windows \ System32 \ drivers \ etc \ hosts

# localhost name resolution is handled within DNS itself.
    127.0.0.1       localhost
    ::1             localhost
    127.0.0.1       Blog
    ::1             Blog

您不需要我建议的index.php文件。如果您不创建虚拟主机,则该文件有效,两者都不需要。它是一个或另一个(尽管它没有任何害处)。

答案 7 :(得分:-1)

他们只有正确的方法才能将Web服务器指向public目录。例如,如果您在C:/xampp/htdocs/目录中安装了Laravel,则需要使用以下设置:

DocumentRoot "C:/xampp/htdocs/public"
<Directory "C:/xampp/htdocs/public">

永远不要在公共文件夹中编辑.htaccess。如果你这样做,你需要恢复原始文件。在进行这些更改后重新启动Apache。