目前,我只能访问我的 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/