有问题的网址是:
- (不起作用)http://alltheragefaces.com/face/surprised-wut/
- (作品)http://alltheragefaces.com/face/surprised-wut
我对这些类型的 URL 的 .htaccess 规则如下所示:
RewriteRule ^face/(.*)$ face.php?term=$1
我该怎么做才能使这两个 URL 转到同一页面?
有问题的网址是:
我对这些类型的 URL 的 .htaccess 规则如下所示:
RewriteRule ^face/(.*)$ face.php?term=$1
我该怎么做才能使这两个 URL 转到同一页面?
你可以使用这个:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [L,R=301]
第一行说:“如果它不是目录”(因为后面的斜杠会有意义)。第二行说:将所有内容从开头重定向到尾部斜杠并结束到那里的所有内容,没有尾部斜杠。
把你自己的RewriteRule
放在那里(在那个下面,而不是上面),这样你的正常重定向在尾部斜杠被删除后仍然有效。
(这显然/body/
也适用于,而不仅适用于/face/
.
我使用此规则稍作修改以维护任何子文件夹结构
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]