Установка GameAP: различия между версиями

Материал из HLDM Wiki
Перейти к навигации Перейти к поиску
(Добавлена информация о настройки cron под Windows)
Строка 71: Строка 71:
 
Настройте автоматическое выполнение задач. Добавив выполняться задания CRON каждые 5-10 минут:
 
Настройте автоматическое выполнение задач. Добавив выполняться задания CRON каждые 5-10 минут:
 
  "*/5 * * * * php -f /path/to/adminpanel/index.php cron"
 
  "*/5 * * * * php -f /path/to/adminpanel/index.php cron"
 +
 +
==== Настройка автоматического выполнения задач Windows ====
 +
В Windows есть свое средство для запуска программ и скриптов по расписанию. Инструмент "Назначенные задания" поможет вам настроить автоматическое выполнение скрипта.
 +
 +
 +
Порядок выполнения:
 +
* Откройте инструмент "'''Назначенные задания'''", '''ПУСК''' -> '''Все программы''' -> '''Стандартные''' -> '''Служебные''' -> '''Назначенные задания'''.
 +
* Откройте мастера "'''Добавить задание'''".
 +
* У вас откроется окно мастера. Кликните далее и выберите файл '''php.exe''' из вашего комплекта PHP интерпретатора.
 +
* В следующем окне укажите имя этому заданию и выберите "'''ежедневно'''" в качестве периода выполнения задания.
 +
* Следующий диалог можете оставить как есть. В этом диалоге вы можете задать время начала выполнения задания.
 +
* Далее введите данные для входа в систему, данные пользователя, от которого будет запускаться задание.
 +
* Поставьте флажок напротив: "'''Установить дополнительные параметры после нажатия кнопки Готово.'''" и нажмите Готово.
 +
* Появится окно свойств этого задания. В поле ''выполнить'' будет команда запуска скрипта. На Windows она выглядит так:
 +
C:\path\to\php\php.exe -f "C:\path\to\adminpanel\index.php" cron
 +
Пример:
 +
C:\data\xampp\php\php.exe -f "C:\data\www\start-in-game.ru\admin_panel_servers\index.php" cron
 +
* Перейдите во вкладку '''Расписание''' и поставьте время начало выполнения в '''0:00'''; нажмите на кнопку '''Дополнительно'''.
 +
* Поставьте галочку напротив '''Повторять задание''' и задайте период запуска скрипта.
 +
* Настройте выполнение скрипта в течении '''23 часов''' и '''50 минут'''. Это даст нам возможность повторять это задание каждые n минут в течении дня.
 +
* После чего нажмите "OK" и проверьте выполнение скрипта.
 +
  
 
'''Примечание!''' Указывайте абсолютный серверный путь, а не путь к сайту. "php -f http://www.gameap.ru/cron" - неправильно
 
'''Примечание!''' Указывайте абсолютный серверный путь, а не путь к сайту. "php -f http://www.gameap.ru/cron" - неправильно

Версия 15:52, 15 августа 2013

Требования

Web-сервер

  • База данных (MySQL, PostgreSQL, MSSQL, SQLite или Oracle)
  • Apache 2 с модулем mod_rewrite
  • PHP 5.1+

Linux

  • SSH сервер (для локального сервера не требуется)
  • Screen

Для стабильной работы игровых серверов на 64-битных системах рекомендуется установить 32-битные библиотеки Для установки:

apt-get install ia32-libs

Windows

  • Настроенный Telnet сервер (для локального сервера не требуется)
  • Psexec или Paexec для Windows сервера (входит в дистрибутив с панелью)

Необходимые модули PHP

  • GD
  • FTP
  • SSH2 (для работы с локальным сервером не требуется)

Установка GD на Linux:

sudo apt-get install php5-gd

Установка модуля SSH2:

pecl install -f ssh2

Установка Web-части АдминПанели

Автоматическая установка

  • Скопируйте содержимое директории upload на сервер.
  • Запустите мастер установки, перейдя по адресу http://<ваш_сайт>/install, например http://www.gameap.ru/install
  • Выполните все действия мастера установки.
  • Удалите каталог install с сервера.

Для повторной установки удалите файлы config.php и database.php в директории application/config

Ручная установка

  • Распакуйте содержимое архива в нужную директорию.
  • Откройте файл applications/config/database.php и настройте параметры базы данных:
$db['default']['hostname'] = 'localhost';     // Хост базы данных
$db['default']['username'] = 'username';      // Имя пользователя
$db['default']['password'] = 'password';      // Пароль
$db['default']['database'] = 'db';            // Имя базы данных
$db['default']['dbdriver'] = 'mysql';         // Тип базы данных (mysql, postgre, obdc и др.). Указывается в нижнем регистре
$db['default']['dbprefix'] = '';              // Префикс базы данных

Если файл отсутствует, то найдите в дистрибутиве install/database_install.tmp, скопируйте его в applications/config/ и переименуйте в database.php

  • Откройте файл applications/config/config.php и настройте параметры:
$config['base_url'] = 'http://www.gameap.ru/'; // URL сайта с http:// и слешем в конце
$config['language'] = 'english'; // Язык
$config['local_os'] 			= 'Linux'; // Локальная ос (на которой установлена панель)
$config['local_script_path'] 	= '/home/servers'; // Путь к игровым сервером на локальном сервере
$config['system_email'] 		= 'no-reply@hldm.org'; // Email, используемый для отправки информационных сообщений другим пользователям
$config['register_users'] 		= FALSE; // Регистрация пользователей

Если файл отсутствует, то найдите в дистрибутиве install/config_install.tmp, скопируйте его в applications/config/ и переименуйте в config.php

Неуказанные параметры редактировать не рекомендуется.

Настройка cron

Настройте автоматическое выполнение задач. Добавив выполняться задания CRON каждые 5-10 минут:

"*/5 * * * * php -f /path/to/adminpanel/index.php cron"

Настройка автоматического выполнения задач Windows

В Windows есть свое средство для запуска программ и скриптов по расписанию. Инструмент "Назначенные задания" поможет вам настроить автоматическое выполнение скрипта.


Порядок выполнения:

  • Откройте инструмент "Назначенные задания", ПУСК -> Все программы -> Стандартные -> Служебные -> Назначенные задания.
  • Откройте мастера "Добавить задание".
  • У вас откроется окно мастера. Кликните далее и выберите файл php.exe из вашего комплекта PHP интерпретатора.
  • В следующем окне укажите имя этому заданию и выберите "ежедневно" в качестве периода выполнения задания.
  • Следующий диалог можете оставить как есть. В этом диалоге вы можете задать время начала выполнения задания.
  • Далее введите данные для входа в систему, данные пользователя, от которого будет запускаться задание.
  • Поставьте флажок напротив: "Установить дополнительные параметры после нажатия кнопки Готово." и нажмите Готово.
  • Появится окно свойств этого задания. В поле выполнить будет команда запуска скрипта. На Windows она выглядит так:
C:\path\to\php\php.exe -f "C:\path\to\adminpanel\index.php" cron

Пример:

C:\data\xampp\php\php.exe -f "C:\data\www\start-in-game.ru\admin_panel_servers\index.php" cron
  • Перейдите во вкладку Расписание и поставьте время начало выполнения в 0:00; нажмите на кнопку Дополнительно.
  • Поставьте галочку напротив Повторять задание и задайте период запуска скрипта.
  • Настройте выполнение скрипта в течении 23 часов и 50 минут. Это даст нам возможность повторять это задание каждые n минут в течении дня.
  • После чего нажмите "OK" и проверьте выполнение скрипта.


Примечание! Указывайте абсолютный серверный путь, а не путь к сайту. "php -f http://www.gameap.ru/cron" - неправильно

Установка серверной части АдминПанели

Linux

Удаленное управление серверами под управлением ОС Linux происходит по протоколу SSH, однако возможно использовать Telnet. Также понадобится утилита Screen.

  • Скопируйте файл bin/Linux/server.sh из дистрибутива с панелью в каталог на сервере (каталог не должен быть общедоступным)
  • Для автоматической установки серверов необходимо наличие утилиты SteamCMD в директории с исполняемыми файлами АдминПанели (server.sh)
http://media.steampowered.com/client/steamcmd_linux.tar.gz
  • Если у Вас локальный сервер, то для управления игровыми серверами необходимо сделать следующее:

sudo nano /etc/sudoers Добавить в конец: www-data ALL = NOPASSWD: /путь/к/server.sh Где www-data - пользователь, от которого запущен Apache и выполняются php скрипты.


Загрузка необходимых программ

  • Для установки SSH сервера выполните команду:
sudo apt-get install ssh
  • Для установки Screen выполните команду:
sudo apt-get install screen
  • Для стабильной работы игровых серверов на 64-битных системах рекомендуется установить 32-битные библиотеки
apt-get install ia32-libs
  • Для автоматической установки серверов необходимо наличие утилиты SteamCMD в директории с исполняемыми файлами АдминПанели (server.sh)
http://media.steampowered.com/client/steamcmd_linux.tar.gz

Windows

Удаленное управление серверами под управлением ОС Windows происходит по протоколу Telnet.

Запуск сервера Telnet

  • Зайдите в меню "Пуск" -> "Администрирование" -> "Управление службами", либо нажмите комбинацию клавиш "<Win> + R" и в появившемся окошке введите "services.msc".
  • В списке служб найдите Telnet и включите эту службу.

Загрузка необходимых программ

  • Для запуска сервера понадобится утилита PsExec, скачать, она необходима чтобы игровой сервер оставался онлайн при выходе из Telnet.
  • Для автоматической установки серверов необходимо наличие утилиты SteamCMD в директории с исполняемыми файлами АдминПанели (server.exe, psexec.exe)
http://media.steampowered.com/client/steamcmd_win32.zip

Управление игровым сервером под управлением ОС Windows возможно по протоколу SSH, в этом случае понадобится любой сервер SSH для Windows, например FreeSSHd. Подобный вид управления игровыми серверами не желателен.