====== Изменение файловой структуры биллинга ======
С версии 3.11.01 будет автоматически произведены следующие изменения:
Данные изменения не касаются ЛК на внешних серверах
* Файлы логов админки будут перенесены в /var/log/mikbill/admin
* Файлы логов ЛК будут перенесены в /var/log/mikbill/stat
* В файлe ротации логов /etc/logrotate.d/mikbill будут изменены пути ротации к новым логам
* Старая директория логов admin/app/log будет перенесена в /var/mikbill/prod/old_files/admin
* Старая директория логов stat/app/log будет перенесена в /var/mikbill/prod/old_files/stat
* XML файл конфигурации админки будет перенесен в /var/mikbill/prod/config/admin.xml
* XML файл конфигурации ЛК будет перенесен в /var/mikbill/prod/config/stat.xml
* В директории /var/mikbill у файла смс ConfigClass.php будет заменен путь к XML конфигу
* Файлы mrtg из admin/sys/mrtg будут перенесены в /var/mikbill/prod/mrtg
* Файлы mrtg_users из admin/sys/mrtg_users будут перенесены в /var/mikbill/prod/mrtg_users
* После переноса mrtg будет запущена генерация нового конфига (что бы новые данные записывались по корректному пути)
* Директория скриптов admin/sys/scripts будет перенесена в /var/mikbill/prod/scripts
* В заданиях из /etc/crontab или /etc/cron.d/mikbill будет заменен путь из /var/www/mikbill/admin/sys/scripts на /var/mikbill/prod/scripts
===== После обновления =====
Обязательно проверьте что после изменений:
* скрипты в /var/mikbill/prod/scripts имеют права запуска
* что владельцем логов в /var/log/mikbill является apache или www-data
* в cron правильно изменились пути к скриптам
===== Ручной перенос =====
Если вы запускали обновление 3.11.01, то апдейтер уже сам выполнил данные действия (кроме СМС скриптов если они находятся вне директории /var/mikbill)
==== Логи ====
\\ Создайте директорию /var/log/mikbill/admin и /var/log/mikbill/stat
mkdir -p /var/log/mikbill/{admin,stat}
Текущие файлы логов админки (log.txt и mbdebug.log) перенесите в новую директорию
/bin/mv -f /var/www/mikbill/admin/app/log/log.txt /var/log/mikbill/admin/general.log
/bin/mv -f /var/www/mikbill/admin/app/log/mbdebug.log /var/log/mikbill/admin/debug.log
Аналогично для логов ЛК
/bin/mv -f /var/www/mikbill/stat/app/log/log.txt /var/log/mikbill/stat/general.log
/bin/mv -f /var/www/mikbill/stat/app/log/mbdebug.log /var/log/mikbill/stat/debug.log
Далее в xml конфиге админки и ЛК нужно изменить путь логов на новый:
localhost
mikbill
mikbill
127.0.0.1
22007
/var/run/mikbill.pid
/var/log/mikbill.log
Europe/Moscow
true
/var/log/mikbill/admin/general.log
/var/log/mikbill/admin/debug.log
Параметры отвечающие за путь к логам
/var/log/mikbill/admin/general.log
/var/log/mikbill/admin/debug.log
Измените их у себя в конфиге (если их нету в конфиге, добавьте).
Далее измените путь к логам в logrotate по пути **/etc/logrotate.d/mikbill**
==== XML конфиги ====
\\ Создайте директорию /var/mikbill/prod/config
mkdir -p /var/mikbill/prod/config
Далее перенесите XML файлы конфигов:
/bin/mv -f /var/www/mikbill/admin/app/etc/config.xml /var/mikbill/prod/config/admin.xml
/bin/mv -f /var/www/mikbill/stat/app/etc/config.xml /var/mikbill/prod/config/stat.xml
Если есть конфиг mbp, перенесем его тоже:
/bin/mv -f /var/www/mikbill/admin/app/etc/config.ini /var/mikbill/prod/config/mbp.ini
После изменения нужно перезапустить ядро билинга.
==== Директория скриптов ====
\\ Создайте директорию /var/mikbill/prod
mkdir -p /var/mikbill/prod
И перенесите в неё текущие скрипты билинга:
/bin/mv -fu /var/www/mikbill/admin/sys/scripts /var/mikbill/prod/
На некоторых системах после переноса слетают права на скрипты, по этому дадим им снова права запуска:
chmod +x /var/mikbill/prod/scripts/*.sh
Заменим пути в cron на новые:
sed -i "s|/var/www/mikbill/admin/sys/scripts|/var/mikbill/prod/scripts|g" /etc/cron.d/mikbill
sed -i "s|/var/www/mikbill/admin/sys/scripts|/var/mikbill/prod/scripts|g" /etc/crontab
После чего перезапустите крон
service crond restart
или
service cron restart
==== Mrtg ====
\\ Создайте директорию /var/mikbill/prod
mkdir -p /var/mikbill/prod
После чего переместите текущие директории mrtg и mrtg_users
/bin/mv -fu /var/www/mikbill/admin/sys/mrtg /var/mikbill/prod/
/bin/mv -fu /var/www/mikbill/admin/sys/mrtg_users /var/mikbill/prod/
Далее пересоздадим конфиг mrtg:
cd /var/www/mikbill/admin
php index.php config_mrtg_gen
==== СМС скрипты ====
\\ Так как СМС скрипты использовали XML конфиг админки, а он у нас переместился, в конфиге СМС нужно изменить путь.
\\ Определим где у находятся СМС скрипты посмотря какой файл вызывается в скрипте пополнения:
cat /var/mikbill/prod/scripts/mikbill_payment_event.sh
Будет что то на подобии
cd /var/www/mikbill/admin/res/sms
/usr/bin/php ./send_sms.php deposit $2 4
Значит в файле /var/www/mikbill/admin/res/sms/lib/ConfigClass.php нужно заменить старый участок:
# Путь к конфигу для БД
public static $_file_config = '/var/www/mikbill/admin/app/etc/config.xml';
На новый путь к конфигу:
# Путь к конфигу для БД
public static $_file_config = '/var/mikbill/prod/config/admin.xml';