Apache 在重写状态下重用捕获的组
我正在尝试设置一个由2个Apache 在重写状态下重用捕获的组,apache,mod-rewrite,apache2,Apache,Mod Rewrite,Apache2,我正在尝试设置一个由2个RewriteCond和一个RewriteRule指令组成的重写。主要目的是将所有请求重定向到css、media和js目录下的对应子域。我很容易实现它使用3个单独的重定向,但我想能够做到这一点,只使用一个 我试过了 RewriteCond %{REQUEST_URI} ^/(css|media|js) RewriteCond %{HTTP_HOST} !^%1\. RewriteRule ^(media|css|js)(/.+)$ http://$1.%{HTTP_HOS
RewriteCond
和一个RewriteRule
指令组成的重写。主要目的是将所有请求重定向到css
、media
和js
目录下的对应子域。我很容易实现它使用3个单独的重定向,但我想能够做到这一点,只使用一个
我试过了
RewriteCond %{REQUEST_URI} ^/(css|media|js)
RewriteCond %{HTTP_HOST} !^%1\.
RewriteRule ^(media|css|js)(/.+)$ http://$1.%{HTTP_HOST}/$1$2 [R=302,L]
但是,它似乎不允许在另一个组中使用从第一个
RewriteCond
捕获组 我认为从一个RewriteCond
到另一个的反向引用不起作用,但您应该能够做到:
RewriteCond %{REQUEST_URI} ^/css|media|js
RewriteCond %{HTTP_HOST} !^css|media|js\.
RewriteRule ^(media|css|js)(/.+)$ http://$1.%{HTTP_HOST}/$1$2 [R=302,L]
希望能有所帮助 谢谢你的回复。我已经考虑过这样做,但是这允许有人访问http://css.site.com/media
这是不可取的。