我已经在圈子里走了几个小时了,我希望有人能够准确地澄清发生了什么。
此客户刚刚从静态网站迁移到Wordpress网站,他们希望更新其网站上的路径,以便任何指向旧网页的链接都会转到新网站。
所以,例如,这个页面:
http://www.compass-travel.co.uk/timetables/service_106.html
将链接到此页面:
http://www.compass-travel.co.uk/compass-timetables/bus-timetables/
如果您尝试点击第一个链接,您仍会看到旧页面。我使用了许多不同的指南和技巧,但我仍然无法使其发挥作用。
到目前为止,.htaccess看起来像这样:
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ http://www.compass-travel.co.uk/$1 [R=301,L]
RedirectMatch 301 /timetables/(.*) /compass-timetables/bus-timetables/$1
RewriteRule ^/timetables/(.+) http://www.compass-travel.co.uk/compass-timetables/bus-timetables/$1 [R=301,L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
但正如你所看到的,那是行不通的。
如果有人能指出我正确的方向,我会非常感激。
由于
罗布
答案 0 :(得分:1)
试试这段代码:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ http://www.compass-travel.co.uk/$1 [R=301,L]
RewriteRule ^timetables/(.+)$ /compass-timetables/bus-timetables/$1 [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress