Инструменты пользователя

Инструменты сайта


ispmanager._pravila_xoroshego_tona

Это старая версия документа!


ISPmanager. Правила хорошего тона

Установка панели

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

MPM Apache 2

При установке веб-сервера Apache 2 можно выбрать, какой MPM (Multi-Processing Module) при этом будет инсталлирован. Важно сделать правильный выбор, так как он может повлиять на дальнейшую работу проекта и панели в целом.

MPM ITK

Ставится по умолчанию. Оптимально использовать именно его. Это снизит производительность при обработке запросов, но при этом оградит от ряда проблем в работе с ISPmanager в будущем.

MPM Prefork

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


В случае когда все сайты будут находится в домашней директории одного пользователя (для простоты будем считать, что имя этого пользователя - www-root):

  • в конфигурационном файле Nginx для параметра user заменить apache на www-root
# user  apache;
user  www-root;
  • в конфигурационном файле Apache 2 для параметров пользователя и группы заменить apache на www-root
# User apache
# Group apache
User www-root
Group www-root
  • рекурсивно поменять владельца для файлов и каталогов, принадлежащих apache, на www-root
find / -user apache > /root/apache-user.txt; find / -user apache -exec chown www-root {} \;
  • рекурсивно поменять группу для файлов и каталогов, принадлежащих apache, на www-root
find / -group apache > /root/apache-group.txt; find / -group apache -exec chown :www-root {} \;

При этом можете столкнуться со следующими проблемами:

  • изменение пользователя и группы потребуется выполнять после каждого добавления нового WWW-домена
  • если используете альтернативные версии PHP, то в конфигурации хостов Apache 2, для которых они подключены, может потребоваться убрать параметр SuexecUserGroup:
# SuexecUserGroup www-root www-root
  • при обновлении ISPmansger и сохранении или изменении одного из таких виртуальных хостов конфигурационный файл вернётся к первоначальному состоянию
  • так же после перезагрузке операционной системы или веб сервера Apache 2 в частности, врапперы, реализующие работу альтернативных версий PHP, могут создавать файлы состояний в каталоге /run принадлежащих пользователю apache. В этом случае потребуется сменить их на www-root
find /run -user apache -exec chown www-root {} \;
find /run -group apache -exec chown :www-root {} \;
  • при открытии доп. приложений (phpMyAdmin, RoundCube и т.д.) белый экран - видимо инсталлировали их после изменений владельца и группы для каталогов и файлов. Повторите эту операцию:
find / -user apache -exec chown www-root {} \;
find / -group apache -exec chown :www-root {} \;

Установка доп. приложений

При установке доп. приложений (phpMyAdmin, RoundCube и т.д.) создаются конфигурационные файлы для приложений веб сервера. На примере Nginx и phpMyAdmin:

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;
        error_page 502 = @apache;
        error_page 404 = @apache;
}
location @apache {
        error_log /dev/null crit;
        proxy_pass http://127.0.0.1:8080;
        proxy_redirect http://127.0.0.1:8080 /;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
}
 
location ^~ /phpmyadmin/setup {
        deny all;
}

Для файлов .php вначале происходит попытка проксирования на PHP-FPM, а затем, в случае неудачи, на Apache 2. В случае если PHP-FPM не установлен, будут постоянные ошибки в логе ошибок для виртуального хоста, используемого по умолчанию. Оптимально в дополнение установить PHP-FPM. Однако это понесёт за собой дополнительные разводы вычислительных ресурсов сервера.

ispmanager._pravila_xoroshego_tona.1483813990.txt.gz · Последнее изменение: 2017/01/07 00:00 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki