Vvmebel.com

Новости с мира ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Настройка сервера для хостинга

Как настроить VPS сервер на Linux Debian для хостинга сайта

Не устраивают возможности виртуального хостинга? Развивающийся веб-проект требует больше ресурсов? Оптимальное решение для молодых, но весьма перспективных сайтов, набирающих популярность в сети – переход с обычного хостинга на VPS.

VPS/VDS (англ. Virtual Private/Dedicated Server) – виртуальный сервер. Как правило, в рамках подобной услуги в распоряжение клиент получает часть аппаратных ресурсов физического сервера (конфигурация и производительность зависит от выбранного тарифа). Это качественный скачок в развитии онлайн ресурса.

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

Однако, аренда виртуального сервера – это и самостоятельная настройка, и оптимизация программного обеспечения. Не стоит пугаться, не так страшен черт, как его малюют. В этой статье вы узнаете, как правильно установить нужное ПО и обеспечить стабильную работу веб-сервера. Все настройки приведены для платформы Linux Debian — одной из самых надежных операционных систем, способной обеспечивать высокую производительность при минимальном потреблении ресурсов.

Оптимальная конфигурация VPS сервера для сайта

Основная проблема виртуальных хостингов заключается в том, что на одном физическом сервере может располагаться сразу до 50-100 сайтов. Расчет делается на то, пользователи посещают веб-сайты в разное время, и нагрузка равномерно распределяется на протяжении дня. Теоретический каждый сайт должен успешно справляться с несколькими тысячами пользователей в день, однако, достаточно часто на практике дела обстоят иначе.

Популярные ресурсы занимают оперативную память, а некоторые веб-приложения могут отобрать существенную часть вычислительных ресурсов, в результате существенно увеличивается время загрузки малоактивных проектов. Когда же наступает час-пик, сервер попросту не справляется с резко возросшей нагрузкой и, в лучшем случае, большинство, а в худшем – все сайты и веб-приложения, расположенные на данном сервере, оказываются недоступны.

Аренда виртуального сервера решает данную проблему. Вы получаете часть ресурсов оборудования, на которые не может претендовать никто кроме вас, а значит даже в час пик сайт будет стабильно работать, а во время простоя оперативную память или процессорное время не займет другое приложение. Но какую конфигурацию выбрать?

Небольшой развивающийся проект

Если вы переходите с виртуального хостинга или только запускает проект, к которому выдвигаются высокие требования в плане надежности, достаточно минимальных характеристик:

  • 512 Мб оперативной памяти;
  • 5 — 10 Гб свободного дискового пространства;
  • 1,5 — 2 ГГц вычислительной мощности.

Ресурсов достаточно для эффективной обработки до 10 000 пользователей в сутки. Впрочем, при грамотной оптимизации многим вебмастерам удается добиться результата в 20-25 тысяч посетителей. В дальнейшем с ростом числа пользователей можно перейти на более дорогой тариф, существенно расширив возможности системы.

Активно развивающийся портал, форум, небольшой интернет-магазин

  • 1-2 Гб оперативной памяти;
  • 20 — 30 Гб HDD; — 2 ядра по 2
  • 25 ГГц.

Решение для популярных сайтов, новостных порталов, блогов с количеством посетителей до 20-30 тысяч пользователей в сутки.

Успешный сайт, небольшой игровой сервер (Minecraft, Mu, Lineage и др.)

  • от 4 Гб RAM;
  • 30-50 ГБ HDD;
  • 2-3 ядра по 3 – 3,5 ГГц.

Оптимальное решение для успешных веб-проектов с количеством посетителей, достигшим 50 тысяч пользователей. Аппаратной части достаточно для обработки мультимедиа контента, создания серверов для онлайн-игр.

Характеристики приведены для дистрибутивов Linux Ubuntu и Debian. Они отличаются стабильной работой, обеспечивают высокую производительность при минимальном потреблении ресурсов.

Подключение к серверу по SSH

Для подключения к VPS-серверу используется протокол SSH. Это защищенный протокол (Secure Shell – защищенная оболочка), предназначенный для удаленного управления операционной системой, программным обеспечением и передачи файлов. SSH использует надежные алгоритмы шифрования данных, обеспечивая безопасное соединения с сервером.

Для работы протокола SSH необходим сервер, устанавливаемый на управляемой машине, и клиент. Управление VPS/VDS сервером осуществляется посредством командной строки.

Существует достаточно много клиентских программ для различных операционных систем. Самые простые, надежные и популярные: Bitvise SSH Client и PuTTY. На примере последней мы и разъясним процесс подключения.

Для начала нужно скачать на свой компьютер клиент (в нашем случае PuTTY). Русскоязычная версия доступна здесь. Приложение имеет приблизительно такой вид:

В соответствующем поле («Host Name» или «Имя хоста») вводим предоставленный IP-адрес виртуального сервера, устанавливаем переключатель «connection type» возле SSH, «PORT» оставляем 22, «Saved Sessions» — произвольное название сессии. Теперь нужно нажать внизу окна кнопку «OPEN» (или «Соединиться»).

Открывается консоль, напоминающая командную строку Windows. Система просит ввести логин, по умолчанию – root.

Обратите внимание! Root – это суперпользователь с наивысшими правами доступа в Linux, аналог администратора в Windows. В дальнейшем для каждого сайта можно создать отдельного пользователя с ограниченными правами.

Теперь вводим пароль (можно вставить заранее скопированный (в PuTTY – щелчок правой кнопкой мыши), нажимаем Enter .

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

Где polzovatel – имя, которое можно задать произвольно.

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

Теперь нужно разрешить новому пользователю выполнять команды с правами суперпользователя с помощью утилиты sudo , однако, сначала данную утилиту необходимо установить.

Обратите внимание! sudo – утилита, позволяющая обычному пользователю заниматься администрированием системы с правами суперпользователя (root). Вводится sudo в начале команды.

Установка любого программного обеспечения в Linux-операционных системах начинается с обновления индекса пакетов. В процессе обновления индекса пакетов ваша операционная система связывается с репозиторием (хранилищем большинства программного обеспечения для вашего дистрибьютива) и «узнает» о последних версиях программного обеспечения и взаимозависимостях различных программных пакетов.

После обновления индекса устанавливаем утилиту sudo :

Теперь непосредственно наделяем polzovatel правом применять команду sudo :

Теперь можем войти и продолжить настройку системы под новым пользователем. Вводим команду:

Где хх.ххх.xx.xx – IP адрес сервера.

Нас спрашивают, желаем ли мы соединиться. Набираем в консоли yes , жмем Enter .

Полезные команды, которые пригодятся в работе с командной консолью:

  • ls –lha – показать список имеющихся файлов, загруженных на сервере, включительно с данными о размере и правах доступа;
  • cd [имя каталог] – перейти к указанному каталогу;
  • mv – изменить имя/переместить;
  • rm – удалить;
  • cp – копировать;
  • chmod – установить права доступа к фалу или каталогу;
  • cat – показать содержимое файла;
  • mc – запустить встроенный менеджер файлов, напоминающий Нортон.
  • mkdir [произвольное_имя] – создать новый каталог.

Теперь можно приступать к установке необходимого программного обеспечения.

Установка и настройка LAMP

Чтобы запустить и настроить веб-сервер необходимо установить базовый набор программного обеспечения: LAMP (Linux+Apache+MySQL+PHP). Запускаем инсталляцию пакета LAMP и панели phpMyAdmin:

Откроется диалог, в котором нам попросят подтвердить начало установки указанных пакетов, подтверждаем – жмем клавиши Y и Enter .

В очередном диалоге задаем пароль для базы данных MySQL (в дальнейшем его можно изменить):

Для подтверждения вводим повторно пароль:

Дальше система запрашивает тип веб-сервера для автоматической настройки phpMyAdmin – выбираем apache2:

При открытии очередного диалога соглашаетесь ( Y и Enter ) с применением стандартных настроек phpMyAdmin и автоматическим созданием служебной базы данных:

Задаете пароль для phpMyAdmin и повторяете ввод:

Теперь нужно откорректировать конфигурацию Apache. Открываем файл с настройками:

После открытия на новой строке в конце документа вводим:

Теперь для выхода из редактора нажимаем Ctrl+X , потом соглашаемся сохранить изменения — Y и Enter .

Добавляем сайты на VPS сервер: настройка Apache и DNS

Apache позволяет создать бесконечное количество виртуальных хостов, вследствие к одному IP можно привязать множество сайтов. Но не стоит забывать об аппаратных ограничениях. Процесс размещения нескольких сайтов на одном VPS/VDS сервере разделяется на несколько этапов.

Первый этап: создаем отдельные каталоги для сайтов

Создаем каталоги, к которым будет обращаться Apache. В них будут храниться файлы ваших сайтов и веб-приложений. Вводим в командной консоли:

mkdir – команда «создать каталог (папку), параметр «-p» задается для рекурсивного создания папок: сначала появляется каталог «mysitename1.org», потом каталог «public» – в нем и будет храниться контент веб-ресурсов, которые вы планируете разместить. «/var/www/» — путь, по которому будут создаваться новые директории. Название папок можно задать произвольное.

Обратите внимание, Apache имеет доступ только к каталогу /var/www, а также ко всем вложенным в него папкам и файлам.

Второй этап: устанавливаем права

По умолчанию права на директории принадлежат root-пользователю. В целях безопасности, а также если сайт создается для сторонних лиц, нужно обозначить владельцев. Для этого вводим команды:

polzovatel – это имя пользователя, которому присваиваются права доступа к каталогам public_html, содержащим файлы сайта.

Читать еще:  Различных политик для паролей в домене 2020

Редактируем права доступа:

Обратите внимание! В Linux-системах права доступа задаются цифрами для всех типов пользователей: создателя файла/директории, пользователей группы владельца, других пользователей.

Установка и настройка веб-сервера для сайта в Ubuntu

Автор: Сергей Никонов

Настройка веб-сервера для разработки сайта на PHP в операционной системе Ubuntu — это задача, с которой должен уметь справиться веб-разработчик. В этой статье мы разберемся как установить и настроить LAMP-сервер (Linux, Apache, MySQL, PHP) для ваших сайтов.

Что такое LAMP

LAMP расшифровывается как Linux, Apache, MySQL, PHP. Связка технологий Apache, MySQL, PHP необходима для того, чтобы запустить веб-сайты как собственной разработки, так и сайты на популярных CMS: WordPress, Joomla, Prestashop, Drupal и прочих.

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

Установка Apache

Apache — это веб-сервер с открытым исходным кодом. Работу веб-сервера можно описать так: На каждый запрос, веб-сервер отдает ответ в зависимости от запроса.

Иными словами, по аналогии, если вы обратитесь с каким-либо вопросом к человеку, он вам ответит или не ответит.

Но если вы зададите ему вопрос, на который он не может ответить, человек ответит вам не знаю. По аналогии работает и наш веб-сервер Apache.

Для того, чтобы установить веб-сервер Apache, введите команду в терминал:

sudo apt-get install apache2

Что такое команда sudo и зачем она нужна, вы можете прочитать в этой статье.

После установки Apache, для проверки работоспособности веб-сервера, введите в браузере ip адрес сервера.

Если вы устанавливали Apache сервер на локально, например на ваш домашний компьютер, введите в браузере 127.0.0.1 и вы должны увидеть страницу приветствия веб-сервера Apache.

Установка PHP

Для того, чтобы установить PHP на ваш сервер, необходимо выполнить команду:

sudo apt-get install php5 php5-common libapache2-mod-php5 php5-cli php5-cgi php5-mysql

В данной статье мы не будем подробно останавливаться на названиях устанавливаемых пакетов, которые мы устанавливаем вместе с пакетом php5, поэтому двигаемся дальше.

После выполнения команды выше, введите в терминале php -v и вы должны удивить версию php:

$ php -v
PHP 5.5.9-1ubuntu4.11 (cli) (built: Jul 2 2015 15:23:08)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies

Если вы у себя это видите в терминале, это значит, что php установлен.

Установка MySQL

MySQL — это база данных, в которой хранятся данные вашего сайта. SQL — это язык запросов к базе данных MySQL. Подробнее о языке запросов SQL вы можете почитать в этой статье.

Установка MySQL на ваш с сервер с Ubuntu/Linux очень простая. Для установки введите команду:

sudo apt-get install mysql-server mysql-client

В процессе установки MySQL вас попросят ввести пароль для пользователя root в MySQL, затем попросят ввести пароль для root пользователя MySQL повторно.

Будьте внимательны, перед вводом запишите пароль.

В данной статье мы установили не только MySQL сервер, но и консольный MySQL клиент. Для удобства работы с MySQL давайте установим графический веб-клиент к MySQL — PhpMyAdmin.

Для установки PhpMyAdmin введите команду:

sudo apt-get install phpmyadmin

В процессе установки PhpMyAdmin вам предложат настроить связку веб-сервера и phpmyadmin автоматически. На этом шаге выберите автоконфигурацию для веб-сервера apache2.

На следующий вопрос о конфигурации ответьте Yes. После этого вас снова попросят ввести пароль к пользователю root.

После этого, установка и настройка phpmyadmin будет завершена. Для проверки работоспособности phpmyadmin введите в браузере ip адрес вашего веб-сервера и после слеша допишите phpmyadmin.

Если вы устанавливали phpmyadmin на локальный сервер, введите в браузере:

В результате вы увидите страницу авторизации phpmyadmin:

Введите root и пароль, который вы задавали в процессе установки MySQL и вы войдете в phpmyadmin.

Настройка конфига веб-сервера Apache для работы на домене

Очень часто простой установки веб-сервера Apache бывает недостаточно, если вы хотите разрабатывать сайт и просматривать его так, как будто он находится в интернете и доступен по вашему доменному имени, например superdomain.com.

Давайте настроим конфиг Apache2 для того, чтобы это реализовать.

Первое, что вам нужно сделать — это создать каталог для вашего сайта на сервере. Для этого перейдите в базовый каталог сайтов apache:

После этого создайте каталог для вашего сайта:

sudo mkdir superdomain

Для того, чтобы мы могли вносить изменения в каталог superdomain, нам нужно изменить владельца каталога с пользователя root на вашего пользователя.

Для этого введите в терминале команду:

А после этого команду:

sudo chown -R user:user superdomain

Последней командой мы поменяли владельца и группу каталога superdomain на вашего пользователя (вместо user:user напишите имя вашего пользователя)

Затем перейдите в созданный каталог superdomain и создайте в нем файл index.php и php скриптом.

Для этого в терминале введите команду:

и введите команду:

после этого вставьте php скрипт, например с таким содержимым:

Для того, чтобы сохранить изменения в редакторе nano, нажмите сочетание клавиш ctr+x и букву y, затем enter.

Команды Linux описаны в этой статье.

А сейчас мы настроим конфиг веб-сервера apache2.

Для этого введите команду:

sudo nano /etc/apache2/sites-available/superdomain.com.conf

и вставьте этот текст:

После этого нажмите сочетание клавиш ctr+x и букву y, затем enter.

В этом конфиге мы создали указали пути к директории нашего сайта superdomain, указали название домена, правила, email веб-мастера, если пользователь будет видеть ошибку, пути к лог файлам apache и другие настройки.

После этого нам необходимо перейти в каталог apache :

и выполнить команду:

sudo a2ensite superdomain.com.conf

Если все сделали правильно после ввода этой команды вы должны увидеть это:

Enabling site superdomain.com.
To activate the new configuration, you need to run:
service apache2 reload

Для применения нового конфига apache для нашего сайта superdomain.com введите команду:

service apache2 reload

Если после запуска команды выше, веб-сервер apache2 не будет ругаться на ошибки, значит вы все сделали правильно и остался последний шаг, чтобы запустить наш сайт с домена superdomain.com.

Если у вас нет понимания команд которые вы вводите в терминал Linux, прочитайте статью о Bash командах.

Последнее изменение которое необходимо внести, для запуска сайта на домене superdomain.com, прописать в файле hosts ip-адрес сервера(в данном примере веб-сервер локальный) и название домена superdomain.com:

Файл hosts находится в Linux:

В операционной системе Winodows, файл hosts находится:

Все готово! Сохраните файл hosts и в браузере введите

В результате вы должы увидеть php вывод страницы index.php из каталога superdomain.

Выводы

В данной статье мы настроили LAMP сервер в операционной системе Ubuntu. Аналогично, вы можете создавать каталоги и конфиги apache2 для других ваших сайтов.

Мы показали базовые настройки LAMP. А если ваш проект перерастет во что-то большое, вы можете купить VDS сервер, от компании Timeweb с Ubuntu на борту и произвести настройку LAMP в нем.

В следующих статьях мы рассмотрим расширенные настройки PHP, Apache, MySQL и то, как настройть WAMP(Windows, Apache, PHP, MySQL).

Оставайтесь с нами и следите за новыми публикациями в нашей группе VK.

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

Настройка хостинга на RU-Center (nic.ru)

Paramtamtam · 2016.1.22 · 11 min

Так уж сложилось, что время от времени приходится поднимать сайты на хостинге руцентра. Как правило это небольшие сайты-визитки или проекты, для которых реализация на дедике характеризуется как “жирно будет”.

Итак, отбросим причины в сторону. Первым делом — что нам понадобится для того чтоб всё сделать “под ключ”, т.е. владельцем домена/хостинга был заказчик (как физ.лицо), а ты был лишь лицом, которое выполняет работу? От заказчика тебе потребуется:

  • Фотографии/сканы разворота паспорта и страницы с пропиской;
  • Логин/пароль от почтового ящика, который будет фигурировать при регистрации;
  • Необходимая сумма денег для оплаты требуемых услуг.

Вопрос: При регистрации домена может сразу встать вопрос — делегировать домен на руцентр или, например, сразу же на DNS-хостинге от Яндекса?

Ответ: На руцентр. Так как для делегирования на Яндекс потребуется подтвердить права на владение доменом. И проще всего это сделать с помощью проверки наличия определенного файла с кодом в корне сайта. Поэтому — смело всё делай по дефолту, потом переделегируем, если потребность такая возникнет.

Сразу скажу — если “с сайта” будут отправляться письма и при этом хостить DNS у Яндекса — возникнут проблемы с отправкой писем. DKIM настроить на Яндекс будет невозможно, а у руцентра он принципиально не настраиваемый. Поэтому считай это тонкостью использования руцентра в целом.

Итак, считаем что аккаунт у нас заведен, домен — зарегистрирован, хостинг — заказан. Не забудь а Личных данных приложить сканы/фотографии паспорта клиента для верификации личности, так правильнее будет.

Читать еще:  Что значит хост процесс для служб windows

Настройка почты

Переходим “Панель управления” → “Почтовый сервер”. Выбираем наш почтовый домен (должен быть создан автоматически; в противном случае создаем его с именем основного домена). Первым делом лезем в “Почтовые ящики” → “[email protected]_domain.ltd”, и добавляем синонимы к ящику вида [email protected] [email protected] [email protected] [email protected] . Таким образом все “важные” письма будут первым делом попадать именно на этот ящик, а владелец сайта сможет написать на своих визитках “клёвый” почтовый адрес [email protected]_domain.ltd 🙂 Так же заходим в интерфейс самого почтового ящика (нажимаем на его адрес вверху страницы) и настраиваем переадресацию всех входящих писем на email-адрес заказчика.

Далее “Панель управления” → “Почтовый сервер” → “Параметры”, и в поле “Обработка нераспознанной почты” вводим [email protected]_domain.ltd . Таким образом письма, отправленные на несуществующий ящик (_например blabla@yourdomain.ltd) будут уходить на [email protected]_domain.ltd , а оттуда — нашему заказчику. Если же будут заведены дополнительные адреса (например — для сотрудников нашего заказчика) — ничего перенастраивать не придется.

Настройка СУБД

Настройку СУБД производить в соответствии с используемой системой управления контента. Рекомендую “выключать” все привилегии для пользователя, которые ему критически не важны. В идеале ему должно хватать лишь INSERT UPDATE SELECT и DELETE . Но это лишь в идеале. Ещё раз — тут смотри сам.

Больше особо интересных моментов в настройке для хостинга нет.

Настройка Веб-сервера

Вот тут самое пожалуй интересное. Первым делом мы осуществляем “преднастройку” в веб-интерфейсе панели управления. Если используешь CMS “WordPress”, то для тебя подойдут почти все настройки что идут “по умолчанию”, но не все. Для других CMS — надо смотреть более детально и отдельно.

Выключаем WP_CRON для WordPress

В WordPress Есть такая штука как WP_CRON, которая позволяет выполнять “отложенные” действия, такие как отложенная публикация постов, проверка наличия обновлений и прочие весьма полезные штуки. Но это довольно тяжелая задача, надо признать, и выполнять её при каждом посещении пользователя/администратора сайта — иметь лишнюю задержку. Что мы делаем чтоб ситуацию исправить? Мы выключаем WP_CRON в WordPress путем добавления строки:

В wp-config.php , и добавляем отдельную задачу в “Панель управления” → “Веб-сервер” → “Планировщик заданий” с именем, например — “wp cron” и выполняемой командой:

Теперь пользователи не будут ощущать задержку, а все задачи крона WP будут выполняться “в фоне” с заданным интервалом (выставь “Каждые 5 минут”).

Настраиваем модули

Переходим в “Управление модулями”. Здесь нам необходимо выполнить предварительную настройку как веб-сервера (Apache, а точнее просто указать какие модули ему загружать), выбрать используемую версию php (не знаю почему, но я всё ещё пользуюсь версией 5.3 ), и указать необходимые параметры для php, такие как кодировка (выставляй везде UTF-8), максимальный размер загружаемого файла, и модули php (выставляй их в соответствии с требованиями сайта).

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

Перевод сервера в ручной режим

Это необходимо для того, чтоб выполнить более тонкую настройку, недоступную из веб-интерфейса. Для перевода работы веб-сервера в ручной режим переходи в “Панель управления” → “Веб-сервер” и в графе “Режим настройки” жми на “Ручной”. После этого действия будут созданы конфиги на основе тех настроек, которые мы выполнили ранее.

Теперь цепляемся к хостингу по ssh (реквизиты для соединения указаны в “Панель управления” → “Помощь”), и все дальнейшие настройки будем выполнять только в нем.

Настройка nginx

Первым делом нам необходимо настроить:

  • Отдачу статического контента с помощью nginx
  • Включить его сжатие с помощью gzip
  • Настроить его хранение на стороне клиента (вместо того, чтоб каждый раз скачивать его с нашего сервера)

Для этого выполняем в консоли:

И смотрим как у нас был настроен nginx в автоматическом режиме. Он отдавал статику, но сжатие и хранение статики на стороне клиента — отсутствует. Испраляем-с 🙂 Копируем из этого конфига все location -ы (в моем случае это были location / , location

* ^.+.(jpg|jpeg|gif|. и location @fallback ) в конфиг

/etc/nginx/nginx.conf , вставляя их в секцию server <. >. Сделать по образу и подобию не думаю что составит трудность.

Для включения gzip-сжатия статики необходимо в секцию http <. >добавить:

Добавить можно в принципе в любом месте перед началом секции server <. >. Теперь статика будет отдаваться значительно быстрее 🙂

Для того чтоб она лишний раз не загружалась с сервера, а хранилась на стороне клиента мы немного подправил location который отвечает за отдачу статики, а точнее добавим в него строку expires 30d; , чтоб получилось примерно следующее:

Так же приведу для сравнения полный листинг получившегося у меня конфига:

Теперь перезапускаем nginx и проверяем чтоб всё работало как надо с помощью, например, PageSpeed Insights:

Настройка apache

Конфиг Apache теперь храниться по пути

/etc/apache_2.4/httpd.conf , и для его перезапуска необходимо будет выполнить команду:

Всё что нам необходимо сделать здесь — это добавить 2 строки перед секцией : ServerTokens Prod и ServerSignature Off , которые запрещают вывод сигнатур сервера. Если тебе потребуется ещё что-то настраивать у Apache — то делай это в этом файле.

Настройка php

Для того, чтоб веб-сервер Apache начал читать именно наш конфиг, а не тот что лежит в директории

/etc/ — нам необходимо скопировать соответствующий в домашнюю директорию. Поясню — например, мы используем php версии 5.3 . Смотрим в

Конфиг есть, но писать в него мы соответственно не можем. Копируем его в домашнюю директорию под именем php.ini :

И добавляем в него строку expose_php=Off , которая скроет версию используемого php и заголовках ответов веб-сервера. Перезапускаем Apache:

И проверяем чтоб всё работало, но ничего лишнего наружу “не светилось”.

Настраиваем резервное копирование

Хоть администраторы хостинга и выполняют резервное копирование — но лишней копия всё же не будет. Хранить мы будем бэкапы 31 день (все настройки указываются в начале скрипта), не забудь указать настройки ID хостинга (т.е. названия твоей домашней директории) и реквизиты для подключения к mysql базе примерно в 84 строке скрипта (+ там же проверка на наличие итогового бэкапа бд):

По итогу его выполнения у нас должна появиться директория

Сам себе админ. Учимся настраивать VDS и переносить сайты

Содержание статьи

В интернете сегодня можно не только развлекаться, но и учиться, работать и зарабатывать. Количество сайтов растет ежесекундно, услуги хостинга также становятся привлекательными и множатся как грибы после дождя. Бывает, что хостер оправдывает все ожидания, но иногда приходится и переезжать. Можно нанять фрилансера, но лучше научиться делать это самому. Сегодня тебя ждет небольшая инструкция именно на этот случай.

Постановка задачи

Ситуация самая жизненная. Интернет-магазин, размещенный на шаред-хостинге, после запуска начал получать клиентов, но появились пожелания к функциональности, и разработчики активно занялись доработкой сайта. Выяснилось, что, когда в этом участвует несколько человек, постоянно копировать файлы через FTP для теста, да и еще на рабочий сайт, очень проблемно. Терялся контроль, кто когда что сделал, нужно было беспокоиться о сохранении оригинальных файлов, чтобы было легко откатиться. Владельцу приходилось или согласовывать правки, или копировать все самому. Разработчик не мог сразу посмотреть результат и ждал. Процесс сильно тормозился. В итоге пришли к тому, что нужно использовать возможности Git и создать новый сайт-зеркало, где можно было бы все обкатывать. При такой схеме разработчик мог сразу тестировать код, а в случае одобрения код переносили в master и выкладывали уже на рабочий сайт. Также можно легко отслеживать коммиты.

Вторая проблема: хостинг постоянно падал. Причину в итоге нашли: Entry processes limit — параметр, который определяет количество CGI/PHP-процессов, входящих внутрь виртуального контейнера, и о котором не сильно любят говорить маркетологи хостера. На графиках его тоже не видно, только маленькая графа в таблице. В итоге при небольших нагрузках CPU и RAM (не более 20%) сервер вообще не работал даже при минимальном количестве посетителей. В итоге было принято решение переезжать.

Первоначальные настройки сервера

OC в VDS устанавливается автоматически. Достаточно выбрать версию и вариант с веб-панелью или без и чуть подождать, пока не придет письмо с данными для входа. На хостингах предлагаются и разные веб-панели. Когда этот материал создавался, Vesta не поддерживала Ubuntu 16.04 и необходимости в ней не было, поэтому выбрали чистую систему. Все дальнейшие действия ведутся от имени root. Первым делом проверяем локаль, часовой пояс и время. Вообще, веб-приложения обычно не обращают внимания на некоторые системные настройки, но иногда попадается именно тот случай, поэтому лучше сразу сделать все правильно.

Если в ответ получаем отличное от ru_RU.UTF — перенастраиваем.

Если часовой пояс не соответствует — переконфигурируем.

Теперь можем ставить сервисы.

Настраиваем часовой пояс

Ставим веб-сервер

Несмотря на их разнообразие, выбор установки обычно сводится к трем вариантам: Apache, nginx или nginx как реверс Apache. Apache очень гибок в настройках и использует модули для обработки динамических запросов, поэтому хорошо справляется с динамикой. Nginx хорош в отдаче статики и потребляет меньше ресурсов, но для обработки динамики использует сторонний модуль, что снижает скорость и чуть усложняет настройки. В зависимости от конкретного приложения каждый из них может иметь свои плюсы и минусы и показывать разную скорость. Поэтому окончательный выбор веб-сервера всегда приходится подтверждать практикой, подбирая оптимальный вариант. Проблема nginx — то, что в некоторых специфических движках следует вручную возиться с редиректами, когда на Apache все будет работать буквально из коробки, достаточно просто включить mod_rewrite.

Нагрузочное тестирование можно произвести при помощи ab (Apache Benchmark, входит в apache2-utils) или siege. Причем лучше проверить с localhost и удаленного узла, чтобы видеть, как работает сеть.

Хотя ab — это скорее для себя, чтобы оценить эффективность установок. Человека со стороны обычно интересует только то, что показывает Google PageSpeed, поэтому ориентироваться следует и на него.

В последнем случае сайт на старом хостинге давал 60, после переноса на VDS (с такими же параметрами) он в Apache в установке по умолчанию показывал 72, nginx с голым конфигом — 62, после добавления сжатия — 78. На этом и остановились, выбрали nginx. В репозитории несколько пакетов, для большинства ситуаций достаточно базового core, содержащего все основные модули, для PHP нам понадобится FPM.

Файл в общем стандартный, но для скорости добавим кеширование и сжатие. Точные параметры в каждом случае необходимо подбирать опытным путем, но для небольших и средних проектов таких установок обычно бывает достаточно. В nginx.conf добавляем или, если повезло, снимаем комментарии в секции http:

Создаем настройки для домена:

Это общий пример для стандартного движка. Некоторые движки вроде OpenCart или WebAsyst требуют специфических настроек, и даже не всегда работает то, что предлагается в Сети.

Проверяем, работает ли сжатие. Это можно сделать, просмотрев заголовок Content-Encoding в Firebug (он должен показывать gzip), или при помощи специального сервиса.

Но работать еще не будет. Нужно настроить PHP. Для FPM все установки находятся в /etc/php/7.0/fpm. Проверяем, что в pool.d/www.conf учетная запись совпадает с используемой nginx и включен сокет.

Кроме этого, можно обратить внимание на параметры, определяющие количество процессов, которые будут обслуживать PHP-запросы.

На чуть загруженных серверах может не хватать количества процессов. В логах об этом сразу скажут.

Еще важный файл php.ini. Параметров там много, и можно рассказывать долго. Но изначально следует включить сжатие, установить максимальный размер файла на аплоад, подключить mail(), сессии и очень желательно включить акселератор OPcache.

Обязательно проверяем права доступа на /var/lib/php/sessions, чтобы туда мог писать nginx, иначе сессии не будут образовываться. Перезапускаем.

Теперь перенос сайта. Если переносим с другого хостинга, то там создаем бэкап. Если есть хостинговая веб-панель, то можно использовать ее возможности. Или вручную:

И на новом месте распаковываем:

Но для сайта нам нужна СУБД.

Проверяем сжатие отдаваемых веб-сервером данных

Ставим MySQL

C MySQL все очень просто. Вводим

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее

Настройка PHP

Что такое PHP?

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

  1. Настройка PHP
  2. Все о файле php.ini
  3. Как изменить версию PHP?
  4. Использование PHP на html-страницах
  5. Вывод PHP-ошибок

Как узнать настройки PHP на хостинге?

1 способ

Поискать в панели управления хостингом. Т.к. единого алгоритма как найти настройки нет, и не у каждого хостера такая возможность есть, то можно либо искать раздел «Конфигурация PHP», «Настройка веб-сервера» (или что-то подобное), либо обратиться в службу поддержки, либо использовать второй способ.

2 способ

Создать PHP-файл (например myphpinfo.php), а в него записать код:

Затем загрузить этот файл на сервер, где находится ваш сайт (например в корневую директорию). И через браузер запустить его (в браузере ввести URL http://yoursitename.com/myphpinfo.php).

Результатом этой операции должен стать вывод настроек:

Как изменить настройки PHP?

Менять настройки можно через интерфейс в панели управления хостингом, или же в файле php.ini. Как правило вебмастера меняют настройки именно из файла php.ini (т.к. если это делать через панель управления, то все равно все изменения записываются в файл php.ini). О том как и какие настройки можно изменить мы написали отдельную статью.

Юзеры ( 3 ) оценили на 3.3 из 5

Настоятельно рекомендуем не покупать слишком дешевый хостинг! Как правило с ним очень много проблем: сервер иногда не работает, оборудование старое, поддержка долго отвечает или не может решить проблему, сайт хостера глючит, ошибки в регистрации, оплате и т.д.

Также мы собрали тарифы от тысяч хостеров, чтобы вы могли выбрать хостинг по конкретной цене.

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

Виртуальный хостинг — подходит для большинства проектов начального уровня с посещаемостью до 1000 человек в сутки. В таком хостинге мощность сервера делится между несколькими хостинговыми аккаунтами. Услуга проста в настройке даже для новичков.

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

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

Размещение и обслуживание вашего собственного сервера в дата-центре хостинга — это не очень популярная услуга и требуется в исключительных случаях.

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

Тестовый период — предоставляется хостером бесплатно на 7-30 дней, чтобы вы могли удостовериться в его качестве.

Moneyback — период на протяжении которого хостер обязуется вернуть деньги, если вам не понравится хостинг.

Означает какая операционная система установлена на сервере хостинга. Мы рекомендуем размещать на серверах с Linux, если нет особых требований у разработчиков сайта.

Абузоустойчивый хостинг — компании, которые разрешают размещать практически любой контент, даже запрещенный (спам, варез, дорвеи, порнографические материалы). Такие компании не удаляют контент вашего веб-сайта при первой же жалобе (“абузе”).

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

Безопасный хостинг — тот, где администрация постоянно обновляет ПО установленное на серверах, устанавливает базовую защиту от DDoS-атак, антивирус и файерволлы, блокирует взломанные сайты и помогает их «лечить».

Защита от DDOS — компании, которые предоставляют хостинг с защитой от DDoS-атак. Такие пакеты ощутимо дороже обычных, но они стоят своих денег, так как ваш сайт будет защищен от всех видов сетевых атак.

На языке программирования PHP и базах данных MySQL сейчас работает большинство сайтов. Они же поддерживаются практически всеми современными хостингами.

ASP.NET — платформа для разработки веб-приложений от Майкрософт.

От панели управления зависит ваше удобство в настройке хостингесайта.

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

Ссылка на основную публикацию
Adblock
detector