2015-08-18 57 views
1

我的問題是關於htaccess重定向的一個變種,這裏發佈了很多內容,感謝大家多年來的幫助。我試過各種編碼,只是無法讓這個工作。需要一個永久的301重定向這樣的:Apache服務器中htaccess重定向的變化

重定向從http://sub.domain.com(HTTP和HTTPS)的所有流量http://www.domain.com/sub/,並有新的URL顯示後者URL裏的「子」是服務器,並在名稱上的子文件夾我從中指導所有流量的子域。

嘗試:

Options +FollowSymLinks 
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^sub.domain\.com$ [NC] 
RewriteRule !^sub/ /sub%{REQUEST_URI} [L,NC] 
+0

**你是什麼意思,並有新的URL顯示與後者的網址** – anubhava

+0

你的.htaccess位於何處?究竟發生了什麼? – MrWhite

+0

目前,htaccess位於託管Prestashop的現有網站上。我需要將訪問者重定向到新的網站。舊網站是store.ufcinc.com,另一臺服務器上的新網站是www.ufcinc.com/store。在我得到這個工作之後,我將在新主機上放置一個重定向頁面,並將舊store.ufcinc.com指向新的站點/子文件夾。 –

回答

0

舊網站sub.example.com,新網站另一臺服務器www.example.com/store上。

由於新網站位於另一臺服務器上,因此您可能根本不需要檢查HTTP_HOST。但是,如果你有其他(子)域,那麼你可能會。

在子域中的舊網站的根目錄下的.htaccess文件:

Options +FollowSymLinks 
RewriteEngine On 
RewriteCond %{HTTP_HOST} =sub.example.com [NC] 
RewriteRule (.*) http://www.example.com/sub/$1 [R=301,L,NC] 

注意,從您最初的嘗試失蹤重定向標誌(R=301)。如果沒有(替換時絕對URL),它會嘗試執行而不是內部重寫