2015-02-23 46 views
2

我有2個域名和2個服務器example.comexample2.com。例如:example.com是我的主要領域。我上傳我的網站圖片到example2.com使用htaccess將另一個域映像加載到我的域名?

我目前的圖像路徑http://example.com/data/photos/sample.jpg
但我所有的圖片都在http://example2.com/data/photos/sample.jpg

所以我創建htaccess的重定向

RewriteEngine on 
RewriteBase/
RewriteRule ^data/photos/(.*)$ http://example2.com/data/photos/$1 [R=301] 

但它不是爲我工作。因爲我在所有頁面中調用了完整的URL。所以任何一個建議其對我很有幫助

更新我老的.htaccess文件

<IfModule mod_rewrite.c> 

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L] 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [NE,L] 
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] 
RewriteEngine On 
RewriteBase/
RewriteRule ^data/photos/(.*)$ http://example2/data/photos/$1 [R=301] 
</IfModule> 
+0

我想你有一個簡單的錯字。你需要*照片*。 – 2015-02-23 06:45:03

+0

@ Ravi Thapliyal雅我在example2.com域的照片 – 2015-02-23 06:47:45

+0

所以,只是糾正你的規則。你在那裏使用了* photo *。 – 2015-02-23 06:48:44

回答

4

您需要重新排列規則。您的最終htaccess應該看起來像

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase/

    RewriteRule ^(data/photos/.*)$ http://example2.com/$1 [R=301,NC,L] 

    RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
    RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L] 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [NE,L] 

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] 
</IfModule> 
+0

它也不適合我。怎麼了。如果我刪除整個htaccess代碼意味着網站無法正常工作。請幫助我 – 2015-02-23 07:07:18

+0

您能否提供網站地址,以便我可以調試請求? – 2015-02-23 07:13:02

+0

你有什麼發現? – 2015-02-23 07:24:42

2

改變其與此

RedirectMatch 301 ^/data/photo/ http://example2.com/data/photo/ 

爲整個目錄創建一個301。

+1

由於比賽是靜態的,你也可以使用'重定向301 /數據/照片http:// example2.com/data/photo' – 2015-02-23 06:47:36

+0

@yiiframe它也不能工作我 – 2015-02-23 07:08:11

相關問題