Logo

Web сервер на debian или ubuntu за полчаса

Запустить свой web сервер на линуксе очень просто. Рассмотрим как поставить популярную связку Linux + Apache + MySQL + PHP или просто LAMP.

Установка под Ubuntu

Чтобы установить всю связку нужно выполнить в консоли всего две команды:

sudo apt-get install tasksel
sudo tasksel install lamp-server

В процессе нужно будет указать пароль для пользователя root необходимый для полного доступа к MySQL.

Установка под Debian

Под debian ненамного сложнее нужно лишь перечислить все что мы хотим поставить:

sudo aptitude install apache2 php5 libapache2-mod-php5 mysql-server mysql-client php5-mysql

Этот вариант подойдет почти для любого дистрибутива на основе debian включая ubuntu.

Тестирование PHP

Создадим тестовый файлик выполнив:

echo '<?php phpinfo() >;' > /var/www/test.php

Откройте в браузере http://127.0.0.1/test.php. Вы должны увидеть конфигурацию модуля php.

Установка phpmyadmin

Phpmyadmin это удобная панель управления для MySQL. Ставится также просто:

sudo apt-get install phpmyadmin

Перезапустите apache:

sudo /etc/init.d/apache2 restart

Теперь можно открыть админку в браузере http://127.0.0.1/phpmyadmin/

Мы получили сервер с базовой настройкой в принципе им уже можно пользоваться, если залить в папочку /var/www исходники сайта то он будет доступен по ip адресу или любому dns имени привязанному к ip.

Настройка нескольких сайтов

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

Если у вас ещё нету домена или вам нужно отладить сайт то можно сделать сопоставление отредактировав файл на машинке где запускаете браузер.

Для linux нужно добавить в файл /etc/hosts строчки вида:

127.0.0.1 mydomain1.ru
127.0.0.1 mydomain2.ru
127.0.0.1 mydomain3.ru

Аналогичный файл в windows лежит в C:\Windows\System32\Drivers\etc\hosts
Возвращаемся к нашему апачу.

Открываем файл /etc/apache2/ports.conf и проверяем что в нем есть строчки:

NameVirtualHost *:80
Listen 80

Если файла ports нету в вашем дистрибутиве то возможно выше указанные строки находятся в другом файле настроек.

Теперь в каталоге /etc/apache2/sites-available создадим файлик mydomain1.conf и напишем в нем минимальный конфиг:

<VirtualHost *:80>
ServerName mydomain1.ru
ServerAlias http://www.mydomain1.ru
DocumentRoot /var/site/mydomain1.ru
</VirtualHost>

Соответственно в каталоге /var/site/mydomain1.ru у нас должны лежать файлы сайта.

Чтобы включить сайт выполняем в терминале команды:

a2ensite mydomain1.conf
apache2ctl restart

Для выключения выполняем:

a2dissite mydomain1.conf
apache2ctl restart

Аналогично добавляем в /etc/apache2/sites-available другие сайты.

Все включенные сайты можно посмотреть в каталоге /etc/apache2/sites-enabled

В статье описаны лишь минимальный набор для простых PHP сайтов. Чтобы запустить сайт на крутой CMS нужно добавить ещё кучу специфичных настроек и модулей но это уже индивидуальная настройка которая обычно описывается в документации к CMS.

2 комментария

  1. а дальше что?

    • А дальше обычно идут индивидуальные настройки под конкретные требования CMS. Хотя надо будит добавить описание наиболее часто встречаемых модулей.

Добавить комментарий для Ваш Отменить ответ

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