JBoss和RewriteCond以及RewriteRule

时间:2013-02-04 11:29:34

标签: jboss jboss-eap-6 jboss-eap-7

我需要重定向所有非来自此域的请求 ti-passis.rhcloud.com
并使用https到http以避免证书错误。

例如:

https://ti-passis.rhcloud.com/contato(不应该被重定向)
https://tetraimoveis.com/contato(由于证书错误,应该重定向,一旦证书是“* .rhcloud.com”)

RewriteCond %{HTTP_HOST} !^ti-passis.rhcloud.com$ [RC]
RewriteCond %{HTTP:X-Forwarded-Proto} https
RewriteRule .* http:// %{HTTP_HOST}%{REQUEST_URI} [R,L]



RewriteCond单独工作,但如果我把它放在一起,没有任何作用。 我做错了吗?

1 个答案:

答案 0 :(得分:0)

正确的做法是(尽管你现在可能已经知道了)

RewriteCond %{HTTP_HOST} !^ti-passis.rhcloud.com$ [RC,OR]
RewriteCond %{HTTP:X-Forwarded-Proto} https
RewriteRule .* http:// %{HTTP_HOST}%{REQUEST_URI} [R,L]

你基本上只是"或者"表达。按照JBoss"' ornext | OR' (或下一个条件) 使用此选项可将规则条件与本地OR组合,而不是隐式AND。"