Почему бы не посмотреть на параллельное использование Вашей системы исторически и определить, что времена дневного использования в его самом низком? Затем засуньте свое изменение прямо в середине того низкого периода использования.
Когда разработка, сколько времени изменение возьмет, включает пред/сообщение проверочное испытание тестирования и производства реализации. Кроме того, разработайте, сколько времени изменение возьмет, чтобы откатывать, если какое-либо тестирование перестанет работать.
По моему скромному мнению, Ваши 'первые пользователи' не должны быть подопытными кроликами. При наличии живых пользователей в основном производственная верификация изменения не является хорошей вещью. Это уничтожает уверенность конечных пользователей, и неожиданные результаты могут испортить производство, что означает не, только делают необходимо откатывать изменение, но также и откатывать любой 'ущерб', который, возможно, нанесло изменение.
Я не знаю ни о каких научно-исследовательских работах, но смотрю на любую платформу управления ИТ-услуг (ITSM), такой как ITIL, Вы найдете много стандартов и лучшей практики на управлении версиями программного обеспечения. Все системы отличаются так степень того, сколько из методов Вы принимаете, и формальность, зависит. Стандарты ITSM имеют большие системы в виду.
Невозможно запустить несколько виртуальных хостов на основе имен SSL на одной комбинации IP: порт.
Apache не может узнать, какой из них вам нужен, поскольку заголовок Host: не отправляется до тех пор, пока не будет установлен безопасный канал, а для установления безопасного канала apache должен выбрать сертификат для использования. Это проблема курицы и яйца.
Но помимо этого вы пытаетесь получить доступ к содержимому HTTP через соединение SSL, что приводит к ошибке, о которой вы сообщили. Эта проблема отличается от проблемы сертификата.
Правило № 0: НИКОГДА не используйте имена хостов в определении виртуального хоста. Когда-либо.
Правило №1: НЕ используйте перезапись, когда подойдет что-нибудь еще.
В случае перенаправления HTTP на HTTPS, вы создаете столько виртуальных хостов HTTP (порт 80), сколько у вас есть виртуальных хостов SSL, а затем перенаправляете на версию SSL для каждого.
Вы, кажется, реализовали 80% этого, а затем сдались и подумали, что использование перезаписи было правильным решением :)
Вместо этого замените ВСЕ вышеперечисленное на:
<VirtualHost *:80>
ServerName slnew.example.com
Redirect Permanent / https://slnew.example.com/
</Virtualhost>
Теперь часть SSL по крайней мере перестанет вызывать ошибки, но вы получите предупреждение о сертификате для каждого виртуального хоста SSL, который не является каноническим CN для выбранного сертификата (apache всегда будет выбирать сертификат, определенный в first SSL vhost .)
Если вы действительно хотите, чтобы это работало должным образом, каждый виртуальный хост должен иметь свой собственный IP-адрес, который вы используете в определении виртуального хоста:
<Virtualhost 55.66.77.88:443>
ServerName slnew.example.com
и т. Д.