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

标签 apache .htaccess mod-rewrite ubuntu laravel

目前,我只能访问我的 Laravel 项目中的链接,如果它们的形式是 domain.com/index.php/somepage .我希望能够通过 domain.com/somepage 之类的 URL 进行访问。 .在我的本地 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>

我还尝试了 Laravel 文档中的替代方法,无论有没有 <IfModule> :
<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On

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

我意识到以前有人问过这个问题,但我似乎仍然可以将它与我见过的其他示例一起使用。我猜它一定是我没有设置的一些 Apache 配置。

最佳答案

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

这听起来像你的问题。

关于apache - 在我的 Laravel 应用程序上遇到 mod_rewrite 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22274318/

相关文章:

php - MOD_REWRITE 帮助!

php - Codeigniter SEO 友好的 URL 重写

linux - 如何在 AWS EC2 Linux Apache 实例上查看 SMTP 服务器日志?

python - Django Apache - 以根用户身份运行脚本

.htaccess - Flash 对象发出不安全的 http 请求

apache - 在 WAMP 中制作漂亮的永久链接

apache - 如何从 Apache .htaccess 创建虚拟主机?

apache - 配置 htaccess 进行 url 重写

python - 选择 wsgi 或 cgi 或 fastcgi 来处理单个 python 脚本

java - 将图片放入word文档中