我在将旧的 WordPress 网站页面重定向到新的基本 PHP 网站页面时遇到问题。
示例:没有扩展的旧 WordPress 页面位于http://example.com/levelone/leveltwo/pagename
新页面位于http://example.com/directory/pagename.php
。
以下是我尝试过的几件事:
redirect 301 /levelone/leveltwo/pagename http://example.com/directory/pagename.php
这根本不起作用
然后我尝试先重定向目录,然后是页面,如下所示:
RedirectMatch 301 ^/levelone/leveltwo/ http://example.com/directory/
redirect 301 /pagename http://example.com/pagename.php
这几乎奏效了,但给了我正确的 URL,但没有 PHP 扩展。
我不能只是将旧目录重定向到新目录,因为实际上有很多。例子只是一个。问题似乎是从非扩展页面到带有.php
扩展的页面。
这是我尝试的另一件事:
RedirectMatch 301 ^/levelone/leveltwo/(.*)$ /directory/$1.php
redirect 301 /pagename http://example.com/pagename.php
这给了我http://example.com/directory/pagename/.php
。
已解决:我让它与以下内容一起使用:
Redirect 301 /levelone/leveltwo/pagename/ http://example.com/directory/pagename.php
问题似乎在于旧页面名称后缺少正斜杠。