Htaccess 重定向 Laravel 4
Posted
技术标签:
【中文标题】Htaccess 重定向 Laravel 4【英文标题】:Htaccess redirect Laravel 4 【发布时间】:2013-11-19 04:13:39 【问题描述】:我安装了 Laravel 4,并使用样板文件的 htaccess 重定向我的网站:
site.com.br
到 www.site.com.br
(注意 www)。
但是当我使用 site.com.br/TITLE-OF-MY-POST
这样的路由时,我被重定向到:
www.site.com.br/index.php
而不是www.site.com.br/TITLE-OF-MY-POST"
有人知道为什么吗?这是我的 htaccess 规则:
Laravel 的规则
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %REQUEST_FILENAME !-d
RewriteCond %REQUEST_FILENAME !-f
RewriteRule ^ index.php [L]
</IfModule>
样板规则
<IfModule mod_rewrite.c>
RewriteCond %HTTPS !=on
RewriteCond %HTTP_HOST !^www\..+$ [NC]
RewriteRule ^ http://www.%HTTP_HOST%REQUEST_URI [R=301,L]
</IfModule>
【问题讨论】:
【参考方案1】:更改规则的顺序:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %HTTPS off
RewriteCond %HTTP_HOST !^www\. [NC]
RewriteRule ^ http://www.%HTTP_HOST%REQUEST_URI [R=301,L,NE]
RewriteCond %REQUEST_FILENAME !-d
RewriteCond %REQUEST_FILENAME !-f
RewriteRule ^ index.php [L]
</IfModule>
一般来说,将 301 规则放在内部重写规则之前。
【讨论】:
以上是关于Htaccess 重定向 Laravel 4的主要内容,如果未能解决你的问题,请参考以下文章
在 Laravel 5.8 中的 htaccess 中重定向 [重复]
Laravel SSL .htaccess 重定向到 index.php
Laravel 5 - 发布路由上的 htaccess HTTPS 重定向不起作用。
访问 url.com/public 时 Laravel .htaccess 重定向到主页