Я установил сайт Drupal 6 на выделенном сервере и включил SSL через панель управления «Матрица», которая была установлена на нем.
Проблема теперь в том, что сайт загружает страницы ТОЛЬКО с https. Большинство изображений тоже не загружаются, я полагаю, это связано с одним и тем же. В идеале я хочу, чтобы работали и http, и https, тогда я могу отсортировать перенаправления для страниц, которые должны быть безопасными.
Ошибка при попытке загрузить обычную http-страницу:
**Bad Request** Your browser sent a request that this server could not understand. Reason: You're speaking plain HTTP to an SSL-enabled server port. Instead use the HTTPS scheme to access this URL, please.
Может кто-то указать мне верное направление?
Редактировать:
В сайты с поддержкой / domainname.co.uk для IP-адреса сервера настроен <VirtualHost>, использующий порт 80 следующим образом:
<VirtualHost xx.xx.xx.xx:80>
ServerName xx.co.uk
ServerAlias www.xx.co.uk
ServerAdmin webmaster@xx.co.uk
DocumentRoot /home/default/xx.co.uk/user/htdocs
ErrorLog /home/default/xx.co.uk/user/logfiles/error_log
TransferLog /home/default/xx.co.uk/user/logfiles/access_log
php_admin_value open_basedir /tmp:/home/default/xx.co.uk
SuexecUserGroup xx matrixdomain
ScriptAlias /cgi-bin/ /home/default/xx.co.uk/user/htdocs/cgi-bin/
AddHandler server-parsed .shtml
AddType text/html .shtml
<Location />
Options +Includes
</Location>
# Begin user directives <--
# --> End user directives
Зачем делать еще одну за 443?
В ports.conf у меня есть
NameVirtualHost *:80 Listen 80 <IfModule mod_ssl.c> # SSL name based virtual hosts are not yet supported, therefore no # NameVirtualHost statement here Listen 443 </IfModule>
Кажется, что ваш Apache httpd неправильно настроен и пытается обслуживать HTTPS на HTTP-порту (посмотрите на конфигурацию вашего виртуального хоста для сайта Drupal), или вы используете такую схему, как http://example.com:443/ для доступа к вашей установке Drupal, которая тоже не будет работать.
HTTP должен обслуживаться на порту 80 HTTPS должен обслуживаться на порту 443
Ваш сайт должен работать на: http://www.domain.com https://www.domain.com.
Это может быть одно из нескольких:
Я думаю, что это краткое изложение того, в чем может быть проблема, сообщите нам свое решение!
+1 Используйте модуль защищенных страниц (если вы еще этого не сделали)
Ура
Я думаю, что следуй за документом, тебе поможет
Цитата
Apache: перенаправить http на https Безопасное соединение Apache - принудительное подключение HTTPS
Допустим, у вас есть поддомен веб-почты под названием http://mail.chida.in и вы хотите перенаправить его на защищенное соединение https, т.е. https://mail.chida.in.
Это поможет вам удаленно защитить конфиденциальность пользователей и конфиденциальную информацию, такую как имя пользователя и пароль.
Итак, как настроить веб-сервер Apache, чтобы предотвратить доступ к своим веб-сайтам без шифрования? Перенаправить http на https Конфигурация Apache
Сначала убедитесь, что Apache настроен для HTTPS-соединения и установлены необходимые SSL-сертификаты. Нет доступа без SSL, то есть принимать только https-соединения
Теперь откройте файл httpd.conf или .htaccess (mod_rewrite не требуется):
Добавьте следующую строку: Перенаправление постоянное / https://mail.chida.in/ Любой запрос, сделанный http://mail.chida.in будет идти к https://mail.chida.in/
Сохраните и закройте файл. Перезагрузите Apache:
Это самый простой способ гарантировать, что ваш обычный пользователь никогда не будет использовать обычный текстовый протокол HTTP для отправки данных. Теперь это значительно усложняет анализ конфиденциальных данных. Принудительный вход в веб-почту через сеанс SSL https
Поэтому, если вы хотите, чтобы пользователи получали доступ к своей веб-почте через https, добавьте следующую конфигурацию в файл .htaccess:
RewriteEngine на RewriteCond% {HTTPS} от RewriteRule (. *) https: //%{HTTP_HOST}% {REQUEST_URI}
Убедитесь, что у вас есть что-то вроде следующего в httpd.conf (поддержка mod_rewrite): LoadModule rewrite_module modules / mod_rewrite.so
Цитата