Заметки по созданию хостинга на базе панели ISP Control: различия между версиями

Материал из Linux Wiki
Перейти к навигацииПерейти к поиску
(Новая страница: «==Бэкап== * Для улучшения использования многоядерных процессоров есть смысл поставить pbzip2....»)
 
Строка 1: Строка 1:
==Бэкап==
==Бэкап==


* Для улучшения использования многоядерных процессоров есть смысл поставить pbzip2. Для его использования в '''/etc/ispcp/ispcp.conf''' изменить параметр '''ZIP''' на bzip2, а '''CMD_BZIP''' на
===Использование многопоточной архивации на SMP===
Для улучшения использования многоядерных процессоров есть смысл поставить pbzip2. Для его использования в '''/etc/ispcp/ispcp.conf''' изменить параметр '''ZIP''' на bzip2, а '''CMD_BZIP''' на
  CMD_BZIP = /usr/bin/pbzip2
  CMD_BZIP = /usr/bin/pbzip2
* это затронет архивирование баз данных. Для многопоточной архивации контента придется немного изменить скрипт  '''/var/www/ispcp/engine/backup/ispcp-backup-all''', 297-я строка - надо сжатие напрямую через tar сменить на внешнюю команду. Скрипт в этом месте выглядит так (закомментированный старый и новый вариант):
{{ToDo|Проверить, что ничего не сломалось}}
это затронет архивирование баз данных. Для многопоточной архивации контента придется немного изменить скрипт  '''/var/www/ispcp/engine/backup/ispcp-backup-all''', 297-я строка - надо сжатие напрямую через tar сменить на внешнюю команду. Скрипт в этом месте выглядит так (закомментированный старый и новый вариант):
  #$backup_cmd = "$cmd_tar --create --directory=$dmn_dir --$zip --file=$www_dir/$backup_filename --exclude=logs --exclude=phptmp --exclude=backups . 2> $www_dir/$backup_filename.log";
  #$backup_cmd = "$cmd_tar --create --directory=$dmn_dir --$zip --file=$www_dir/$backup_filename --exclude=logs --exclude=phptmp --exclude=backups . 2> $www_dir/$backup_filename.log";
  $backup_cmd = "$cmd_tar --create --directory=$dmn_dir --exclude=logs --exclude=phptmp --exclude=backups . 2> $www_dir/$backup_filename.log | pbzip2 -9c > $www_dir/$backup_filename";
  $backup_cmd = "$cmd_tar --create --directory=$dmn_dir --exclude=logs --exclude=phptmp --exclude=backups . 2> $www_dir/$backup_filename.log | pbzip2 -9c > $www_dir/$backup_filename";
* Как (более правильный) вариант - переделать скрипт, добавив новый тип сжатия - pbzip2, обрабатывающийся по тем же правилам, что и обычный bzip2, тогда в правке выше можно использовать переменную '''$zip'''.
Как (более правильный) вариант - переделать скрипт, добавив новый тип сжатия - pbzip2, обрабатывающийся по тем же правилам, что и обычный bzip2, тогда в правке выше можно использовать переменную '''$zip'''.
 
==Конфиги==
===Настройки PHP===
* '''/etc/ispcp/fcgi/parts/php5/php.ini''' - тут находятся дефолтные настройки PHP (а рядом и другие дефолтные файлы), которые копируются юзеру при создании домена.
* Настройки аплоада файлов: в '''php.ini''' для нужного домена (в частности для phpmyadmin, net2ftp):
 
# лимит для выполнения скриптов
memory_limit = 128M
post_max_size = 64M
# лимит для аплоада файлов
upload_max_filesize = 64M
 
Кроме того, в '''/etc/apache2/mods-enabled/fcgid_ispcp.conf''' изменить (добавить) параметр '''MaxRequestLen''':
MaxRequestLen 128000000
Без него может появляться 500-я ошибка при аплоаде больших файлов (в частности дампов баз в phpmyadmin), ошибку можно отловить в '''error_log''' сервера.
 
==Права доступа==
 
* Включаем Апач в группу каждого создаваемого домена. Это позволит ставить на файлы и каталоги более секьюрные права - вплоть до 400 на скрипты и 440 на обычный html. Для этого надо поправить скрипт '''/var/www/ispcp/engine/ispcp_common_methods.pl''' на строке 2275:
 
# Добавляем Апач в группу домена
$cmd = "/usr/sbin/usermod -a -G $sys_group www-data";
sys_command($cmd);
 


[[Категория:Администрирование]]
[[Категория:Администрирование]]

Версия 01:54, 16 июля 2011

Бэкап

Использование многопоточной архивации на SMP

Для улучшения использования многоядерных процессоров есть смысл поставить pbzip2. Для его использования в /etc/ispcp/ispcp.conf изменить параметр ZIP на bzip2, а CMD_BZIP на

CMD_BZIP = /usr/bin/pbzip2
ToDo: Проверить, что ничего не сломалось

это затронет архивирование баз данных. Для многопоточной архивации контента придется немного изменить скрипт /var/www/ispcp/engine/backup/ispcp-backup-all, 297-я строка - надо сжатие напрямую через tar сменить на внешнюю команду. Скрипт в этом месте выглядит так (закомментированный старый и новый вариант):

#$backup_cmd = "$cmd_tar --create --directory=$dmn_dir --$zip --file=$www_dir/$backup_filename --exclude=logs --exclude=phptmp --exclude=backups . 2> $www_dir/$backup_filename.log";
$backup_cmd = "$cmd_tar --create --directory=$dmn_dir --exclude=logs --exclude=phptmp --exclude=backups . 2> $www_dir/$backup_filename.log | pbzip2 -9c > $www_dir/$backup_filename";

Как (более правильный) вариант - переделать скрипт, добавив новый тип сжатия - pbzip2, обрабатывающийся по тем же правилам, что и обычный bzip2, тогда в правке выше можно использовать переменную $zip.

Конфиги

Настройки PHP

  • /etc/ispcp/fcgi/parts/php5/php.ini - тут находятся дефолтные настройки PHP (а рядом и другие дефолтные файлы), которые копируются юзеру при создании домена.
  • Настройки аплоада файлов: в php.ini для нужного домена (в частности для phpmyadmin, net2ftp):
# лимит для выполнения скриптов
memory_limit = 128M
post_max_size = 64M
# лимит для аплоада файлов
upload_max_filesize = 64M

Кроме того, в /etc/apache2/mods-enabled/fcgid_ispcp.conf изменить (добавить) параметр MaxRequestLen:

MaxRequestLen 128000000

Без него может появляться 500-я ошибка при аплоаде больших файлов (в частности дампов баз в phpmyadmin), ошибку можно отловить в error_log сервера.

Права доступа

  • Включаем Апач в группу каждого создаваемого домена. Это позволит ставить на файлы и каталоги более секьюрные права - вплоть до 400 на скрипты и 440 на обычный html. Для этого надо поправить скрипт /var/www/ispcp/engine/ispcp_common_methods.pl на строке 2275:
# Добавляем Апач в группу домена
$cmd = "/usr/sbin/usermod -a -G $sys_group www-data";
sys_command($cmd);