1

我正在将 ColdFusion 网站转换为 WordPress。这都是静态内容,所以这不是问题。

我正在尝试为搜索引擎设置 301 重定向(目前在测试期间为 302)以重新映射页面。我创建了以下内容,它可以工作 90%。

问题是,如果我对部分匹配另一个页面的文件名进行重定向,那么它会找到并重定向到部分匹配。

例如:

http://www.example.com/a/b/c/this-doesnt-exist.cfm正确重定向到:
http://www.example.com/a/b/c/this-doesnt-exist/出现 404 错误。没关系。

但:

http://www.example.com/blah/blah/asdf/r23af/b.cfm重定向到:
http://www.example.com/blog/

基本上,它是剥离.cfm文件名并进行部分匹配b

我怎样才能避免部分匹配 - 这会产生不可预测的重定向(例如,我们有 50 个目录,它们都有一个index.cfm文件,它们应该只转到正确文件夹中的正确页面,而不是一个公共/index/文件)

# BEGIN Wordpress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_URI} \.(cfm)$
RewriteRule ^(.+)\.cfm$  /$1/ [R=302,NC,L]

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

0 回答 0