Стартовые задачи на голом VSD
Инструментарий
- Pytty + настроенное подключение с правами ROOT
- Хостинг + учетная запись
- WinCSP + настроенное подключение
- Notepad++
Подготовка пользователя
В Ubuntu крайне не рекомендуется работать под учетной записью ROOT, поэтому сначала создадим своего пользователя с правами sudo
- Посмотреть список всех пользователей: nano /etc/passwd
- Создать нового пользователя с консолью sudo useradd -s /bin/bash username
- Задать пароль пользователю sudo passwd username
- Сделать пользователя sudo usermod -aG sudo username
- Зайти под пользователем username.
- Создать домашний каталог: sudo mkdir /home/username
- Переподключиться с пользователем rush
- Пользователя добавляем в группу www-data sudo usermod -a -G www-data username
Установка ПО и обновление системы
- Получить информацию о свежих версиях пакетов: sudo apt-get update
- Установка MC: sudo apt-get install mc
- Установка tasksel: sudo apt-get install tasksel
- Установка git: sudo apt-get install git
Установка LAMP
- Запуск установки sudo tasksel install lamp-server
- Генерируем пароль mysql через http://www.onlinepasswordgenerator.ru/ — 10 знаков со спец-символами
- Заполняем пароль на доске “Информация о проектах”
- Задаем root-пароль mysql в графическом интерфейсе консоли
- Установка завершится
- Запуск Apache sudo /etc/init.d/apache2 restart
Настройка Apache
- Проверка доступности по ip — в браузере в качестве адреса IP сервера. Если все ок — покажет страницу Apache
- Создаем копию файла конфигурации Apache
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/yoursite.conf - Подключаемся к серверу через root учетку по WinCSP
- Создаем папку сайта через WinCSP или консоль
- Создаем в папке сайта тестовый index.html
- Правим файл /etc/apache2/sites-available/yoursite.conf
ServerAdmin [email protected]
DocumentRoot /var/www/yoursite
ErrorLog /var/www/yoursite_error.log
CustomLog /var/www/yoursite_access.log combined
- Деактивация старого сайта sudo a2dissite 000-default
- Активация нового сайта sudo a2ensite yoursite
- Рестарт Apache sudo service apache2 restart
- Если все ОК — то при переходе на ip — отобразится наша тестовая страница.
- /etc/apache2/apache2.conf
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
Настройка модулей Apache
- sudo apt-get install php-mbstring
- sudo phpenmod mbstring
- sudo phpenmod mcrypt
- sudo a2enmod rewrite
- sudo a2enmod ssl
- sudo service apache2 restart
Установка phpmyadmin
- sudo apt-get install phpmyadmin php-mbstring php-gettext
- sudo service apache2 restart
Настройка Mysql
- В файле /etc/mysql/conf.d
[mysqld]
sql_mode=ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVI
SION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION - sudo service mysql restart
Настройка прав доступа
- Нам нужно установить владельца/группу для корневого каталога (и любых внутренних директорий и файлов): sudo chown -R www-data:www-data /var/www
- Чтобы никто кроме текущего пользователя (www-data) не имел доступа к содержимому директории web-root. sudo chmod go-rwx /var/www
- Далее нужно разрешить пользователям из той же группы (и ‘other’) открывать директорию /var/www sudo chmod go+x /var/www
- Далее изменяем права доступа всех директорий и файлов в корневом каталоге для той же группы (www-data): sudo chgrp -R www-data /var/www
- C помощью команд chmod сделайте так, чтобы только один пользователь мог осуществлять доступ к контенту: sudo chmod -R go-rwx /var/www
- Сделайте так, чтобы любой пользователь из той же группы мог читать/записывать и выполнять директории и файлы в корневом каталоге на сервере: sudo chmod -R g+rx /var/www
- Лично я дал группе право записывать – это нужно для тех пользователей, которые редактируют контент. Выглядит это следующим образом: sudo chmod -R g+rwx /var/www
Настройка php
/etc/php/7.0/apache2/php.ini после изменения — рестарт апача и проверка через phpinfo.php
- short_open_tag = On
- mbstring.internal_encoding = UTF-8
- mbstring.func_overload = 2
Перенос сайта на Bitrix. Подготовка к развертыванию резервной копии.
Часто сервер носит имя домена, который на нем будет крутиться. Это порождает такую проблему: ping с VDS сервера на домен идет на 127.0.0.1, а для развертывания копии надо по имени домена стучаться на «хостинговый» IP адрес.
Для правки в файле /etc/hosts VDS сервера прописываем строчку вида
87.236.16.31 yoursite.ru
И комментим строчку вида
127.0.1.1 yoursite.ru yoursite
чтобы она выглядела так:
# 127.0.1.1 yoursite.ru yoursite
сохраняем и запускаем проверку
ping yoursite.ru
После разворачивания резервной копии возвращаем все как было! Иначе при изменении правок — будут вноситься правки на “старый” боевой сайт.
Подготовка резервной копии на боевом
- Проверить свободное место на боевом через хостинг, если места мало — временно увеличиваем дисковую квоту
- Создаем полную резервную копию Bitrix на боевом
- Оттуда же качаем файл restore.php
- Размещаем его в корне папки сайта
- Запускаем по IP http://yourip/restore.php
- Действуем по запросам системы.
- Ждем развертывания.
Подготовка перенесенного сайта
- Заходим по IP в VDS в админку Bitrix
- Смотрим http://yourip/bitrix/admin/site_checker.php?lang=ru
- Если все ОК — идем дальше.