18
фев
Для работы модуля DLE NodeChat необходим наличие на сервере NodeJS, для запуска которого предоставляю простой, но крайне необходимый скрипт.
NodeJS периодически любит падать, и не умеет совсем автоматически запускаться как демон. Предлагаю вариант решения этой проблемы.
Давайте сделаем так что бы модуль DLE NodeChat нормально запускался и в случае сбоев сам автоматически поднимался.
Казалось бы задача невероятно сложная... А вот и нет! Всё предельно просто благодаря такому чудесному модулю nodejs как forever!
Инструкция по установке и настройке
1. Установим модуль forever глобально:
npm -g install forever
2. В папке чата создаём папку
log
3. Создаём скрипт запуска:
mcedit /etc/init.d/nodechat
Содержимое:
#!/bin/sh
#
# DLE NodeChat
# MSW
# http://0-web.ru/
#
name="nodechat"
forever="/usr/local/bin/node /usr/local/bin/forever"
script_dir="/var/www/site.com/dle_nodechat"
script_file="server.js"
ulimit -n 200000
start()
{
USER=root
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin
PWD=/root
HOME=/root
NODE_ENV=production
${forever} start -a -l ${script_dir}/log/forever.log -o /dev/null -e ${script_dir}/log/chat.log ${script_dir}/${script_file}
}
stop()
{
${forever} stop ${script_dir}/${script_file}
}
restart()
{
${forever} restart ${script_dir}/${script_file}
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo "Usage: service nodechat {start|stop|restart}" >&2
exit 3
;;
esac
Внимание! вместо:
/var/www/site.com/dle_nodechat
необходимо вписать правильный путь к папке чата!
4. Делаем скрипт исполняемым:
chmod +x /etc/init.d/nodechat
5. Команды управления чатом:
Запуск:
/etc/init.d/nodechat start
Остановка:
/etc/init.d/nodechat stop
Перезапуск:
/etc/init.d/nodechat restart
Вот и всё, предельно просто мы создали неубиваемый процесс чата :)
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.