我有点奇怪的问题。
我正在将一个旧的,静态的,基于.htm的网站移植到wordpress,我不想丢失任何索引的“果汁”,因为旧网站已经持续了5年左右。
我在htaccess中使用以下行将所有* .htm重定向到他们的wordpress等价物。
RedirectMatch 301 ^(.*)\.htm$ $1/
除了索引页面之外的每个页面都可以正常工作,当我导航到http://www.siteurl.com
时,它坚持重定向到/ index /我的完整htaccess看起来像这样
RedirectMatch 301 ^(.*)\.htm$ $1/
# 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
我正在使用/%postname%/ permalink结构(3.3中修复的性能问题)
答案 0 :(得分:1)
尝试用下面的替换.htaccess。除index.htm之外的每个.htm页面(我怀疑是访问主页时的默认值)将被重定向
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
#if the page is not index.htm
RewriteCond %{REQUEST_URI} !index\.htm$ [NC]
#redirect it
RewriteRule ^(.+)\.htm$ $1/ [L]
# BEGIN WordPress
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
</IfModule>