1

Atm 我们有一些重写规则,根据第一个域名查找资源。我们希望对其进行改进,因此我们不必将基本模板文件复制到每个文件夹,然后将特定文件复制到特定文件夹。

规则是:

RewriteRule ^web([0-9]{1})\.localhost(.*)$ C:/dir/http/test/htdocs/$1$2 [L]

我们正在寻找改进它的方法。如果上面给出了 404,那么我们想看看另一个位置,例如:C:/dir/http/test/htdocs/base/$2 如果这给出了 404,那么没关系。

我试图把 RewriteCond 放在前面,但没有任何运气。

有谁知道解决方案?

4

1 回答 1

1

尝试:

RewiteCond %{REQUEST_FILENAME} !-f
RewiteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/web([0-9]{1})\.localhost(.*)$
RewriteCond C:/dir/http/test/htdocs/%1%2 -f
RewriteRule ^ C:/dir/http/test/htdocs/%1%2 [L]

RewiteCond %{REQUEST_FILENAME} !-f
RewiteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/web([0-9]{1})\.localhost(.*)$
RewriteCond C:/dir/http/test/htdocs/base/%2 -f
RewriteRule ^web([0-9]{1})\.localhost(.*)$ C:/dir/http/test/htdocs/base/$2 [L]
于 2012-09-24T21:05:19.453 回答