LINUX.ORG.RU

Произвольный редирект с http на https

 , , ,


0

1

День добрый Стоит апач 2.2 без rewrite На нем есть виртуальные хосты(ессно конфига для каждого в отдельном файле и для каждого сайта своя папка) 1. http://a.ru 2. https://a.ru 3. http://b.ru При заходе на 2 все работает нормально, открывается сайт что в конфиге. Аналогичная ситуация с 3 .Т.е. с 2 и 3 все работает нормально А вот когда захожу на 1 почему-то перебрасывает на 2. Т.е. редирект срабатывает, хотя он нигде не прописан. Что не так в конфигах?

Ответ на: комментарий от kostik87

Это 1 <VirtualHost *:80> ServerAdmin @a.ru ServerName a.ru ServerAlias http://www.a.ru DocumentRoot /var/web/a.ru <Directory /> Options FollowSymLinks AllowOverride All </Directory> <Directory /var/web/a.ru/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory «/usr/lib/cgi-bin»> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> А это 2

<VirtualHost *:443> ServerAdmin a@a.ru ServerName a.ru

DocumentRoot /var/web/a.ru-ssl <Directory /> Options FollowSymLinks AllowOverride All </Directory> <Directory /var/web/a.ru-ssl> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/db.deblocal-error.log LogLevel error CustomLog /var/log/apache2/db.deblocal-access.log combined SSLEngine on SSLCertificateFile /etc/ssl/certs/a_ru.crt SSLCertificateKeyFile /etc/ssl/private/a_ru.key <FilesMatch «\.(cgi|shtml|phtml|php)$»> SSLOptions +StdEnvVars </FilesMatch> BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 </VirtualHost> Тольков posrts дописал еще NameVirtualHost *:443

dedulka
() автор топика
Ответ на: комментарий от dedulka

Плохо оформили, вы что не можете прочитать то, что написано в нижней части формы добавления сообщения на форум после слова «Внимание:». Пока не оформите так, как нужно никто читать вашу «кашу» не будет.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

Сорри

Это 1

<VirtualHost *:80>

ServerAdmin @a.ru

ServerName a.ru

ServerAlias http://www.a.ru

DocumentRoot /var/web/a.ru

<Directory />

Options FollowSymLinks

AllowOverride All

</Directory>

<Directory /var/web/a.ru/>

Options Indexes

FollowSymLinks

MultiViews AllowOverride All Order allow,deny allow from all

</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

<Directory «/usr/lib/cgi-bin»>

AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all

</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

А это 2

<VirtualHost *:443>

ServerAdmin a@a.ru

ServerName a.ru

DocumentRoot /var/web/a.ru-ssl

<Directory />

Options FollowSymLinks

AllowOverride All

</Directory>

<Directory /var/web/a.ru-ssl>

Options Indexes FollowSymLinks

MultiViews AllowOverride

All Order allow,deny

allow from all

</Directory>

ErrorLog /var/log/apache2/db.deblocal-error.log

LogLevel error

CustomLog /var/log/apache2/db.deblocal-access.log combined

SSLEngine on

SSLCertificateFile /etc/ssl/certs/a_ru.crt

SSLCertificateKeyFile /etc/ssl/private/a_ru.key

<FilesMatch «\.(cgi|shtml|phtml|php)$»>

SSLOptions +StdEnvVars

</FilesMatch> BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0

</VirtualHost>

Тольков posrts дописал еще NameVirtualHost *:443

dedulka
() автор топика
Ответ на: комментарий от dedulka

Вы что читать не умеете?
Это 1

<VirtualHost *:80>
  ServerAdmin @a.ru
  ServerName a.ru
  ServerAlias http://www.a.ru
  DocumentRoot /var/web/a.ru
  <Directory />
    Options FollowSymLinks
    AllowOverride All
  </Directory>
  <Directory /var/web/a.ru/>
    Options Indexes
    FollowSymLinks
    MultiViews AllowOverride All Order allow,deny allow from all
  </Directory>
  ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
  <Directory «/usr/lib/cgi-bin»>
    AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all
  </Directory>
  ErrorLog ${APACHE_LOG_DIR}/error.log
  LogLevel warn
  CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

А это 2

<VirtualHost *:443>
  ServerAdmin a@a.ru
  ServerName a.ru
  DocumentRoot /var/web/a.ru-ssl
  <Directory />
    Options FollowSymLinks
    AllowOverride All
  </Directory>
  <Directory /var/web/a.ru-ssl>
    Options Indexes FollowSymLinks
    MultiViews AllowOverride
    All Order allow,deny
    allow from all
  </Directory>
  ErrorLog /var/log/apache2/db.deblocal-error.log
  LogLevel error
  CustomLog /var/log/apache2/db.deblocal-access.log combined
  SSLEngine on
  SSLCertificateFile /etc/ssl/certs/a_ru.crt
  SSLCertificateKeyFile /etc/ssl/private/a_ru.key
  <FilesMatch «\.(cgi|shtml|phtml|php)$»>
    SSLOptions +StdEnvVars
  </FilesMatch> 
  BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0
</VirtualHost>
Тольков posrts дописал еще NameVirtualHost *:443

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)
Ответ на: комментарий от dedulka

Потому, что его здесь нет, ну и ваш вариант форматирования тяжелее читать. Там не так уж много текста, неужто вам было сложно его весь прочитать?

kostik87 ★★★★★
()

А редирект точно происходит т.е. он отражается в логах сервера? На 2. тупо может стоять HSTS, после чего любой браузер (кроме старых IE) откажется заходить на 1. до истечения срока HSTS.

x3al ★★★★★
()
Ответ на: комментарий от x3al

А редирект точно происходит т.е. он отражается в логах сервера? На 2. тупо может стоять HSTS, после чего любой браузер (кроме старых IE) откажется заходить на 1. до истечения срока HSTS.

В логах нет ничего. Просто как-будто напрямую к https обратился

dedulka
() автор топика
Ответ на: комментарий от dedulka

Ванга говорит, что у тебя кроме апача ещё nginx, который ставит Strict Transport Security. Либо этот заголовок у тебя когда-то был поставлен. Каждый браузер, поймавший его, будет заходить на 2. вместо 1. до истечения срока действия HSTS.

Хочешь доказательство? Открой приватное окно в своём браузере и зайди на 1. Ну или открой в другом браузере (в котором ни разу не заходил на 2.)/ с чистым профилем.

x3al ★★★★★
()
Ответ на: комментарий от x3al

Ванга говорит, что у тебя кроме апача ещё nginx, который ставит Strict Transport Security. Либо этот заголовок у тебя когда-то был поставлен. Каждый браузер, поймавший его, будет заходить на 2. вместо 1. до истечения срока действия HSTS.

Хочешь доказательство? Открой приватное окно в своём браузере и зайди на 1. Ну или открой в другом браузере (в котором ни разу не заходил на 2.)/ с чистым профилем.

Спасибо!!! nginx не ставил А через тор попробовал-все как и говорили. А на стороне апача реально как-то поправить? Или только клиентские браузёры чистить?

dedulka
() автор топика
Ответ на: комментарий от dedulka

Поищи по всем конфигам того, что у тебя есть Strict Transport Security. Если его нет — добавь на 1 минуту (max-age=60), зайди на 2. со всех браузеров, где хочешь очистить HSTS, потом убери Strict Transport Security из всех конфигов и убедись что нигде не остался. Через минуту ты сможешь заходить на 1. без приватного режима.

Если нужно чистить клиентские — хмм. Можешь попробовать очень низкий max-age, но я не знаю, как браузеры на него отреагируют.

x3al ★★★★★
()
Ответ на: комментарий от x3al

Поищи по всем конфигам того, что у тебя есть Strict Transport Security. Если его нет — добавь на 1 минуту (max-age=60), зайди на 2. со всех браузеров, где хочешь очистить HSTS, потом убери Strict Transport Security из всех конфигов и убедись что нигде не остался. Через минуту ты сможешь заходить на 1. без приватного режима.

Спасибо!! Точно! Сначала добавил a2enmod headers Потом во все ssl (в т.ч. дефолтный)

Header always set Strict-Transport-Security «max-age=60; includeSubDomains»

Заполз на со всех проблемных на http, закомментил и выключил модуль.Подождал минуту-усе заработало. Еще раз спасибо громадное!

dedulka
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.