我正在尝试将所有请求重定向到特定用户代理的域到子域。我的规则如下:
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^Test Agent/(.*)$ // <-- Line 4
RewriteRule ^(.*)$ https://test.domain.com/$1 [L,302]
但是我在启动Web服务器时得到的只有:
Syntax error on line 4 of /var/www/misafe/internal/misafe-old.conf:
RewriteCond: bad flag delimiters
对我来说看起来不错,但我显然错过了一些错误并没有多大帮助。有什么想法吗?
谢谢, Ĵ
答案 0 :(得分:18)
有2个错误:
首先:
RewriteCond %{HTTP_USER_AGENT} ^Test Agent/(.*)$
您需要在正则表达式模式中转义空格并转发斜杠。
RewriteCond %{HTTP_USER_AGENT} ^Test\ Agent\/(.*)$
第二
RewriteRule ^(.*)$ https://test.domain.com/$1 [L,302]
302是重定向HTTP状态代码,但您未指定要重定向。
RewriteRule ^(.*)$ https://test.domain.com/$1 [L,R=302]
答案 1 :(得分:1)
行:RewriteRule ^(.*)$ https://test.domain.com/$1 [L,302]
应该是:RewriteRule ^(.*)$ https://test.domain.com/$1 [R=302]