我正在移動一個網站到WordPress,但我想保持目前的URL結構爲SEO的目的。WordPress的.htaccess重定向文件擴展名和不區分大小寫
當前網站使用.htm和.html文件的組合。當請求是.html時,我發現重定向到.htm方面取得了成功。
例如
RedirectMatch 301 (.*)\wp-site/mywebpage.html$ http://www.mydomain.com/wp-site/mywebpage.htm
我有以下麻煩:
當.html文件具有上,下殼體。我似乎無法找到一個解決方案,重定向任何請求,儘管案件其.htm等效
例如:My-Posts/Alpha-Page.html需要重定向到my-posts/alpha-page.htm或MY-POSTS/ALPHA-PAge.html重定向到my-posts/alpha-page.htm(或任何包含大寫字母的「my-posts/alpha-page」),基本上所有請求都需要重定向到全部小寫。 htm文件)
我知道這有點困難,因爲它是一個組合1)我重定向到.htm和2)爲不區分大小寫。
幾件事情要考慮:
- 我知道WordPress的職位 不區分大小寫。 Wordpress的靜態 頁面區分大小寫。
- 我知道RedirectMatch不會工作 ,因爲它完全匹配它。
- 我相信我需要使用RewriteCond 和RewriteRule,但似乎無法在 找到「好」的步驟 的解釋。另外,我不知道他們的變量(即: %{HTTP_HOSTS})和常規的 表達式約定 。
- 我不是一個Apache/.htaccess或 正則表達式專家,任何 手段。
從理論上講,它似乎應該有一種方法來工作。我會繼續看看我是否可以在這裏找到解決方案在這裏在stackoverflow或其他外部資源,如果我在這裏找到一個解決方案在stackoverflow,我將標記爲解決,並將其刪除。
任何幫助表示讚賞!
感謝
更新06月17日:
這是我目前的.htaccess文件
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wp-test-2011-06-13/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wp-test-2011-06-13/index.php
RedirectMatch 301 (.*)\wp-test-2011-06-13/redirect.html$ http://www.mydomain.com/wp-test-2011-06-13/redirect.htm
RewriteRule ^ORLANDO-criminal-defense-attorney/defense-attorney-NEJAME.html$ /orlando-criminal-defense-attorney/defense-attorney-nejame.htm [QSA,NC,R=301]
</IfModule>
# END WordPress
UPDATE二○一一年六月二十○日:
這裏是我的電流。 htaccess文件:
# BEGIN WordPress
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteBase /wp-test-2011-06-13/
RewriteRule ^/wp-test-2011-06-13/index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /wp-test-2011-06-13/index.php
RedirectMatch 301 (.*)\wp-test-2011-06-13/redirect.html$ http://www.mydomain.com/wp-test-2011-06-13/redirect.htm
RewriteRule ^ORLANDO-criminal-defense-attorney/defense-attorney-NEJAME\.html$ /orlando-criminal-defense-attorney/defense-attorney-nejame.htm [QSA,NC,R=301]
</IfModule>
# END WordPress
當我輸入http://www.mydomain.com/wp-test-2011-06-13/ORLANDO-criminal-defense-attorney/defense-attorney-NEJAME.html(或小寫等價物)時,我得到一個Wordpress「Page Not Found」頁面。HTML)
據我瞭解你想要的:1)從HTML到HTM最終網址更改文件擴展名; 2)在重定向時忽略該情況..或將最終頁面URL更改爲小寫? – LazyOne 2011-06-17 13:43:50
1)是的。更改.html的請求以重定向到.htm 2)我相信我想忽略大小寫。 MYPAGE.html - > mypage.htm,或mYPaGe.html - > mypage.htm,或MYpaGE.html - > mypage.htm等... 基本上忽略了請求的情況並重定向到小寫.htm版本 – user801816 2011-06-17 14:05:34
我認爲這樣的東西可能會起作用。 'code' RewriteCond%{REQUEST_URI}^section/individual-page.html [NC] RewriteRule ^(。*)$ http://www.mydomain.com/wp-install/section/individual-page.htm/$ 1 [L,R = 301] 我認爲我走在正確的軌道上。 [NC]應該忽略大小寫嗎? – user801816 2011-06-17 14:12:43