Как настроить сервер на хостинге?

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

Пусть виртуальный сервер будет в Нидерландах, а не в Москве, но по крайней мере никто не будет меня доссить. И не будет у меня 600 соседей, из-за которых мои сайты регулярно виснут. И никто так просто не взломает меня, так как у меня не будет даже FTP на сайте, а только SSH.

Я тут недавно описывал VPS хостинг FLOPS - вариант не для меня, я приводил его лишь в качестве примера. Я уже определился с сервером - это Cloudmouse. За месяц я даже умудрился набрать рефералов и заработать 7$ - этого хватит на 2 месяца пользования. Есть все так будет идти и дальше, то хостингом я буду пользоваться бесплатно :)

На этом облачном хостинге все сделано для людей: много разных образов Linux, разные предустановленные системы, в том числе с wordpress. Сервер создается за 2 минуты, одним нажатием.

Если вы обратитесь в поддержку, то вам дадут бесплатный купон на 7$ и вы сможете 2 месяца пользоваться сервером бесплатно. А можно пользоваться и дольше, так как сервер можно включать по необходимости, пока вы тренируетесь и настраиваете его, ведь плата идет только за включенный сервер!

Как настроить сервер на CloudMouse?

Итак, заходим на Cloudmouse и создаем новый сервер, перейдя во вкладку СЕРВИСЫ и нажав надпись "У Вас пока ещё нет серверов, создать?" И тут мы видим:

Как правильно настроить сервер

Я не буду говорить о всех пунктах, все понятно будет и так. Но вот тут нужно подумать, что же выбрать?

1. Lamp. Это готовый вебсервер Apache2 со всем, что нужно. Лично я поставил именно его. Но это для людей хоть немного подкованных. (Есть ещё вариант LEMP, где вместо Apache ставится сервер Nginx, он быстрее, но и имеет свои минусы - я не спец, но так говорят.)

2. Vesta. Тот же LAMP, но только устанавливает ещё панель Vesta, которая помогает управлять сервером. Лично мне она не понравилась, функций мало, и без нее можно вполне обойтись.

Читайте также:  Как проверить сервер на вирусы?

3. WordPress. Если у вас всего один сайт на WordPress, то устанавливайте именно этот сервер, вы сразу получите готовый сайт. Тоже самое и с другими образами с предустановленными CMS.

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

Но представим, что у вас один сайт и вы установили wordpress. Где искать сайт? Для этого нужно найти каталог /var/www/html -  там будет ваш сайт.

Если же вы планируете несколько сайтов, то вам будет нужно создать в этой папке ещё каталоги с названием сайта, например: /var/www/html/site1.ru

Как настроить Apache?

Ну вот, подготовка закончена, теперь нам нужно правильно настроить вебсервер апач. Уже сейчас вы можете попасть на свои сайты по IP адресу с путём папки, пример: 192.168.1.1/site1.ru

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

sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak

Это на всякий случай, чтобы потом все можно было вернуть на место командой:

sudo cp /etc/apache2/apache2.conf.bak /etc/apache2/apache2.conf

Я надеюсь вы умеете подключаться к серверу через ssh и у вас стоит Linux? Нет? Ну тогда вам сложнее, но все же это не беда, можно или установить линукс на флешку, или установить в windows дополнительный софт.

А вообще по ssh подключаются из терминала так: ssh ваш_логин@ip_адрес

Хотя я работаю постоянно в линукс, но работать в консоли я уже отвык, поэтому мне проще редактировать файлы в текстовом редакторе, чем в консольном, типа nano и vim.

Если вы такой же халтурщик как я, то можете установить графическую среду (вернее ее малую часть) на сервер командой.

sudo apt-get install gksu

Так же можно установить текстовый редактор geany:

sudo apt-get install geany

Теперь вы можете запустить geany, который у вас на сервере, прямо у себя на компьютере. Для этого можно выйти из сеанса ssh командой exit, или просто открыть новую вкладку терминала и подсоединиться заново:

ssh login@ip_адрес -Y geany

Можно установить даже файловый менеджер, но в этом нет необходимости, все делается проще. В линукс в файловом менеджере в адресной строке можно набрать:

sftp://login@ip_адрес

Так вы увидите все файлы на сервере, и можете даже работать с файлами своих сайтов:

Читайте также:  Как включить gzip сжатие на сервере?

настройка сервера

Но проблема только в том, что вы не сможете редактировать так системные файлы, для этого вам понадобятся права root. А их у вас нет.

Чтобы решить эту проблему, нам нужно на время получить права root. Оставлять права root включенными постоянно опасно, но включить на время можно.

Как получить root в Ubuntu 14.04?

Сначала включим пользователя root на сервере, у меня там стоит Ubuntu 14.04. Включаем root:

sudo passwd -u root

Зададим ему сложный пароль:

sudo passwd root

Теперь нам нужно разрешить соединяться через root по ssh. Для этого нам нужно после подключения по ssh выполнить команду:

sudo nano /etc/ssh/sshd_config

В этом файле есть строка PermitRootLogin without-password, которую нам нужно заменить на PermitRootLogin yes. После того, как мы изменили параметр, нажимаем Ctrl + O и потом Enter. Все сохранилось, теперь выходим из nano через Ctrl + X. После этого перезагружаем ssh сервис:

sudo service ssh restart

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

Теперь мы открываем любым из способов файл /etc/apache2/sites-available/000-default.conf и смотрим в него. Изначально там есть такой код:

ServerAdmin webmaster@localhost
DocumentRoot /var/www/

AllowOverride All

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combine

Вот в этой директории  /var/www/html по умолчанию должен лежать сайт. По идее можно изменить его на любой путь, и будет даже замечательно, если мы переместим сайты в вашу домашнюю папку /home, ведь при подключении по ssh мы выходим именно на нее. Можно указать путь так: /home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/www Но можно оставить все и так, я просто убрал директорию html и расположил сайты прямо в папке www.

Читайте также:  Мониторинг сервера Linux через планшет

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

/var/www/site1.ru

/var/www/site2.ru

/var/www/site3.ru

Для этого мы создаем в папке /etc/apache2/sites-available/ несколько файлов с названием наших доменов: site1.ru, site2.ru и site3.ru и в каждый копируем такой код, только в каждом пишем каждый раз соответствующий домен. Я буду писать на примере сайта, который буду переносить  - nkondrashova.ru

 ServerName nkondrashova.ru
 ServerAlias www.nkondrashova.ru

 DocumentRoot "/var/www/nkondrashova.ru"

 <directory "/var/www/nkondrashova.ru">
  allow from all
  Options +Indexes
  AllowOverride All

В завершении нужно создать ссылку на новый конфигурационный файл в папке /etc/apache2/sites-enabled/ Можно сделать это вручную или командой:

ln -s /etc/apache2/sites-available/site1.ru /etc/apache2/sites-enabled/site1.ru

После этого нам нужно в /etc/apache2/etc/apache2.conf добавить такую секцию (там уже есть подобная, ее можно или удалить, или отредактировать)

	Options Indexes FollowSymLinks
	AllowOverride All
	Require all granted

Каждый раз добавляя новый сайт нужно проделывать все эти операции, по аналогии.

Если у вас настроены человекоподобные url, то ОЧЕНЬ важно настроить Apache должным образом. Когда я перенес сайт у меня работала только главная страница. При переходе на любую ссылку выдавало ошибку "страница не найдена".

При переходе на стандартные числовые числовые url все работало. Оказалось, что в /etc/apache2/etc/apache2.conf изменить AllowOverride None на AllowOverride All. Так же в файлах сайтов в /etc/apache2/sites-available/ нужно добавить в секцию Directory  строку AllowOverride All. В статье выше я уже все исправил и выставил именно эти параметры.

После этого нужно перезагрузить сервер Apache2:

/etc/init.d/apache2 restart

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

Подписывайтесь на канал БЛОКНОТ ВЕБМАСТЕРА в Твиттере.

6 комментариев уже оставлено!

СОВЕТ ВЕБМАСТЕРУ: Умение зарабатывать в интернете - это только пол дела, вторая половина - это умение ВЫГОДНО обналичивать электронные деньги. Вот список офшорных банковских карт, на которые можно выводить средства и потом снимать с них хрустящие купюры:

1. Epayments - можно открыть счет в долларах, евро и рублях. Формально банка нет, юридический адрес в Лондоне, но можно получить реквизиты банка в Латвии.

2. AdvCash - Офшорный банк находится в Белизе, можно открыть счет в долларах, евро, фунтах и рублях.

3. OkPay - Офшорная компания зарегистрирована на Британских Виргинских островах, можно открыть счет в долларах, евро и рублях.

4. Payeer - Штаб квартира этой платежной системы находится в Грузии, тут так же можно открыть счет в долларах, евро и рублях.

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

Понравилась ИГРА? Возьми КОД и поставь себе на сайт:)

Опубликовано © Блокнот вебмастера

Статью прочитало 357 человек(а) , сегодня - 1 ...