Как доработать напильником VirtualHost в CentOS Web Panel

13 Apr 2015 | Автор: anchous |

После установки панели управления хостингом CentOS Web Panel, первая же задача обернулась пляской с бубном в полдня, что конечно сильно подорвало её авторитет в моих глазах, по сравнению с той же VestaCP, т.к все таки панелька предназначена для облегчения жизни админа, а не разбора конфигов и ломания головы над тем, что же хотел сказать аффтар.

Смысл в том, что попытался прикрутить два домена под саты и добавил первый домен через пользовательский аккаунт успешно, но при попытке добавить второй домен через второй аккаунт – выводился только первый сайт по обоим доменам.

Поковырявшись, попытался повесить оба домена на отстраненный аккаунт, но почему то вдруг все поломалось окончательно и, вместо сайтов, веб-сервер стал отдавать дефолтную текстовую страничку апача “HTTP Test Page powered by CentOS-WebPanel.com”, при том что виртуальные хосты были прописаны корректно. Если тупо влить контент в /usr/local/apache/htdocs/ то по всем добавленным доменам будет отдаваться дефолтный домен, но беда в том, что там же лежат все системные прилады, вроде пхпадмина или раундкуба, что не есть хорошо.

Перепробовал все что можно, пока методом научного тыка и ковыряния не выявил, что это является следствием конфликта портов апача, которые в панельке CWP настраиваются аж в трех местах, и вот пока они все не будут приведены к одному знаменателю, ничего не заработает:

  1. Dashboard -> CWP Settings -> Edit Settings откуда порт пишется в виде NameVirtualHost %Shared IP%:%Apache Port% в конфиг /usr/local/apache/conf/sharedip.conf
    Shared IP и Apache Port есессно задаются вами в менюшке
  2. Dashboard -> Apache Settings -> Apache Configuration правящий конфиг апача /usr/local/apache/conf/httpd.conf где в директиве Listen 80 ставится порт
  3. Dashboard -> Apache Settings -> Edit Apache vHosts который лезет в конфиг /usr/local/apache/conf.d/vhosts.conf

Вот во всех трех пунктах должен быть выставлен один и тот же порт, после чего руками, надо править:

  1. Сменить Shared IP на 127.0.0.1 т.к эта убогая шарманка CWP, иначе взводит на внешнем IP единственный виртуальный хост, который смотрит в дефолтную папку /usr/local/apache/htdocs/ откуда и показывается дефолтная тестовая страницы веб-сервера Apache. А лучше вообще закомментировать весь файл, т.к в этом случае CWP не пытается его переписать при правках конфига апача.
  2. прописать свою директиву в конфиг апача
    NameVirtualHost *:80
    благодаря которой, если все остальные порты совпадают, все домены начинают работать корректно. Без этой директивы, при совпадении всех портов и SharedIP выставленном127.0.0.1, будет по всем доменам показываться только первый виртуальный хост.

А вот дальше начинается еще больший гемор, т.к при каких то изменениях конфигов, CWP перезаписывает файло /usr/local/apache/conf/sharedip.conf актуальными директивами, поднимая по всем явкам дефолтный домен, поэтому процедура включения кэширования Varnish, выглядит следующим образом: сначала меняем в пунктах 2 и 3 порты с 80 на какой нить 82 или 8181, после чего прописываем в Dashboard -> Apache Settings -> Varnish Cache Server все параметры, после чего через консоль комментируем все записи в файле  /usr/local/apache/conf/sharedip.conf  и рестартим Apache & Varnish Cache Server:
# service httpd restart
# service varnish restart

С кэшированием от Nginx тоже приходится шаманить, т.к при включении кэширования Nginx, движок CWP пишет херню совершенно от балды, а также криво меняет порты, т.к в настройках виртуальных хостов апача и в директиве конфига NameVirtualHost *:80 порты придется менять руками на 8181.
После этого лезим в файл /usr/local/apache/conf.d/rpaf.conf и меняем строку
RPAF_ProxyIPs 127.0.0.1 127.0.0.1
на свой внешний IP
RPAF_ProxyIPs 37.187.114.200
и проверяем наличие подгружаемой библиотеки
LoadModule rpaf_module modules/mod_rpaf.so
т.к. в моем случае файл /usr/local/apache/modules/mod_rpaf.so ссылался на отсутствовавшую папку /usr/lib64 и пришлось перелинковывать на /usr/lib/httpd/modules/mod_rpaf

После этого идем в конфиги виртуальных хостов Nginx /etc/nginx/conf.d/site.ru и меняем параметры
listen 127.0.0.1:80;
root DocumentRoot;
на актуальный путь до папки с документами сайта и все IP
listen 80;
root /home/site/public_html;

Рестартим серваки
# service httpd restart
# service nginx restart
и видим что все работает, не прошло и года.

VN:F [1.9.21_1169]
Rating: 10.0/10 (2 votes cast)
VN:F [1.9.21_1169]
Rating: 0 (from 0 votes)
Как доработать напильником VirtualHost в CentOS Web Panel, 10.0 out of 10 based on 2 ratings

Теги: , ,

Отзывов: 5 на «Как доработать напильником VirtualHost в CentOS Web Panel»

  1. Автор: Андрей на 31 Jul 2015

    Здравствуйте! Вы не могли бы показать пример настройки файла vhosts.conf ?

    [Reply]

    anchous Reply:

    у меня там больше, но по одному сайту выглядит как то так (единственно комменты ключат, там в ServerAlias без хттп:// )
    #############################
    # vhost_start site.ru

    ServerName site.ru
    ServerAlias http://www.site.ru
    ServerAdmin me@site.ru
    DocumentRoot “/home/site/public_html”
    ScriptAlias /cgi-bin/ “/home/site/public_html/cgi-bin/
    #
    # Custom settings are loaded below this line (if any exist)
    # Include “/usr/local/apache/conf/userdata/site/site.ru/*.conf


    SuexecUserGroup site site


    suPHP_UserGroup site site
    suPHP_ConfigPath /home/site


    AllowOverride All


    # vhost_end site.ru
    #####################################

    [Reply]

    VN:F [1.9.21_1169]
    Rating: 0.0/5 (0 votes cast)
    VN:F [1.9.21_1169]
    Rating: 0 (from 0 votes)
  2. Автор: Андрей на 01 Aug 2015

    Спасибо большое за отклик! У меня настроено также, но открывается только первый сайт по 2м доменам. Не могу понять причину неполадки и как ее исправить (

    [Reply]

    VA:F [1.9.21_1169]
    Rating: 0.0/5 (0 votes cast)
    VA:F [1.9.21_1169]
    Rating: 0 (from 0 votes)
  3. Автор: Groh на 20 Mar 2017

    Ух ты, два года прошло, а воз и ныне там и косяк имеет место быть. Искал я замену ispconfig’у, но ковыряя cwp на виртуалке и погуглив уже третью проблему за неполные полчаса, думаю что нафиг это чудо.

    [Reply]

    anchous Reply:

    ну я ставлю весту и не жужжу. единственный баг что столкнулся – это то что бэкапы забиваются темпами, приходится ручками править.
    ну и под сапулечку немного править настройку, чтобы хтмы не кэшировались.
    в остальном – ни в какое сравнение с этой фабрикой костылей, где при попытке добавить что то новое, все рушится и приходится ковырять по новой

    [Reply]

    VN:F [1.9.21_1169]
    Rating: 0.0/5 (0 votes cast)
    VN:F [1.9.21_1169]
    Rating: +1 (from 1 vote)

Ваш отзыв