2015-03-02 67 views
1

如何将所有图像从www.example.com和example.com重定向到images.example.com?简单的apache重定向

下面是一些代码,我在网上找到,但我不明白很多,如预期

编辑

#step 1 redirect ALL images from any domain to images.example.com 
RewriteCond %{REQUEST_URI} ^/(.+)\.(gif|png|jpg|jpeg|jfif|bmp|css|js)$ [NC] 
RewriteRule ^(.*)$ http://images.example.com/$1 [L,R=301] 

#step 2 redirect non www to www 
RewriteCond %{HTTP_HOST} ^example.com$ [NC] 
RewriteRule (.*) http://www.example.com/$1 [R=301,L] 

#step 3 redirect ALL non images from images.example.com to www.example.com 
RewriteCond %{REQUEST_FILENAME} !\.(gif|png|jpg|jpeg|jfif|bmp|css|js)$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] 

任何帮助将非常感激这是行不通的!

谢谢!

+0

那么你试图重写到www.example.com而不是image.example.com,所以就是这样。 – 2015-03-02 20:50:10

+0

@Mike Brant:谢谢,我更新了我的代码...你可以看看吗? – MainHero 2015-03-02 20:54:17

回答

0

如果要将所有图像重定向到子域,请执行此操作。

RewriteEngine On 
RewriteCond %{REQUEST_URI} ^/(.+)\.(gif|png|jpg|jpeg|jfif|bmp|css|js)$ [NC] 
RewriteRule ^(.*)$ http://images.example.com/$1 [L,R=301] 

RewriteCond %{HTTP_HOST} ^images\.example\.com [NC] 
RewriteCond %{REQUEST_URI} !^/(.+)\.(gif|png|jpg|jpeg|jfif|bmp|css|js)$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] 
+0

非常感谢!您能否提供关于如何将域images.example.com中的所有非图像请求重定向到www.example.com的代码?谢谢! – MainHero 2015-03-02 21:03:34

+0

这是codect corect:'RewriteCond%{REQUEST_FILENAME}!\。(gif | png | jpg | jpeg | jfif | bmp | css | js)$ [NC] RewriteRule ^(。*)$ http:// www。 example.com/$1 [R = 301,L]' – MainHero 2015-03-02 21:49:28

+0

我更新了答案。在回答问题后,不要在同一问题中提出多个问题。再问一个问题,我们仍然会帮助你。 – 2015-03-02 22:06:21