------------------------------------------------
Перенос /manager и /phpmyadmin на отдельный хост
------------------------------------------------
1. Очистить содержимое файла /etc/nginx/vhosts-includes/phpmyadmin.conf (без удаления файла).
2. Очистить содержимое файла /etc/httpd/conf.d/phpmyadmin.conf (без удаления файла).
3. Изменить IP адрес сервера на 127.0.0.1 в файле /usr/local/mgr5/etc/ihttpd.conf:
...
listen {
ip 127.0.0.1
redirect
}
...
4. Создать файл /etc/nginx/vhosts-includes/manager.conf со следующим содержанием (заменив КЛЮЧ_ДОСТУПА на свой, указанный в ForwardedSecret в файле ispmgr.conf):
set $mgr_proxy "https://127.0.0.1:1500";
location ^~ /mancgi/ {
try_files $uri $uri/ @manager;
}
location @manager {
proxy_pass $mgr_proxy;
proxy_redirect $mgr_proxy /;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Secret КЛЮЧ_ДОСТУПА;
chunked_transfer_encoding off;
}
5. Создать файл vhost-management.conf со следующим содержанием:
location /phpmyadmin {
alias /usr/share/phpMyAdmin;
index index.php;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
alias /usr/share/phpMyAdmin/$1;
error_page 404 @apache;
}
location ~ ^/phpmyadmin/(.+\.php)$ {
alias /usr/share/phpMyAdmin/$1;
fastcgi_pass unix:/var/run/php-fpm.apache.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
}
location ^~ /manimg/ {
alias /usr/local/mgr5/skins/;
}
location ^~ /long/ {
try_files $uri $uri/ @manager;
}
location ^~ /manager/ {
try_files $uri $uri/ @manager;
}
location ^~ /shell/ {
try_files $uri $uri/ @manager;
}
6. Подключить файл vhost-management.conf к необходимому хосту, либо положить в директорию /etc/nginx/vhosts-resources/ИМЯ_ХОСТА.
-------------------------------------------
Кастомизация и убирание конфликта /disabled
-------------------------------------------
1. Очистить содержимое файла /etc/httpd/conf.d/disabled.conf (без удаления файла).
2. Заменить содержимое файла /etc/nginx/vhosts-includes/disabled.conf на следующее:
location /__0yp4a9y07mjm5umjguwh9a95nq6jmmk4/ {
alias /var/www/httpd-errors/;
}
3. Скопировать шаблон /usr/local/mgr5/etc/templates/default/nginx-suspend.template в директорию /usr/local/mgr5/etc/templates
4. Изменить в файле /usr/local/mgr5/etc/templates/nginx-suspend.template следующие строки:
...
location / {
error_page 403 /__0yp4a9y07mjm5umjguwh9a95nq6jmmk4/disabled.html;
deny all;
}
...
{% if $SSL == on %}
{% import etc/templates/nginx-suspend-ssl.template %}
{% endif %}
...
5. Скопировать шаблон /usr/local/mgr5/etc/templates/default/nginx-suspend-ssl.template в директорию /usr/local/mgr5/etc/templates
6. Изменить в файле /usr/local/mgr5/etc/templates/nginx-suspend-ssl.template следующие строки:
...
location / {
error_page 403 /__0yp4a9y07mjm5umjguwh9a95nq6jmmk4/disabled.html;
deny all;
}
...
7. Создать директорию /var/www/httpd-errors/ с правами 755 и поместить в нее свой файл disabled.html с необходимым содержанием.
-------------------------------------------------------------
Кастомизация страниц ошибок и хост по-умолчанию с ошибкой 404
-------------------------------------------------------------
1. Создать файл /etc/httpd/conf.d/errors.conf со следующим содержанием:
Alias /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp /var/www/httpd-errors
Order allow,deny
Allow from all
Options FollowSymLinks
ErrorDocument 401 /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/401.html
ErrorDocument 403 /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/403.html
ErrorDocument 404 /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/404.html
ServerName localhost.localdomain
DocumentRoot /var/www/httpd-errors
AddDefaultCharset UTF-8
RewriteEngine On
RewriteRule ^/$ /notexists.html [L]
2. Изменить файл /etc/nginx/nginx.conf, добавив в него следующие строки (перед "location @fallback {"):
...
location /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/ {
alias /var/www/httpd-errors/;
}
error_page 401 /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/401.html;
error_page 403 /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/403.html;
error_page 404 /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/404.html;
location / {
try_files /does_not_exists @fallback;
}
...
3. Создать директорию /var/www/httpd-errors/ с правами 755 и поместить в нее свои файлы 401.html, 403.html, 404.html с необходимым содержанием.
----------------------------------
Кастомизация страницы нового хоста
----------------------------------
1. Изменить содержимое папки /usr/local/mgr5/etc/www.skel на свое.
2. В качестве хранилища картинок/стилей можно использовать локейшн страниц ошибок: /__0o26wwc2k6mqy5qjex4u4k4x3r6giqqp/
-------------------------------------------
Решение проблем с лицензией и репозиториями
-------------------------------------------
1. Удалить файлы версии репозитория:
rm /etc/yum.repos.d/ispsystem.repo
rm /usr/local/mgr5/etc/repo.versions
2. Скачать и запустить инсталлятор:
wget "http://cdn.ispsystem.com/install.sh"
sh install.sh --noinstall
3. Выполнить обновление пакетов:
yum update -y
----------------------------------
Полезные команды администрирования
----------------------------------
Проверка версии и лицензии:
/usr/local/mgr5/bin/core core -V
/usr/local/mgr5/sbin/licctl info /usr/local/mgr5/etc/ispmgr.lic
Перекачка лицензии:
/usr/local/mgr5/sbin/licctl fetch ispmgr
Перезапуск процесса core:
killall -HUP core
Перезапуск сервера ihttpd:
systemctl restart ihttpd.service
Перезапуск сервера apache:
systemctl restart httpd.service
Перезапуск сервера nginx:
systemctl restart nginx.service