странная ошибка 401 появляется для некоторых URL-адресов при использовании .htaccess для перенаправления http на https

Хорошо, вот 7-й день безуспешной попытки найти ответ, почему появляется ошибка 401 ...

Теперь, .htaccess в корневой папке содержит только 3 строки (было упрощено), и в проекте больше НЕТ файлов .htaccess:

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Таким образом, он перенаправляет все запросы на https. Он отлично работает для любых URL-адресов, даже для каталога / administrator.

Таким образом,

http://mydomain.com

становится

https://mydomain.com

. Если был введен https://mydomain.com , перенаправления не происходили.

http://mydomain.com/administration/index.php

становится

https://mydomain.com/administration/index.php

Если был введен https://mydomain.com/administration/index.php , перенаправления отсутствуют.

Это ясно, и проблема ниже.

Я хочу, чтобы каталог / administrator был защищен паролем. Панель управления My Shared Hosting позволяет защищать каталоги без ручного создания файлов .htaccess и .htpasswd (вы выбираете каталог для защиты, имя пользователя и пароль создаются автоматически, а .htaccess и .htpasswd создаются автоматически). Итак, в папке / administrator появляется .htaccess. .htpasswd появляется где-то еще, путь к .htpasswd правильный, и все выглядит правильно (работает так же, как создать его вручную). Итак, в проекте есть 2 файла .htaccess, один в корневом каталоге и один в каталоге / administrator (с .htpasswd в каталоге .htaccess знает, где он находится).

После создания пароля результаты следующие:

Вы вводите:

https://mydomain.com/administration/index.php

Затем он просит ввести пароль. Если вы введете его правильно, Отображается https://mydomain.com/administration/index.php . Результат: работает отлично.

Но если вы введете http://mydomain.com/administration/index.php (да, http, без S) затем вместо перенаправления на ту же страницу https, он перенаправляется на

https://mydomain.com/401.shtml (starts with httpS)

по неизвестной причине и даже НЕ запрашивает пароль. Почему?

Я связался со службой поддержки по поводу этого вопроса, и они уверены, что проблема в файле .htaccess, и они не исправляют файлы .htaccess (это ясно, они не исправляют, я не разум).

Почему это происходит? Я забыл установить некоторые флаги или параметры для изменения настроек по умолчанию в файле .htaccess?

PSCreating .htaccess и .htpasswd вручную (не из Панели управления хостингом) для папки / администрирования вызывает ту же ошибку 401 в если не https, а http был введен.

И проблема возникает только с URL-адресами к каталогу / administrator.

Спасибо.

10
задан Haradzieniec 11 February 2012 в 09:07
поделиться