Задать вопрос
  • VestaCP на 8083 порте. Как используя субдомен получить доступ к ПУ?

    TemaSM
    @TemaSM Автор вопроса
    Fullstack, DevOps, InfSec
    UPD: ВНИМАНИЕ. Ответ был написан очень давно, многое поменялось с тех пор. Ответ скорее всего более не актуален.

    Все, 5 часов мучения вылились в отличный результат!
    Как я сделал:

    1)Идем в админку VestaCP в раздел WEB, редактируем основной домен(например domain.ru) и добавляем алиас вида: panel.domain.ru (вместо panel укажите путь, по которому при заходе Вы будете видеть VestaCP)
    2)Заходим в раздел DNS и проверяем записи этого же домена. Обязательно должна быть A запись с именем, которое Вы вводили до этого!
    3)Идем по пути /etc/nginx/conf.d/ - там будет файл вида 127.0.0.1.conf (только там ip вашего сервера) - очищаем содержимое этого файла и сохраняем.
    4)Далее идем по пути /usr/local/vesta/nginx/conf/ - там будет файл nginx.conf - открываем и редактируем:
    После # Vhost будет стоять блок виртуального хоста, примерно такой:
    server {
    	listen       	8083;
    	server_name     _;        
            root            /usr/local/vesta/web;
            charset         utf-8;


    Заменяем его на:
    server {
    	listen       	panel.domain.ru:80;
    	server_name     panel.domain.ru;        
            root            /usr/local/vesta/web;
            charset         utf-8;


    Теперь выше этого кода, но после # Vhost, добавляем это:
    server {
    		listen       domain.ru:80 default;
    		server_name  domain.ru;		
    		location / {
    			proxy_pass  http://domain.ru:8080;
    		}
    		}

    domain.ru - Меняйте на тот домен, для которого выставляли A запись в DNS разделе(он же и в WEB разделе)

    Теперь поясняю:
    С этого момента запросы к главному домену - основной nginx не обрабатывает, а родительский(в VestaCP) делает это именно так как нам необходимо!
    При заходе на domain.ru nginx перенаправляет нас на 8080 порт, который принимает пакеты и отображает нам содержимое.
    При заходе на panel.domain.ru nginx принимает запросы и выполняет их относительно Location'ов, которые выставлены ниже в файле конфигурации.

    Таким образом мы "убили сразу двух зайцев":
    1)Как бы переместили нашу панель на субдомен
    2)Везде в запросах убрали какие либо порты

    Всех благодарю за помощь!
    Ответ написан
    3 комментария