Dukat
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Думаю, проблема не уникальная, но нормального решения я так и не нашёл пока. Есть VDS с несколькими сотнями сайтов на нём. Все работают на Apache 2.2 + PHP. ОС – Debain 7. С месяц назад для одного из сайтов (пусть это будет my-ssl-domain.com) я организовал доступ только по HTTPS (с HTTP идёт безусловный редирект). Пришлось включить mod_ssl.c и "слушать" 443-й порт. Доверенный сертификат от Let's Encrypt, всё работало как надо. И я был доволен результатом. Но на днях обнаружилось, что Яндекс и Google в поисковой выдаче на запросы, связанные с my-ssl-domain.com, показывают верные заголовки страниц и содержимое, но в URL домен заменён на рандомные их числа тех, что находятся на этом же сервере. Например, есть страница https://my-ssl-domain.com/page_1/ . А в выдаче поисковиков оказывается https://my-domain-1.com/page_1/ . При этом на my-domain-1.com нет и никогда не было /page_1/ . В тех. Поддержке Яндекса ответили, что https://my-domain-1.com/page_1/ отдаёт код "HTTP/1.1 200 OK", поэтому и попала в индекс. И действительно, если попытаться открыть https://my-domain-1.com/, Firefox, например, сообщает, что "Ваше соединение не защищено", "Код ошибки: SSL_ERROR_BAD_CERT_DOMAIN". А должен бы, по идее, 404 показывать или на http-версию переходить… Поисковых роботов, видимо, это совсем не смущает. Конфиги Вышло так, что при обращении к любым доменам на сервере по 443-му порту открывается my-ssl-domain.com. Но в сертификате явно указан my-ssl-domain.com, а клиент запрашивал иной хост => SSL_ERROR_BAD_CERT_DOMAIN. Первое, что мне пришло в голову, это добавить другой VirtualHost для 443-го порта, который будет открываться по умолчанию: VirtualHost https://my-domain-1.com/ так же показывает ошибку сертификата, логирование идёт в ssl_error.log. mod_rewrite, разумеется, включён. Как я понял, из-за неправильного сертификата дело не доходит до редиректа. Но как же тогда быть? А что-то напутал с этим дефолтным сайтом-заглушкой? Как можно сделать доступным по SSL только один из нескольких сотен доменов? При том, что при нынешних тенденциях в последствии на SSL могут перейти ещё какие-то домены, и в распоряжении имеется только один IP. |