Делаем свой мини-хостинг: Работа с LAMP
Опубликовано:
Комментариев: 3
Данная статья является продолжением записи Делаем свой мини-хостинг: Установка LAMP
Итак, Я хотел чтобы мои сайты размещались непосредственно в моем домашнем каталоге, а не на системном разделе, так в случае чего мои файлы будут всегда целы.Кстати, еще можно и перенести папку с базами данных Mysql, но об этом не сейчас.
Итак, для начала создадим папку для наших будущих сайтов. К примеру Я создаю папку www по адресу /home/user/www/ и тут будут находиться все мои сайты.
Активация Mod Rewrite
Чтобы можно было выставлять нормальные SEO заточеные ЧПУ на wordpress необходимо будет активировать mod rewrite.
sudo a2enmod rewriteПосле чего перезагружаем Apache для активации новых настроек конфигурации, по подсказке запустив уже знакомую команду
/etc/init.d/apache2 restartили аналогичную команду для перезапуска apache:
service apache2 reload
Отличия в настройке Apache 2.2 и Apache 2.4
ВНИМАНИЕ! На момент создания моей статьи, актуальной версией Apache была 2.2, а где-то в 2012м или 2013м году появилась новая ветка 2.4. Так что, как верно подметил в комментариях Natte, по состоянию на 2015й год нужно немного обновить информацию. Применимо к этой статье основным изменением является новый формат файла настроек. В версии Apache 2.2 файл настроек именовался:/etc/apache2/sites-available/defaultА уже в версии 2.4 он имеет следующий вид:
/etc/apache2/sites-available/000-default.confТаким образом, просмотрев содержимое каталога sites-available вы сразу же заметите какая у Вас версия Apache установлена:
$ls /etc/apache2/sites-available/ 000-default.conf default-ssl.confЛибо можно запустить команду dpkg:
$ dpkg -l apache2 ||/ Имя Версия Архитектура Описание +++-==============-============-============-================================= ii apache2 2.4.7-1ubunt i386 Apache HTTP Server
Настройка доступных сайтов в Apache
Первым делом сохраним резервную копию настроек:cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/000-default.conf.backupили же для старой версии Apache:
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/default.backupДалее по тексту статьи я буду использовать файл конфигурации для последней актуальной версии Apache 2.4, который имеет название 000-default.conf, а если Вы редактируете более старую версию - то подставляйте название файла настроек default. Думаю, что с этим разобрались! Теперь я бы посоветовал добавить сразу строчку, позволяющую сайту работать с модулем mod rewrite, который необходим для многих CMS систем. И чтобы не править каждый вновь созданный файл, мы добавим данный модуль в стандартную запись виртуального хостинга сайтов, чтобы все время не править конфиг при создании новых проектов.Так сказать "установил и забыл" ;) Пишем:
sudo gedit /etc/apache2/sites-available/000-default.confнаходим там этот кусок текста
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
и меняем AllowOverride None на AllowOverride All. Сохранили документ и вышли.
Теперь создадим непосредственно свой первый сайт site.lan:
1. Для начала необходимо создать новую запись виртуального хостинга для него в папке /etc/apache2/sites-available/, мы просто напросто скопируем стандартный default конфиг и переименуем его в название нашего нового сайта
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/site.confа в прошлой версии Apache 2.2 выполняем вот так:
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/site.lan2. Откройте ново созданный файл site.conf (или site.lan для старой версии) и проведите манипуляции:
sudo gedit /etc/apache2/sites-available/site.confтут нам необходимо будет заменить все /var/www/ на /home/user/www/site.lan (для переноса файлов сайта к себе в папку, не забудьте создать и папку site.lan ;) ) перед строкой "DocumentRoot /home/user/www/site/site.lan/" добавить строку "ServerName site.lan" В итоге у нас получается что-то вроде такого:
ServerName site.lan DocumentRoot /home/user/www/site.lan/3. Теперь добавим наш сайт:
sudo a2ensite site.confили для старой версии:
sudo a2ensite site.lan4. Редактируем файл hosts ВНИМАНИЕ! Если Вы планируете поднимать неймсервер и создавать свою локальную DNS зону - то запись в /etc/hosts не требуется!
sudo gedit /etc/hostsи добавьте в него:
127.0.1.1 site.lanСтоит отметить, чтобы не путать читателей, что в данном случае мы добавляем уже сам адрес сайта, который вписали в ServerName в пункте 2. Т.е. что для старой, что для новой версии Apache, тут ничего не изменится. 5. И перезапустите Apache, чтоб настройки вступили в силу:
sudo /etc/init.d/apache2 reloadВот и все! Очень легко и просто. Для добавления других сайтов используйте шаги 1-3, с учетом того что имя сайта должно быть от того что уже существует, тобиш site.lan в нашем случае,а добавление IP в /etc/hosts производим по нарастающей, адрес для следующего проекта, к примеру, 127.0.1.2, для третьего 127.0.1.3 и так далее. От спонсора: Приёмы по эффективному продвижению интернет ресурса в поисковых машинах и есть ничто иное как раскрутка сайта. Задачи, которые ставит перед собой раскрутка сайта заключаются в привлечении целевой аудитории для достижения определённых задач проекта. Наша компания предоставляет услуги раскрутки сайтов в крупнейших поисковых системах Яндекс и Гугл. Мы поможем открыть Ваш веб-проект для посетителей из Украины, СНГ и остальных уголков мира.