Я использую Apache как веб-сервер для перезаписи URL-адресов. Картина проста:Apache RewriteCond не полностью работает
if request starts with "/services" then
rewrite is off
else
using ssl. replaces http with https
Так у меня есть свое собственное решение:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/services.* [NC]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Также я отделиться журналы доступа по URL-адресу, один SSL логи доступа и другой журналы доступа SSL доли не имеет. То, что я хочу видеть это журналы регистрации доступа ни содержит запрос SSL начать только с услугами .Но я нашел несколько запросов в журналах доступа никто Ssl любит это:
10.75.6.22 - - [28/Mar/2012:08:38:08 +0800] "GET /validate/showValidateProgress.jsp?
10.186.96.70 - - [28/Mar/2012:09:01:48 +0800] "GET /vjsp/confirm.jsp?
Запросы не начинаются с/услуг должны с помощью SSL, к сожалению, мой файл конфигурации не работает. Но в журналах доступа ssl все еще есть некоторые запросы, что означает, что часть запроса удовлетворяет моим ожиданиям. Я очень смущаюсь по поводу журналов и не могу понять, что случилось с моей конфигурацией. Благодарю.
До сих пор не работает, я не знаю, почему. – huangli
Сравните журналы, которые я понимаю, что все запросы в журналах доступа не имеют http-кода 302! Это означает, что первый запрос не является ssl, а затем перенаправлен на https. Поэтому и ваша, и моя конфигурация правильны! Спасибо, Оливье! – huangli