Afinogen
@Afinogen
PHP разработчик

Как сделать редирект с одного порта на другой?

Доброго времени суток!
Есть сервер на котором стоит связка nginx+apache2, у апача два хоста на портах 8080 и 8083 для http и https соответственно. Проблема в том что в индекс яндекса попали страницы с портом - site.ru:8083 . Причем по 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.

Пробовал в virtualhost на порту 8083 добавить строки
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Не помогло, апач похоже туда даже и не до ходит, есть варианты как это вылечить?
  • Вопрос задан
  • 573 просмотра
Решения вопроса 1
amorphis
@amorphis
Технолог в Студии Артемия Лебедева
Если у вас "стоит связка nginx+apache2", то зачем apache2 отвечает на внешние запросы?

По-идеи, за обработку внешних запросов http:80/https:443 должен отвечать nginx, и при необходимости проксировать их уже локально apache2. А, apache2 в свою очередь должен слушать только локлаьные запросы и быть недоступен извне.

Тогда и поисковики не увидят страницы с разными портами.

есть варианты как это вылечить?

Как вариант правильно настроить apache2/nginx и хосты, настроить robots.txt и подождать какое-то время, пока поисковики не переиндексируют сайт.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы