Как запустить несколько сайтов на порту 443 в Azure, используя Apache2.4?
Я создал виртуальную машину в Azure под управлением Ubuntu 14.04 и установил стек LAMP. В Azure у вас есть так называемый менеджер конфигурации enpoint, который в основном позволяет перенаправлять входящие запросы с одного порта на другой на размещенной машине. Поэтому я развернул свой первый веб-сайт через порт 81 и произвел перенаправление с 443 на 81, чтобы он работал с сертификатом SSL. Теперь я настроил свой второй веб-сайт на порт 82, который работает нормально, используя http, но как теперь я могу привязать к нему свой SSL? Поскольку у меня эластичный IP-адрес, я должен связать свои записи DNS с CNAME компьютера, который называется, например, "mymachine.cloudapp.net:port". Я не настолько опытен в DNS / SSL / и т.д., поэтому я думаю, что должен быть способ, которого я еще не знаю. Пока что моя единственная идея - создать одну машину для каждого сайта, что, безусловно, не лучшее решение. Используя Google, я нашел много обходных путей для IIS, но ничего для Apache 2.4...
1 ответ
Перво-наперво, SSL - это просто протокол, и вы можете использовать любой порт, который хотите. Итак, отвечая на ваш вопрос:
Как вы можете привязать к нему ssl?
Ну, вам в значительной степени нужно купить ssl и настроить его для этого сайта с этим портом (так что в основном у вас будет SSL для каждой комбинации URL и порта, которую вы хотите (очевидно, есть сертификаты SSL, которые вы можете использовать для нескольких сайтов с тот же базовый URL). Поэтому вам просто нужно отредактировать файлы Apache .conf, чтобы перенаправить каждое приложение (DocumentRoot) на другой порт.
Теперь я рекомендую всегда использовать стандартные порты:80 и 443 (по многим причинам, таким как: психическое здоровье, стандарты и т. Д.). На самом деле мы делаем в реальном мире один сервер, на котором размещено несколько виртуальных хостов с одним или несколькими именами ServerNames, вы можете либо купить их, либо просто указать базовый URL, а затем добавить суффикс или префикс к этому домену.
Например, мой базовый домен будет иметь что-то вроде этого:
https://example.com -> /www/mainApp
https://admin.example.com -> /www/adminApp
https://api.example.com -> /www/Api
или если вы идете и покупаете доменные имена, у вас может быть что-то вроде этого:
https://example1.com -> /www/mainApp
https://example2.com -> /www/adminApp
https://example3.com -> /www/Api
Итак, в основном я получу три SSL-сертификата, по одному для каждого приложения, и вам придется настроить Apache для ответа на это доменное имя и перейти к приложению, которое вам нужно обслуживать, что в значительной степени решит вашу проблему.
Вы можете прочитать больше об этом, как настроить это здесь.
Попробуйте сами и дайте нам знать, если у вас возникнут какие-либо проблемы. Я также предложил бы прочитать больше о Apache Virtual Hosts.