Если нужно править init.php, но страшно завалить сайт и доступ есть только через админку ...
Увидел на хабре интереснейший пост.
Если нужно править init.php, но страшно завалить сайт и доступ есть только через админку ...Увидел на хабре интереснейший пост.
Проблема:
Cайт без доступа по ftp/ssh, редактировать файлы можно только через панель администратора Битрикса.
Если допустить ошибку при редактировании файла и сохранить его — Битрикс упадет.
Возможное решение:
Оно «в лоб», но может спасти нервы и время.
Суть в том, чтобы перед редактированием делать backup файла init.php, и в случае падения Битрикса свободно разворачивать этот backup обратно по HTTP — просто запросом.
Алгоритм решения:
- Загружаем в корневую папку сайта файл init_recovery.php
- Перед редактированием init.php в браузере набираем site.ru/init_recovery.php?action=backup. Таким образом мы создаем файл init.php_backup в /bitrix/php_interface/
- Редактируем init.php — сохраняем, если все ок и задачи выполнены, init.php_backup можно удалить.
- Если допущена ошибка и админка не загружается, набираем в браузере site.ru/init_recovery.php?action=recovery. После этого текущий init.php сохраняется под названием init.php_error (чтобы можно было подкорректировать ошибку потом, не удаляем этот файл), а файл init.php_backup переименовываем в init.php
Все довольны, все ок.
Сам скрипт:
$action = $_GET["action"]; if ($action == "backup"): copy ($_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php', $_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php_backup'); if (file_exists($_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php_backup')): echo ('File created'); else: echo ('File created error'); endif; elseif ($action == "recovery"): rename ($_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php', $_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php_error'); rename ($_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php_backup', $_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php'); if (file_exists($_SERVER['DOCUMENT_ROOT'].'/bitrix/php_interface/init.php_error')): echo ('Restore completed'); else: echo ('Restore error'); endif; endif;
Разработка сайта
Подайте заявку на разработку сайта на базе готового решения от компании 1С-Битрикс или одного из партнеров компании. Максимально подробно опишите, чему будет посвящен сайт, если это интернет-магазин - что он будет продавать, нужна ли мультиязычность, будут ли разные типы цен (розница, опт, крупный опт), будет ли интеграция с 1С, будет ли выгрузка товаров на различные торговые площадки...
Сопровождение сайта
Вы можете подать заявку на сопровождение вашего сайта на базе 1С-Битрикс. Сопровождение включает в себя: проверка актуальности обновлений сайта, проверка актуальности резервной копии, консультации по сайту. Опишите в заявке, какие еще объемы планируются на сопровождении и на какой срок вы планируете заключить договор на сопровождение - мы подберем подходящий вам бюджет на сопровождение
Работы по сайту
Вы можете подать заявку на выполнение определенного объема работ по сайту. Опишите в заявке объем работ. Это может быть разработка какого-то нового функционала, доработки по имеющемуся функционалу, доработки под требования сео-специалистов. На основании заявки вам будет сформирован бюджет работ, а также названы сроки на выполнение тех или иных работ.