【发布时间】:2020-02-20 15:12:23
【问题描述】:
我们有一个 Laravel 网站正在运行,我正在尝试为旧网址编写 301 重定向。
我在使用 RedirectMatch 时遇到的问题是参数被添加到新的 url 中,这会使该 url 无效。
使用 RewriteRule,我可以防止这种情况发生。但我似乎根本无法让 RewriteRule 工作。
下面是我的 htaccess。我真的很感激任何见解。我要讲的内容很多,可靠的模式至关重要。
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^/help-.*$ /faq? [R=301,L]
#RedirectMatch 301 ^/help-.*?$ /faq
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
【问题讨论】:
标签: apache .htaccess laravel-5