mod_rewrite从主域提取图像

时间:2013-04-05 10:37:01

标签: apache mod-rewrite url-rewriting

我试图从主域获取子域中的所有模板图像和css文件,这样我就不需要复制所有内容了。

此规则适用于根文件夹中的图像,但不适用于子目录。

RewriteCond %{HTTP_HOST} sub.domain.com [NC]
RewriteCond %{REQUEST_FILENAME} \.(jpg|gif|png|css|js|txt|ico|pdf)$ [NC]
RewriteRule ^(.*) http://www.domain.com/$1 [L,R=301]

如何修改代码,以便所有指定的扩展名都指向主域,即使这些文件位于不同的文件夹中,而不仅仅位于根文件夹中。

1 个答案:

答案 0 :(得分:0)

在.htaccess文件中尝试此操作:

RewriteCond %{HTTP_HOST} ^sub.domain.com$
RewriteRule ^(.+\.(?:jpg|gif|png|css|js|txt|ico|pdf))$ http://www.domain.com/$1 [NC,R=permanent]

那应该获取整个请求路径和文件名,然后将其附加到主域以进行重定向。

如果您使用的是httpd.conf,则需要在^字符后面立即向RewriteRule匹配模式添加正斜杠。