Intelligencia URLRewriter HTTP для HTTPS

Я пытаюсь заставить URLRewriter принудительно перенаправить HTTP-запросы на HTTPS. Документация производителя, кажется, не покрывает это.

Я знаю, что следующие параметры выдают ошибку, но служат для иллюстрации того, что я пытаюсь выполнить:

<rewriter>
    <if url="http://www.domain.com/test*">
       <rewrite url="http://www.domain.com/test*" to="https://www.domain.com/test*" />
    </if>
</rewriter>

2 ответа

Было бы полезно точно знать, какая ошибка выдается, чтобы убедиться, что я иду по правильному пути, но я думаю, что вы используете символ *, когда хотите использовать. символ (возможно.+, если вы намереваетесь перенаправить любой незащищенный URL на защищенную версию)

Кажется, что оригинальный плакат хотел сделать что-то вроде:

<rewriter>
    <if url="http://.*">
       <rewrite url="http://([^/]*)(.*)" to="https://$1$2" />
    </if>
</rewriter>

Тем не менее, это, похоже, не работает вообще - я не совсем уверен, что он делает под капотом, чтобы понять, почему. Регулярные выражения кажутся правильными. Я нашел этот сайт действительно полезным для выяснения некоторых из этого: http://regexhero.net/tester/

Я наконец нашел волшебное заклинание, чтобы оно заработало, из:

/questions/40821739/javascript-animatsiya-s-safari/40821756#40821756

<rewriter>
    <if header="HTTPS" match="^OFF$">
        <redirect url="(.*)" to="https://yourdomain.com$1"/>
    </if>
</rewriter>
Другие вопросы по тегам