Как развернуть битрикс
Перейти к содержимому

Как развернуть битрикс

  • автор:

Настраиваем площадку Битрикс правильно: простые советы для сохранения душевного здоровья тимлида

Настройка любой площадки для CMS — это рутинный процесс, который должен быть доведен до автоматизма в каждой уважающей себя компании. А потому частенько воспринимается, как восход солнца — это происходит само собой. На самом деле, нельзя так относиться и надеяться на разработчиков, особенно если часть команды работает на субподряде. Они могут потратить кучу времени и денег проекта на переносах, багах и конфликтах кода.

Задача тимлида — создать команде среду для разработки и правильные условия для написания кода. Чтобы помочь с этим я решил опубликовать напоминалку, основанную на внутренних регламентах компании где я работаю.

Итак, наша задача: развернуть рабочие стенды девелоперов (dev), тестовое окружение(stage), боевой сервер (prod), наладить процесс разработки и тестирования, доставки артефактов по цепочке и деплоя стабильной версии. Для этого необходимо формализовать, привести к единому алгоритму процесс настройки площадки для разработчика, чтобы не возникало ситуации, когда каждый сам решает, что и где «подкрутить». Золотое правило управленца — если процесс повторяется больше одного раза, на этот процесс должна быть инструкция или регламент.

Расскажу на примере архитектуры, которую используем мы: main — наша основная площадка для тестов и показов. В дополнение используем несколько площадок для каждого из разработчиков — d1, d2 и так далее. Настройкой среды для Битрикс-приложения в нашей компании занимается сисадмин. Здесь нет универсального способа настройки, поэтому подробности опущу.

Шаг 1. Разворачиваем ядро Битрикс (базовое или своей версии):

  • Проверить кодировки. Устанавливайте сайт СТРОГО в кодировке UTF-8. При проверке сайта (Инструменты – проверка системы) шестым пунктом проверки должно выводиться «Параметры настройки UTF».
  • Проверить ключи. Ни в коем случае не оставляйте сайт на демо-ключе. Нужно запрашивать некоммерческий ключ для разработки у менеджера проекта, а в случае непредставления — останавливать проект. Об этом должен позаботиться тимлид, иначе про ключ все забудут и в один прекрасный момент сайт перестанет работать.
  • Не забыть отключить допфункции. Запрет отправки почтовых сообщений на тестовой площадке. Если на странице задана константа ONLY_EMAIL и email из настроек почтового шаблона с ее значением не совпадает, то письмо не отсылать. Если мы хотим запретить посылать сообщения на всем сайте, то необходимо в файле bdconn.php установить константу define(«ONLY_EMAIL», «admin@site.ru«);
  • Поставить галку на версиях разработчиков. После установки продукта в админке нужно отметить, что сайт используется для разработки, а не для коммерческих целей.
  • Обновить до актуального состояния. Сразу после развертывания необходимо зайти в настройки Битрикс и установить все обновления системы, поскольку в аутсорс-продакшнах часто пользуются готовыми сборками (образами).

После разворачивания сайта необходимо пройти проверку системы и проверку тестирования конфигурации /bitrix/admin/site_checker.php?lang=ru. Ошибок и предупреждений не должно быть. По умолчанию агенты на тестовых площадках Extyl должны выполняться на хитах, а на бою переведены на cron (тимлид проекта решает, когда на тесте надо перевести агента на cron).

Шаг 2. Следим за тем, чтобы площадки для разработки не оказались в индексе поисковиков

Программисты, как правило, вообще не задумываются о поисковиках и последствиях индексации площадки для разработки. Нужно напоминать, что стенды разработки — это те же сайты в сети, а значит их видят роботы, Нам не нужно, чтобы служебная информация оказалась доступна в поиске. Сразу после установки не забываем изменить настройки на боевом сервере.

И в robots.txt прописать правило:

User-Agent: * Disallow: / #Все другие правила удалить

– запрещена индексация сайта;

Во время переноса сайта на боевой сервер, файл должен быть изменен (оставить запрет на индексацию только на системные папки, страницы, файлы, такие как bitrix, upload, auth и т.п.).

Шаг 3. Устанавливаем модуль миграции сущностей БД

Когда у нас уже есть ядро и мы начали делать сайт, появляются данные, с которыми нужно работать и не терять их. Возникает необходимость переноса на бой и обратно изменений сущностей БД (инфоблоки, формы и т.д.).

Ничего не вводим руками, пользуемся миграциями. Причина — миграции дают возможность сделать все, что можно сделать руками, но при этом процесс можно в любой момент времени повторить. Когда команда состоит из нескольких разработчиков, количество забытых данных растет в геометрической прогрессии. Если у заказчика есть предпрод или сроки приемки затягиваются, то без миграций невозможно обойтись в принципе.

Для переноса изменения из БД теста на бой или наоборот надо сразу установить модуль миграции для разработчиков https://marketplace.1c-bitrix.ru/solutions/sprint.migration/

Не ленитесь и облегчите себе жизнь установкой мигратора. Он поможет восстановить работоспособность сайта, даже если кто-то удалил базу без возможности восстановления.

Шаг 4. Настраиваем Git

В современных реалиях без GIt не может существовать не один проект, даже очень маленький. Писать код без системы версионирования сегодня невозможно — командная работа на то и командная.

Сразу после развертывания Битрикс — надо установить Git на проект и правильно его настроить:

/bitrix/ /bitrix /upload/ /upload /local/vendor/ /local/vendor /web.config /.htaccess /robots.txt /*.xml *.swp *.log

Не все должно попадать в репозиторий, настраиваем gitignore.

.gitignore может быть изменен и дополнен в зависимости от потребностей проекта.

robots.txt, как и sitemap*.xml, .htaccess должен быть в .gitignore на бою и всех тестовых площадках.

Пара слов о гигиене процессов:

  • На предпроде должна быть включена ветка stage, а на бою master. В ветках stage и master мы не работаем.
  • Все ненужные страницы и разделы необходимо удалить перед первым коммитом.
  • В Git не должны попадать отладочные скрипты, логи, медиафайлы, регистрируемые в БД и др.
  • Очень важно первично правильно настроить Git и сделать площадку main (stage) чистой — без незакоммиченных файлов. Далее эта площадка будет копироваться на тестовые хосты, и если не выполнить эти предписания, то будут проблемы с тем, что невнимательные разработчики станут коммитить конфигурационные файлы, отладку, ядро и другие вещи, которые не должны попадать в Git. Вообще, когда в истории коммитов видно, как удаляют отладку или то, чего не должно там быть — это говорит о низкой квалификации разработчика. Подробнее о работе с Git я расскажу в следующей статье.

Шаг 5. Настраиваем CI/CD на проекте

CI/CD технология непрерывной интеграции и развертывания сегодня практически стандарт для отрасли, хотя единого алгоритма действий тут нет, и пожалуй быть не может — слишком много разных переменных для каждого проекта, каждый раз настраивать приходится по своему. Но общий алгоритм един — пишется код, покрывается тестами, отправляется в систему контроля версий (не обязательно Git), при поступлении нового коммита — тригерится запуск развертывания тестового окружения и самих тестов. Если все успешно — тригерится деплой артефактов на прод.

Разумеется, это только каркас, и этапов может быть гораздо больше, как и проверок (и автоматических и ручных) на возможность перехода к следующему этапу. Но в рамки этой статьи разбор CI/CD не укладывается, это отдельная и большая тема.

Большие проекты подразумевают настройку CI/CD, но процесс сильно зависит от потребностей проекта.

В этом мире всё, включая разработку, стремится к хаосу, а тимлиды его сдерживают и структурируют работу. Описанные мной шаги банальные, но, как ни странно, снимают огромное количество проблем. Не выполненные вовремя пункты инструкции ведут к негативу заказчика и потере драгоценного времени тимлида. Надеюсь, что материал поможет читателю сделать настройку площадок проще, а работу в команде продуктивнее.

Давайте продолжим обсуждение в комментариях?

  • битрикс
  • битрикс отладка веб-разработка
  • bitrix24
  • 1c-bitrix
  • 1c-битрикс
  • 1c интернет-магазин
  • bitrix
  • gitignore

Инструкция по установке 1С Битрикс на хостинге

Для начала работы с CMS 1С Битрикс стоит посмотреть как работает эта система управления сайтом, оценить насколько она удобна и проста в обращении и только потом покупать ее. Система позволяет пользователям установить demo-версию и пользоваться ей в течение 30 дней бесплатно.

Нам потребуется хостинг-площадка под 1С Битрикс, я давно работаю с timeweb.ru. На мой взгляд, это один из лучших хостинг-партнеров битрикса, с ними удобно, потому что просто и быстро можно развернуть сайт или восстановить резервную копию, работать с почтой и доменами, оплачивать услуги и у них есть оперативная техподдержка.
Вообщем давно работаю с ними и, сравнительно с другими хостинг-площадками, проблем практически не возникает.

Итак, на таймвебе есть бесплатный тестовый период, чем и воспользуемся.

Шаг первый. Заказ хостинга.

Во-первых, переходим по ссылке timeweb.ru и в меню выбираем хостинг для 1с-битрикс, тариф Eterno.

timeweb.png

Если будем оформлять хостинг на физ. лицо, вводим ФИО и Электронную почту, для юр. лиц также потребуются реквизиты компании. Жмем на ссылку «У меня есть код партнёра» и вводим мой промо-код 20279 (вам все-равно, а мне будет приятно). Читаем оферту и затем ставим галочку «Я согласен с условиями оферты». После нажатия на кнопку «Заказать» нас сразу перекидывает на страницу панели управления, где уже можно разворачивать сайт, а регистрационные данные с логином и паролем таймвебовцы вышлют в течение 10 минут на вашу почту.

2016-08-23_21-02-20.png

Теперь, когда у нас уже есть хостинг, нужен домен, по которому будет доступен сайт. Здесь уже все предусмотрено, перейдя в левом меню на пункт «Сайты», видим, что один сайт уже создан и к нему прилинковано доменное имя. В моем случае, это cy93520.tmweb.ru, копирую его и запускаю в браузере, вижу тестовую страницу-заглушку timeweb.

2016-08-23_21-09-33.png

Можете активировать один из этих купонов и получить бонус от Timeweb:

  • SNGSITESPEED — Ускоритель сайтов на 1 месяц при оплате хостинга от 1 месяца;
  • SNG1YEAR — 1 месяц хостинга в подарок при оплате от 1 года;
  • SNG2YEAR — 3 месяца хостинга в подарок при оплате от 2 лет.

Шаг второй. Загрузка дистрибутива.

Теперь, для установки cms битрикс, нам потребуется скрипт для загрузки дистрибутива. Не пугайтесь, смотреть в код не придется. Переходим на сайт компании 1C Битрикс http://www.1c-bitrix.ru/download/cms.php и качаем себе на компьютер файл bitrixsetup.php

2016-08-23_21-22-05.png

Далее, этот скрипт нужно загрузить в файловую систему хостинга, для этого в панели управления переходим на страницу «Файловый менеджер», переходим в папку public_html(это корень сайта) и загружаем в нее.

2016-08-23_21-25-42.png

Запускаем скрипт в браузере, после доменного имени, полученного на первом шаге, мы пишем имя скрипта. В моем случае, ссылка будет выглядеть так cy93520.tmweb.ru/bitrixsetup.php.

2016-08-23_21-34-42.png

Шаг третий. Мастер установки.

Выбираем 1С-Битрикс: Управление сайтом редакция Бизнес, можно установить и корпортал Битрикс24, но в другой раз. Жмем «загрузить», идет загрузка дистрибутива, после чего нас перебрасывает на страницу мастера. В первом этапе ничего выбирать не нужно, просто жмем далее.

2016-08-23_21-45-18.png

На следующем экране принимаем Лицензионное соглашение.

2016-08-23_21-45-18.png

На странице регистрации продукта снимаем галочку «Я хочу зарегистрировать свою копию продукта, устанавливать решения из Marketplace и получать обновления» и устанавливаем галочку «Установить в кодировке UTF-8». Жмем «Далее».

2016-08-23_21-53-28.png

В окне предварительной проверки видим ошибки параметров php:

2016-08-23_21-55-11.png

Исправим их на хостинге. Для этого зайдем в файловую систему сайта на хостинге, увидим, что в папке public_html появились файлы и папки битрикса. Найдем среди них файл .htaccess и отредактируем его.

2016-08-23_22-00-55.png

Добавим следующие записи в код файла:

php_value mbstring.func_overload 2
php_value mbstring.internal_encoding UTF-8

2016-08-23_22-03-49.png

Сохраняем файл, ошибки мы исправили. Возвращаемся к мастеру установки и жмем «Далее».

На странице создания БД(базы данных) нужно ввести наименование БД, имя пользователя и пароль к БД.
Создадим БД на хостинге, для этого в панели хостинга кликнем на пункт меню «Базы данных MySQL».

2016-08-23_22-10-21.png

Нажимаем ссылку «Создание новой базы данных», в окошке вводим наименование БД и придумываем пароль к ней. Сохраняем БД.

2016-08-23_22-12-19.png

Наименование БД вписываем в мастере установки в поля * Имя пользователя и *Имя базы данных, пароль вписываем в поле Пароль. Жмем «Далее».

2016-08-23_22-23-08.png

Начнется установка базы данных.

2016-08-23_22-28-54.png

Создаем админа сайта, указываем реквизиты доступа(логин, пароль), почту админа и имя с фамилией. Жмем «Далее».

В окошке выбора решения нам предложат несколько готовых сайтов и возможность загрузить готовое решение из Marketplace. Мы выберем Интернет-магазин

2016-08-23_22-36-31.png

Далее начнется простая процедура выбора шаблона и цвета, ввод основной информации о сайте и т.д. Подробно описывать этот процесс я не стану, для каждого решения эта процедура своя. У интернет-магазина нужно будет выбрать платежные системы и службы доставки, типы платильщиков, местоположения. Пройдя все этапы установки, нажимая «Далее», в итоге мы перейдем на финальную страницу, откуда сможем перейти на готовый сайт.

Как установить CMS «1С-Битрикс: Управление сайтом» на виртуальный сервер

url image

Для каждого из перечисленных способов использования способ установки CMS Битрикс немного отличается.

Установка CMS Битрикс со стандартным окружением

Чтобы на новом сервере было установлено стандартное окружение Битрикс, воспользуйтесь рецептом автоматической установки. Для этого выберите сервер с виртуализацией KVM (из линейки готовых или масштабируемых: Форсаж, Атлант, CPU.Турбо 2.0), при заказе укажите операционную систему CentOS 7 и в качестве предустановленного ПО выберите «1C-Битрикс: Управление сайтом».

После активации сервера вы сможете начать установку CMS:

Начало работы с 1C-Битрикс: Управление сайтом после автоматической установки из рецепта

Установка CMS Битрикс с оптимизированным окружением

Если вы хотите испытать оптимизированное окружение, для этого у нас тоже есть готовый рецепт. Для этого выберите сервер на специальном тарифе CPU.Турбо 2.0 и в настройках заказа выберите ОС CentOS 7. В предустановленном ПО укажите вариант «1C-Битрикс GT». Подробнее узнать об особенностях этого рецепта можно в описании.

Установка CMS в этом случае ничем не отличается от таковой при использовании стандартного окружения:

Начало работы с 1C-Битрикс GT после автоматической установки из рецепта

Установка CMS Битрикс в панели управления ISPmanager

Чтобы начать пользоваться панелью ISPmanager, укажите её в качестве предустановленного ПО при заказе сервера.

Дождитесь активации сервера, затем перейдите в раздел Виртуальные серверы, выберите нужный в списке, нажмите кнопку Инструкция и задайте пароль для доступа к серверу. Мы не храним пароли пользователей, поэтому обязательно сохраните его в надёжном месте.

Дальше процесс разбивается на несколько этапов. Чтобы начать работу CMS Битрикс, необходимо:

  1. Добавить в ISPmanager новый сайт и базу данных (можно пропустить, если вы создали заранее);
  2. Скачать скрипт установки CMS c официального сайта;
  3. Выполнить установку CMS;
  4. Запустить тестирование и оптимизировать настройки.

Добавляем сайт и базу данных в ISPmanager

Войти в ISPmanager, можно по прямой ссылке (https://127.0.0.1:1500/ispmgr, где 127.0.0.1 — адрес вашего сервера), используя данные для доступа к серверу, или через Инструкцию — в блоке «Панели управления» нажмите кнопку Перейти.

Чтобы добавить новый сайт в панели управления, перейдите в раздел Сайты и сверху нажмите «Создать сайт» .

В поле «Имя» укажите домен вашего будущего сайта. В примере это технический домен cms-bitrix-install.fvds.ru . После этого кликните на любом пустом месте в форме — сработает автозаполнение для остальных полей. Чтобы завершить настройки, нажмите «Создать» внизу.

Для создания базы данных в ISPmanager перейдите в раздел Базы данных и нажмите «Создать базу данных» :

В списке настроек укажите имя для новой базы, имя пользователя для доступа к ней и пароль для него. Запомните их — они потребуются при установке CMS. После заполнения всех данных нажмите «Создать» для сохранения настроек.

Скачиваем скрипт установки CMS

После добавления сайта и базы вернитесь в раздел Сайты . Выберите созданный сайт в списке, сверху «Файлы сайта» :

Сверху на панели инструментов выберите «Загрузить» :

В открывшемся окне в поле «Тип файла» выберите «URL файла на другом сервере» :

В поле URL вставьте следующую ссылку и нажмите «Загрузить» :

https://www.1c-bitrix.ru/download/scripts/bitrixsetup.php

Ссылку на архив с файлами CMS Битрикс можно найти на официальном сайте. Перейдите на сайт, в меню слева выберите «1С-Битрикс: Управление сайтом» и вариант «Скачать демоверсию» :

Ниже в разделе «Установка демоверсии» выберите вариант «На хостинг скриптом BitrixSetup» .

Запускаем установку CMS

Чтобы перейти непосредственно к установке CMS, нужно в браузере открыть загруженный скрипт. Для этого достаточно перейти по ссылке — вместо cms-bitrix-install.fvds.ru укажите ваш домен или IP-адрес сервера.

http://cms-bitrix-install.fvds.ru/bitrixsetup.php

Откроется стандартный установщик CMS Битрикс.

Большинство шагов по установке совпадают с описанными в инструкциях по автоматической установке из рецепта. За парой исключений:

  1. На этапе предварительной проверки можно столкнуться с рядом ошибок — будут выделены красным цветом: Их можно исправить позже или решить сразу. Например, при установке в примере мы столкнулись с двумя ошибками:
    • параметр opcache.revalidate_freq должен быть установлен в 0 ;
    • параметр display_errors должен быть включен ( On ).

Оба параметра относятся к настройкам PHP. В ISPmanager можно отредактировать их через интерфейс в разделе Настройки — Настройки PHP . Выберите версию, параметры которой нужно отредактировать, и сверху нажмите «Расширенные настройки» :

Здесь справа сверху в строке поиска введите название параметра — он отобразится в списке. Выберите его и сверху нажмите «Изменить» , чтобы отредактировать его значение.

  • На одном из шагов нужно будет указать доступы к созданной ранее базе данных. Вам потребуется имя и пароль пользователя базы, а также её название.
  • После завершения установки вы сможете перейти в админку установленной CMS.

    Тестируем производительность и корректируем настройки

    В административной панели сайта откройте вкладку Администрирование . Здесь сразу после установки доступны несколько опций для тестирования: проверки безопасности, производительности, качества.

    После запуска теста в случае неудовлетворительных результатов можно открыть ссылку с рекомендованными параметрами и через ISPmanager изменить соответствующие настройки.

    При этом важно помнить, что лучше всего CMS Битрикс работает на родном окружении. С помощью ISPmanager того же уровня производительности может быть трудно достичь.

    Если самостоятельно какие-то ошибки исправить не получится — напишите в службу поддержки через Личный кабинет, поможем в настройке.

    Как развернуть битрикс

    Александр Суворов
    Сложность урока:
    3 уровень — средняя сложность. Необходимо внимание и немного подумать.

    Для кого?

    «1С-Битрикс: Веб-окружение» — Linux (BitrixEnv) будет полезно:

    • Для пользователей и разработчиков, которые использовали продукт «1С-Битрикс: Виртуальная машина» в процессе подготовки сайта и столкнулись с проблемой переноса конфигурации на хостинг или на невиртуальное оборудование и потерей производительности.
    • Для специалистов хостинг-партнеров, планирующих создать шаблоны различных VPS для продуктов «1С-Битрикс».
    • Для системных администраторов, которым требуется быстро подготовить производительную платформу для установки или миграции сайтов на основе «1С-Битрикс».
    • Для программистов и системных администраторов, которым требуется быстро развернуть кластер для проектов на основе «1С-Битрикс».

    «1С-Битрикс: Веб-окружение» — Linux позволяет быстро и с минимальными затратами развернуть оптимальное окружение для работы продуктов и решений «1С-Битрикс» на Linux-платформе CentOS 7 (x86_64):

    • mysql-server 5.7.x или 8.0.x
    • web-server (Apache 2.4.*)
    • php 8.x
    • nginx 1.18.0
    • memcached
    • stunnel
    • catdoc
    • xpdf
    • munin
    • nagios
    • sphinx

    Установка
    на CentOS 7

    Рассмотрим установку «1С-Битрикс: Веб-окружение» — Linux на оборудовании с уже установленной CentOS 7 (Minimal) (x86_64).

      Авторизуемся на сервер под административным аккаунтом root и обновляем все пакеты системы:

    yum clean all && yum update
    wget https://repo.bitrix.info/yum/bitrix-env.sh && chmod +x bitrix-env.sh && ./bitrix-env.sh

    Примечание: Если на сервере нет утилиты для загрузки файлов wget, то ее можно установить командой yum install wget

  • Далее необходимо согласиться на отключение SELinux (если SELinux включен в системе) и перезагрузить машину командой reboot :
  • После перезагрузки сервера снова продолжите установку BitrixEnv:

    ./bitrix-env.sh

  • При первом входе на сервер с логином root будет предложено сменить пароль у пользователя bitrix:
  • Далее нужно создать пул (1. Create Management pool of server) и можно приступать к работе:

    • 22 – ssh доступ;
    • 80 / 443 – http / https web-сервер;
    • 8890 / 8891 – http/https ntlm;
    • 8893 / 8894 – http/https сервер мгновенных сообщений;
    • 5222 / 5223 – http/https xmpp-сервер.

    • Выйти в консоль, выбрав в меню 0. Exit (или нажать Ctrl+C)
    • И затем в консоли выполнить команду exit

    Тихая установка
    BitrixEnv

    Silent mode

    С версии 7.1 появилась возможность создания пула в «тихом» режиме, когда после установки окружения VMBitrix запускается сразу создание пула с нужным именем хоста и паролем для root MySQL.

    ./bitrix-env.sh [-s] [-p [-H hostname]] [-F] [-m mysql_version] [-M mysql_root_password]
    • -s – Тихий режим установки. Не задавать вопросы (Silent or quiet mode. Don’t ask any questions).
    • -p – Создать пул после установки окружения (Create pool after installation of bitrix-env).
    • -H – Имя хоста (Hostname for for pool creation procedure).
    • -F – Будет использоваться в качестве файрвола firewalld.
    • -I – Будет использоваться в качестве файрвола iptables (по умолчанию).
    • -M – Пароль root для MySQL (Mysql password for root user).
    • -m 5.7 – установить MySQL 5.7 (по умолчанию).
    • -m 8.0 – установить MySQL 8.0.

    Пример использования:

    Запустить установку окружения в «тихом» режиме, использовать файрвол firewalld, создать пул с именем хоста server1, MySQL 8.0 и задать пароль root пользователя MySQL — 111111.

    ./bitrix-env.sh -s -p -H server1 -F -m 8.0 -M '111111'

    Узнать список всех ключей запуска установки можно командами для VMBitrix и VMBitrix.CRM соответственно:

    ./bitrix-env.sh -h ./bitrix-env-crm.sh -h

    Как управлять
    BitrixEnv

    Для перехода к выполнению любого действия в меню виртуальной машины введите число и нажмите Enter. Например, для настройки локального виртуального сервера в строке наберите 2 (Manage localhost) и нажмите Enter.

    Чтобы вернуться из командной строки (если нажали 0. Exit или Ctrl+C) обратно в меню VMBitrix, введите в консоли команду:

    /root/menu.sh

    Работа с файлами
    в BitrixEnv

    Работа с файлами в VMBitrix осуществляется по протоколам SSH / SFTP. Протоколы FTP и SCP по умолчанию не поддерживаются.

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *