Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Изучаем Linux
Советую также посмотреть http://slusar.su/izuchaem-linux-n1-zapusk-virtualnoy-mashin/
Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Доброго времени суток, читатели и подписчики, Сегодня мы будем настраивать php web сервер на debian 8.

Итак, начнем с основных команд:

~$ sudo apt-get update

Далее установим сервер Apache2, сам php и сервер баз данных MySQL, а также дополнительные компоненты:

~$ sudo apt-get install apache2 apache2-doc libapache2-mod-php5

Теперь приступим к установке PHP:

~$ sudo apt-get install php5 php-pear php5-mysql

Далее ставим сервер баз данных MySQL:

~$ sudo apt-get install mysql-server mysql-client

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

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Устанавливаем дополнительные компоненты PHP:

~$ sudo apt-get install php5-curl php5-gd php5-idn php5-imagick php5-ldap php5-imap php5-memcache php5-mhash php5-mysql php5-pspell php5-sqlite php5-tidy imagemagick php5-xcache php5-xdebug php5-xmlrpc php5-xsl

Теперь приступим к установке PHPMYADMIN — графического интерфейса для управления базами данных MySQL.

~$ sudo apt-get install phpmyadmin

Во время установки установщик попросит вас выбрать сервер, для запуска phpmyadmin, выбираем apache2:

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

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

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Далее у нас попросят ввести пароли администратора баз данных, и еще от баз данных phpmyadmin с подтверждением, вводим:

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

Все, phpmyadmin установлен. Теперь осталось настроить сервер, чтобы мы могли иметь к нему доступ.
Для этого переходим в директорию настройки apache2:

~$ cd /etc/apache2/

И редактируем apache2.conf с помощью gedit или nano. Как установить gedit, я рассказывал в прошлой статье.

~$ sudo gedit /etc/apache2/apache2.conf

И вконец файла вставляем строчки:

# Include phpmyadmin configurations:
Include /etc/phpmyadmin/apache.conf

Сохраняем, закрываем и перезагружаем сервер Apache2:

~$ sudo service apache2 restart

или

~$ sudo service apache2 reload

Обычно php уже запущен по умолчанию, но мы перестрахуемся и пропишем команду запуска в терминале:

~$ sudo a2enmod php5

Если он запущен, вы увидите сообщение:

Module php5 already enabled

Дополнительно запустим mod_rewrite:

~$ sudo a2enmod rewrite

И снова перезапускаем Apache2:

~$ sudo service apache2 restart

 

НАСТРОЙКА PHP.INI

Настало время внести изменение в настройки php. Для этого нужно отредактировать файл php.ini, который находиться в папке /etc/php5/apache2/.

~$ sudo gedit /etc/php5/apache2/php.ini

или

~$ sudo nano /etc/php5/apache2/php.ini

Если вы выбрали nano, тогда для поиска по тексту используйте F6. Далее ищем и выполняем следующие изменения в файле php.ini:

max_execution_time: меняем 30 на 90
max_input_time: меняем 60 на 180
post_max_size: меняем 8M на 200M
upload_max_filesize: меняем с 2M на 50M
max_file_uploads: меняем с 20 на 150

Сохраняем, закрываем. Для nano Ctrl+O → Enter → Ctrl+X.

 

НАСТРОЙКА АДРЕСОВ БЕЗ DNS

Если вы не хотите настраивать DNS, а просто сделать локальный веб сервер для работы и экспериментов, то можно поступить так: прописать в файле hosts ваши сайты и они будут доступны по их адресам.

~$ sudo gedit /etc/hosts

Прописываем наши сайты:

127.0.0.1 slusar.dev test.dev

НАСТРОЙКА DNS

Вот теперь настроим DNS. Для этого сначала установим Dnsmasq и приступим к настройке доменной зоны «.dev»:

~$ sudo apt-get install dnsmasq

И настраиваем, для этого нужно сделать следующее: открыть файл dnsmasq.conf и внести и прописать в него нашу доменную зону. Открывем:

~$ sudo gedit /etc/dnsmasq.conf

Находим такую строку:

#address=/double-click.net/127.0.0.1

И вставляем под ней следующую строку:

address=/dev/127.0.0.1

НАСТРОЙКА ДИРЕКТОРИЙ САЙТОВ

Теперь приступим к настройке рабочей области. Все файлы сайтов будут храниться в директории «/var/www». Для нормальной работы с этой директорией, необходимо дать права на редактирование ее содержимого вашему пользователю, поскольку доступ к ней имеет только root.
К тому же необходимо настроить группу, которой относиться эта директория. А название группы совпадает с именем пользователя.

Я, в своем случае, использую следующую команду sudo chown -R логин:группа путь к папке:

~$ sudo chown -R slusarsu:slusarsu /var/www

Переходим в эту директорию:

~$ cd /var/www/

И создаем директорию нашего тестового сайта:

~$ mkdir -p slusar.dev/httpdocs

Теперь переходим в эту папку и создаем индексный файл:

~$ cd slusar.dev/httpdocs

~$ gedit index.php

И в открывшемся окне редактора пишем следующий код:

<p>Hello, World!</p>
<p><?php phpinfo(); ?></p>

Сохраняем, закрываем.

 

НАСТРОЙКА КОНФИГУРАЦИИ ПАПОК САЙТОВ В APACHE2

Переходим в директорию настроек сайтов:

~$ cd /etc/apache2/sites-available/

И копируем файл настроек с переименованием

~$ sudo cp 000-default.conf slusar.dev.conf

Далее, редактируем его:

~$ sudo gedit slusar.dev.conf

В открывшемся фале редактора заменяем содержимое на такое:

<VirtualHost *:80>
ServerAdmin webmaster@slusar.dev
ServerName slusar.dev
ServerAlias www.slusar.dev
DocumentRoot /var/www/slusar.dev/httpdocs/
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined 
<Directory '/var/www/slusar.dev/httpdocs/'>
AllowOverride All
</Directory>
<IfModule mpm_itk_module>
AssignUserId slusarsu slusarsu
</IfModule>
</VirtualHost>

Сохраняем. Закрываем.

Включаем сайт с помощью команды a2ensite (отключается сайт командой a2dissite):

~$ sudo a2ensite slusar.dev.conf

Перезагружаем Сервер:

~$ sudo service apache2 reload

Заходим в браузер по адресу http://slusar.dev и выдим, что наш сайт работает!

Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

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

apt-get install sqlite3 libsqlite3-dev php5-sqlite

На этом пока все, в следующей статье мы настроим сетевой мост с нашей виртуальной машиной, для дальнейшей работы по ftp и ssh.

Использовал материалы таких сайтов:
http://imaster.pp.ua/
http://blog.evgeniy.me/

11 идей о “Виртуальная рабочая машина на базе Debian 8. Установка полноценного web-сервера на linux

    1. admin Автор поста

      И вам спасибо за лестный отзыв. Рад, что кому-то пригодился мой опыт))

  1. Николай

    Сэкономил кучу времени, пользуясь этим отличным руководством.
    За что спасибо

  2. Akanox

    Большое спасибо, очень полезная статья, всё написано просто и удобно читается.
    В настройке виртуальных машин новичок, смог почти без проблем сделать всё, что описано в статье, не смог только разобраться с командой уровней доступа, но, в итоге, всё заработало =)

      1. Akanox

        Всё верно, решил этот вопрос другой командой: sudo -R /etc/apache2/

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

        1. Виталий Слюсар

          Если хотите, то могу показать как заливать сайт и базы данных с локального сервера на хостинг. В данный момент активно публикую краткие уроки по php. В конце которых будет урок по разработке мини сайта и перенос его на реальный сервер.

  3. Андрей

    Доброго времени суток.хорошая статья.
    max_execution_time: меняем 30 на 90
    max_input_time: меняем 60 на 180
    post_max_size: меняем 8M на 200M
    upload_max_filesize: меняем с 2M на 50M
    max_file_uploads: меняем с 20 на 150
    обьестните что это даёт ? у меня и без того работает.
    И как лучше сделать чтобы с интернета могли заходить на сайт который лакальной машине,если я вфайле hots укажу те адреса что в sudo ifconfig
    , но ведь они статистеческие.

  4. Пингбэк: Изучаем SQL. №1. Установка сервера MySQL на Windows и Linux. - Slusar.Su

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.