所以我试图重写以下示例。环顾四周,但无法找到符合此情景的正确帖子。
以下是旧网页的布局列表:
www.url.com/directory
www.url.com/directory/page1.html
www.url.com/directory/page2.php
我试图通过htaccess重写以下方式:
Redirect 301 /directory /newdirectory
Redirect 301 /directory/page1.html /newdirectory/page1
Redirect 301 /directory/page2.php /newdirectory/page2
但是,第一个重写规则是干扰该路径中的旧子页面。例如,使用上述重写规则,转到:
www.url.com/directory/page1.html
指出用户:
www.url.com/newdirectory/page1.html
当它应该指向用户没有原始文件扩展名的slug时:
www.url.com/newdirectory/page1
我能够管理的唯一方法是完全忽略www.url.com/newdirectory/page1.html规则。但是有很多链接指向该基本路径,所以我想重定向它。
非常感谢任何帮助。提前感谢您的时间和帮助。
url-rewriting redirect rewrite-rules
答案 0 :(得分:1)
您需要将子目录的规则放在子页面的规则之后:
Redirect 301 /directory/page1.html /newdirectory/page1
Redirect 301 /directory/page2.php /newdirectory/page2
Redirect 301 /directory /newdirectory