2015-01-01 30 views
3

我想重定向所有的HTTP请求到https除“health.html”我要为通过端口80标准的http所有HTTP请求;出于某种原因,下面的规则似乎并没有那样做 - 我敢肯定,这是一个语法的事情...Tuckey UrlRewrite过滤器重定向除了foo.html

的思考?

<?xml version="1.0" encoding="utf-8"?><!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite  4.0//EN" "http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd"> 
<urlrewrite> 

<rule match-type="regex"> 
    <note> 
     Redirect all http requests to https except health.html for EB monitoring 
    </note> 
    <condition type="header" operator="equal" name="X-Forwarded-Proto">^HTTP$</condition> 
    <condition name="request-uri" operator="notequal">^/health.html(.*)$</condition> 
    <from>^.*$</from> 
    <to type="permanent-redirect" last="true">https://%{server-name}%{request-uri}</to> 
</rule> 

<rule> 
    <note> 
    Allow TomCat to have SES links. 
    </note> 
    <condition type="request-uri" operator="notequal">\.(bmp|gif|jpe?g|png|css|js|txt|pdf|doc|xls|cfc|ico|php|asp)$</condition> 
    <condition type="request-uri" operator="notequal">^/railo-context(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/flex2gateway(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/jrunscripts(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/cfide(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/cfformgateway(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/files(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/images(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/javascripts(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/miscellaneous(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/stylesheets(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/favicon.ico(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/robots.txt(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/sitemap.xml(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/rewrite.cfm(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/health.html(.*)$</condition> 
    <condition type="request-uri" operator="notequal">^/public(.*)$</condition> 
    <from>^/(.*)$</from> 
    <to type="passthrough" last="true">/rewrite.cfm/$1</to> 
</rule> 
</urlrewrite> 

回答

3

我是个白痴。

<condition name="request-uri" operator="notequal"> 

应该

<condition type="request-uri" operator="notequal"> 

叹息。