При настройке nginx для панели по документации перестают работать важные модули: phpmyadmin и пр

NoName shared this idea 2 months ago
Under Consideration

Здравствуйте. Включал в работу nginx для загрузки панели по вашей статье:

https://docs.ispsystem.ru/ispmanager-lite/nastrojka-ispmanager/nastrojka-url-paneli-upravleniya

Есть две проблемки:

  1. Копирую блоки конфигурации nginx, выполняя все рекомендации из статьи, и с виду все работает, но при такой вставке перестают работать phpmyadmin, afterlogic и, предположу, roundcube, проверка домена для модуля letsencrypt.
  2. Nginx (v1.16 точно) в логах ругается на устаревшую (не знаю как назвать правильно) настройку конфигурации, которая указана в статье


Решаем:

Вначале я обе опишу, а в конце вставлю, как должно быть в итоге.

1. Проблема в отсутствии важных location. Прошу в статью добавить эту строку, т.к. функционал страдает очень сильно и не продвинутые разработчики будут писать вам лишние вопросы в саппорт. Замечу, что строка эта автоматически вставляется абсолютно во все генерируемые ispmanager конфигурации nginx, но тут про неё забыли, либо писали, когда, возможно, было другое построение папок.

После строк

ssl_certificate /usr/local/mgr5/etc/manager.crt;
ssl_certificate_key /usr/local/mgr5/etc/manager.key;
Прошу добавить:

include /etc/nginx/vhosts-includes/*.conf;


2. Вторая связана с deprecated настройкой. Вы скорее всего это даже проигнорируете, потому что оно еще работает, а кто понимает, где логи находятся, тот сам исправит, но заодно укажу все же.

Ровно выше этих двух приведенных строк есть строка

ssl on;
Она deprecated. Теперь вернее писать так:
listen 10.10.10.10:443 ssl;

Итог:

server {	
       listen 10.10.10.10:443 ssl;
       server_name my.domain.com;		
       ssl_certificate /usr/local/mgr5/etc/manager.crt;	
       ssl_certificate_key /usr/local/mgr5/etc/manager.key;
       include /etc/nginx/vhosts-includes/*.conf;	
 
       set $mgr_proxy "https://10.10.10.10:1500";;         
........	

Благодарю за внимание!

Comments (1)

photo
1

1. Так же было замечено, что в разделе "Базы данных" при выборе нуждой БД и нажатия "Перейти" видно, что, как и должно быть, открывается на секунду страница с параметрами

"func=db.users.redirect&elid=[ИМЯ_БД]->MySQL&plid=&newwindow=yes",

но после открывается phpmyadmin и мы не авторизованы. Где посмотреть, как работает эта функция и почему она не авторизовывает теперь?

2. Генератор конфигурации панели добавляет строку, как я писал выше "include /etc/nginx/vhosts-includes/*.conf;" во все конфиги доменов, но файлы конфигов из этой папки для phpmyadmin и afterlogic делают доступными эти сервисы по адресам

  • домен/phpmyadmin
  • домен/afterlogic/

Разве так задумывалось? Я подумал, что для lets encrypt делать еще нормально для авто-проверки домена, но для этих сервисов так себе. Как считаете? Можно было бы внутри этой папки создать две папки. В одной конфиги для всех доменов, а во второй там, где они нужны. Возможно это усложнит логику, поэтому тут только вам на рассмотрение, стоит ли игра свеч.