Есть оригинальный продакшн-сервер на CentOS 7, на нём установлен Битрикс с последней версией bitrix-env и SSL сертификат от Let's Encrypt (через certbot-auto).
Для тестирования нужна локальная копия, поэтому в Virtualbox была запущена BitrixVM на CentOS 7. На хосте стоит Win 10.
Однако, при наличии в корневом каталоге продакшн-сайта файла .htsecure, отвечающего за настройку BitrixVM "доступ к сайту только по https", при разворачивании локальной копии на Virtualbox (через скрипт restore.php с пробросом портов :80 локалхоста на :80 10.0.2.15 гостя на Virtualbox) на полпути предсказуемо происходит редирект на https и процесс разворачивания прерывается (т.к. нет сертификата). Если же убрать .htsecure из корня сайта, то всё ок. Техподдержка Битрикс уверяет, что всё будет в порядке, если его убрать, но не очень верится, что на оригинальном сайте редирект на https останется, если, например, сервер будет внезапно перезагружен, и конфиги обновятся. Хотелось бы его оставить в корневом каталоге оригинала.
Получается, нужно, чтобы SSL был в браузере локалхоста уже до разворачивания сайта из резервной копии. Как добиться появления зелёного замка ещё до разворачивания сайта, уже на Битриксовской заглушке и restore.php, идущими в комплекте со свежей BitrixVM, чтобы при неминуемом редиректе процесс распаковывания архива продолжился?
А именно:
1. Какие файлы должны быть сгенерированы, сколько и какого расширения? (например, .key или .pem)
2. Сертификат устанавливать в хоста, в гостя или в обоих?
3. Примет ли BitrixVM самоподписанный сертификат?
4. В какой именно раздел хранилища сертификатов браузера добавить самоподписанный сертификат?
Была уже перепробована тонна мануалов по openssl, mkcert, и.т.д., но ни один набор из сгенерированных файлов ключей и сертификатов (+ установка их в браузеры) так и не заработал, несмотря на нормальное поведение nginx при перезапуске службы с изменёнными конфигами. Что я делаю не так?
Просто отключите в тестовой среде обработку файла .htsecure в конфигах nginx\apache.
Файл будет лежать на месте, но вы будете использовать http протокол.