(我不习惯RewriteCond
事。所以我只是用Google搜索并用于现有的事情。)
现在我有一段.htaccess
代码,在输入时会重写为不同的网址:
RewriteCond %{HTTP_HOST} ^(.*).example.com$
RewriteRule ^(.*)$ http://www.example.com/%1/$1 [P,L,NS]
通过使用它,它将通过获取“子域”输入,然后作为文件夹,如输出重写。让我们说:
这样才有用。
现在我需要的是现有的一个更复杂。
如何按RewriteCond
过滤“介于两者之间”的字词?
让我们说我有两个级别的子域名。然后我只想选择/过滤上一个。这意味着:
(输入也可以是:dev.member
,dev.pricing
等等。
如何根据support
字符串过滤dev.support
字词?
当前^(.*).example.com$
仅适用于最左侧的项目。
下面一个不起作用:
RewriteCond %{HTTP_HOST} dev.^(.*).example.com$
RewriteRule ^(.*)$ http://dev.example.com/%1/$1 [P,L,NS]
请建议。
答案 0 :(得分:0)
在您的正则表达式^
中需要放置在模式的开头,使用[^.]+
比.*
更好的模式
您可以使用:
RewriteCond %{HTTP_HOST} ^dev\.([^.]+)\.example\.com$
RewriteRule ^(.*)$ http://dev.example.com/%1/$1 [P,L,NS]