2012-06-19 31 views
0

使用文字壓力機我們使用以下URL我們的新網站之前...複雜htaccess的重寫

http://www.domain.com/web-services 
http://www.domain.com/seo-services (about 100 urls) 

現在,新的網址是

http://www.domain.com/np/web-services 

所以我們想的301重定向所有舊頁面到新的頁面,我們可以簡單的使用下面的htaccess代碼...

Redirect 301 /web-services http://www.domain.com/np/web-services 

但是這將會使htaccess文件過大,那麼有什麼辦法可以將所有頁面重定向到新頁面。

謝謝。

回答

0

啓動Apache服務器上的mod_rewrite,然後把這個.htaccess文件中:

RewriteEngine On 
RewriteRule ^/web-services/(.*)$ /np/web-services/$1 [R=301,L] 
RewriteRule ^/seo-services/(.*)$ /np/web-services/$1 [R=301,L] 

任意以/ Web的服務或/ SEO服務的URL將被重定向到/ NP /網絡服務。

+0

這將是簡單的解決方案,但我必須在htaccess文件中創建100行以重定向所有URL – seoppc

+0

是否有任何方式,因此它可以檢查正則表達式,就像url已經 - 然後重定向到/ np/$ 1(將是相同的/關鍵字) – seoppc

+0

爲什麼?這些行將重定向以/ web-services或/ seo-services開頭的任何url。所以不需要創建100行!那2條線足夠了 – dAm2K

0

或者,你可以使用mod_alias中RedirectMatch

RedirectMatch 301 ^/([^\-]+)-([^/]+)/?(.*)?$ /np/$1-$2/$3 

因此,與/web-services/開頭的請求將被重定向附加在前面/np

http://www.example.com/web-services/test1 -> http://www.example.com/np/web-services/test1 
http://www.example.com/web-services/test/test2 -> http://www.example.com/np/web-services/test/test2 

而同樣與seo服務或任何與XXX-XXX。


編輯:

,如果我嘗試RedirectMatch 301 ^/([^\-]+)-([^/]+)-([^/]+) /np/$1-$2-$3/其thorwing重定向錯誤

嘗試:

RedirectMatch 301 ^/([^/\-]+)-([^/\-]+)-([^/]+) /np/$1-$2-$3/ 

因爲/np/正在對^/([^\-]+)

匹配
+0

你的意思是說,如果像http://www.domain.com/web-design-services這樣的舊版本會重定向到http://www.domain.com/np/web-design-services,那麼它只會檢查2 - 或者3-?因爲我需要3 - 因爲所有的網址都有xxx-xxx-xxx感謝您的支持和幫助。 :) – seoppc

+0

對於三人,你必須將@Jon Lin的代碼展開爲:([^ \ - ] +) - ([^ /] +)/(。*)$/np/$ 1- $ 2- $ 3/$ 4 –

+0

感謝您的大力幫助,它不工作,它將404甚至不重定向的網址投向新的網址,我嘗試了http://www.domain.com/web-design-services並沒有發生任何事情。請檢查謝謝。 – seoppc

0

您可以將您的控制權重新彷彿,就好像您的控制權是通過abc.com打開的,然後您可以通過www.abc.com將其永久重定向。通過這樣做,您可以確保當谷歌蜘蛛訪問您的網站時,它可以很容易地找到您的網站。這也有助於增加您網站上的更多流量。如果你有一個商業網站,那麼你可以使用來自洛杉磯一家公司的搜索引擎優化服務,通過對芝加哥最好的SEO公司的評論。因爲這些有助於您始終將業務增長推向頂峯。起源:http://www.bestseocompanyreviewss.com