在我的Laravel应用程序上遇到mod_rewrite问题

时间:2014-03-08 19:58:21

标签: apache .htaccess mod-rewrite ubuntu laravel

目前,我只能访问我的Laravel项目中的链接,如果它们是domain.com/index.php/somepage的形式。我希望能够通过domain.com/somepage这样的网址进行访问。在我的本地Windows机器上它工作正常。我的服务器在Ubuntu上运行Apache 2.4.6,rewrite模块通过a2enmod rewrite启用。我的.htaccess是Laravel附带的默认值:

<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]
</IfModule>

我也尝试使用和不使用<IfModule>的Laravel文档中的备用文件:

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

我意识到之前已经问过这个问题,但我似乎仍然可以使用我见过的其他例子。我猜它一定是我没有设置的Apache配置。

1 个答案:

答案 0 :(得分:1)

您是否确保allowoverides all都在您的httpd配置中?

这听起来像是你的问题。