Laravel Route不与Wamp合作

问题描述 投票:0回答:8

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

我的.htaccess文件如下:

Options +FollowSymLinks
RewriteEngine on

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

RewriteRule . index.php [L]

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

  • mod_rewrite已启用
  • AllowOverride设置为All

我的主机文件如下

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旗舰版。我要把我的脑袋弄出来。请帮帮我,我很糟糕。

php mod-rewrite routes wamp laravel
8个回答
15
投票

如果您的laravel项目位于c:\ wamp \ laravel \那么您应该能够调用http://localhost/laravel/public并查看默认的laravel欢迎页面或您自己的。

如果是这种情况,你必须检查两件事:

  1. 打开/app/config/app.php文件,检查url的值是否指向您的项目。 'url'=>'http://localhost/laravel/
  2. 然后打开你的.htaccess文件并在RewriteEngine On Line RewriteBase /laravel/public/下添加RewriteBase规则

希望有所帮助! :)


8
投票

我有同样的问题。我使用上面的解决方案,它工作。

Apache rewrite_module也必须在wamp中启用。


2
投票

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

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

像这样......

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

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

127.0.0.1      testing.com

2
投票

检查rewrite_module

  • wamp图标
  • 阿帕奇
  • Apache模块
  • 检查rewrite_module

欢呼声,你有些头痛


1
投票

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


0
投票

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


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 \ extra \ 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文件。如果您不创建虚拟主机,则该文件有效,两者都不需要。它是一个或另一个(尽管它没有任何伤害)。


-1
投票

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.