求一个apache-rewrite 配置的写法. http://*.abc.com/t.gif ==> http://www.abc.com/t.gif
问题:
因为二级域名导致缓存不统一的问题。
比如 http://test.abc.com/t.gif 和 http://www.abc.com/t.gif
实际上在服务器上是同一个文件 /home/www/abc/t.gif
但是客户端浏览器在缓存图片的时候却没有统一,ie,ff都认为他们是不同的资源。
这样导致了很多相同的文件,比如背景图,css,js 在不同二级域名访问下缓存不统一的问题。
解决方案求助:
我尽管对 正则比较熟悉, 但是对 apache以及 rewrite的工作方式却不太熟悉。
如果我希望哪位熟悉 apache-rewrite 的高手能帮我写一段小小规则
能够在访问 http://*.abc.com/t.gif 时rewrite到 http://www.abc.com/t.gif
这个规则只对 *.jpg *.gif *.css *.js 有效,对于 *.html *.htm或者其他类型无效
多谢帮助,就当给我写个 apache-rewrite 入门的小例子吧
------解决方案--------------------rewritecond %{HTTP_HOST} ^.+\.sohu\.com$
rewriterule ^(.*) %{HTTP_HOST}$1 [C]
rewriterule ^(.*)\.sohu\.com.* /ppp/$1.html
这个例子看看有没有有用
------解决方案--------------------抢分:
RewriteCond %{HTTP_HOST} !^www.abc.com
RewriteCond %{REQUEST_URI} (css|js|jpg|gif)$
RewriteRule /(.*) http://www.abc.com/$1 [R]
------解决方案--------------------RewriteCond %{HTTP_HOST} !^www.abc.com
RewriteCond %{REQUEST_URI} (\.css|\.js|\.jpg|\.gif)$
RewriteRule /(.*) http://www.abc.com/$1 [R]