Тема установки и настройки Apache, PHP, MySQL, встречается гораздо чаще чем грибы в лесу моего родного города. Но все равно хочется к ней вернутся чтоб добавить автоматическое создания локальных хостов. Да и себе на заметку, людям в помощь. И так приступим.
Установка apache:
Проверить работу нашего сервера очень просто, перейдем по адресу в браузере localhost и увидим заветную надпись — It works! Но не спешите радоваться это только начало.
Продолжаем, установим php:
Установка MySQL сервера:
При установке необходимо ввести пароль для root пользователя MySQL.
Установка phpmyadmin:
Необходимо выбрать сервер, конечно же Apache, затем пароль пользователя базы данных MySQL и пароль для самого phpmyadmin.
Что бы все изменения вступили в силу, перезапустим сервер:
Проверить работу можно по ссылке localhost/phpmyadmin или адрес сервера/phpmyadmin
Теперь примемся за конфигурацию локального хоста для наших сайтов. Попытаемся автоматизировать весь этот процесс. Автоматическое создание виртуальных хостов, для этого мы используем модуль mod-macro. Этот модуль позволяет определить и использовать для конфигурации макросы в Apache.
Устанавливаем mod-macro:
Включаем:
Создаем файл для макроса (шаблона) виртуального хоста:
Вставляем туда следующий код:
Напишем скрипт для запуска макроса и добавление хоста, создадим файл:
в него добавим:
делаем файл исполняемым:
И создание хоста:
Сделаем тест для нашего сайта, напишем:
в созданном файле:
Осталось запустить наш браузере — test.loc, если вы на экране увидели информацию об установленном php, значит все работает.
sudo apt-get install apache2 apache2-mpm-prefork apache2-utils apache2-suexec
Проверить работу нашего сервера очень просто, перейдем по адресу в браузере localhost и увидим заветную надпись — It works! Но не спешите радоваться это только начало.
Продолжаем, установим php:
sudo apt-get install php5 php5-mysql libapache2-mod-php5 php-pear
Установка MySQL сервера:
sudo apt-get install mysql-server mysql-client libmysqlclient15-dev
При установке необходимо ввести пароль для root пользователя MySQL.
Установка phpmyadmin:
sudo apt-get install phpmyadmin
Необходимо выбрать сервер, конечно же Apache, затем пароль пользователя базы данных MySQL и пароль для самого phpmyadmin.
Что бы все изменения вступили в силу, перезапустим сервер:
sudo service apache2 restart
Проверить работу можно по ссылке localhost/phpmyadmin или адрес сервера/phpmyadmin
Теперь примемся за конфигурацию локального хоста для наших сайтов. Попытаемся автоматизировать весь этот процесс. Автоматическое создание виртуальных хостов, для этого мы используем модуль mod-macro. Этот модуль позволяет определить и использовать для конфигурации макросы в Apache.
Устанавливаем mod-macro:
sudo apt-get install libapache2-mod-macro
Включаем:
sudo a2enmod macro
Создаем файл для макроса (шаблона) виртуального хоста:
sudo mkdir /etc/apache2/conf.d/custom
sudo nano /etc/apache2/conf.d/custom/vhosts
Вставляем туда следующий код:
<Macro VHost $host $path>
<VirtualHost *:80>
DocumentRoot "$path"
ServerAdmin vanya@localhost
ServerName $host
ServerAlias www.$host
DirectoryIndex index.php index.html index.htm index.shtml
<Directory "$path">
Options FollowSymLinks
Options all
AllowOverride All
</Directory>
</VirtualHost>
</Macro>
Напишем скрипт для запуска макроса и добавление хоста, создадим файл:
sudo nano /bin/addvhosts
в него добавим:
#!/bin/bash
if [ x$1 = x"" ]; then
echo "please enter: host-name [macros-name]";
exit 0;
fi
host="$1.loc"
dir="$1"
macros="$2"
if [ x$macros = x"" ]; then
macros="VHost"
fi
mkdir -p /home/www-data/www/$dir
chown -R www-data /home/www-data/www/$dir
chmod -R 0777 /home/www-data/www/$dir
echo "Use $macros $host /home/www-data/www/$dir" >> /etc/apache2/conf.d/custom/vhosts
echo "127.0.0.1 $host www.$host" >> /etc/hosts
cd /home/www-data/www/$dir
apache2ctl configtest && apache2ctl graceful
делаем файл исполняемым:
sudo chmod +x /bin/addvhosts
И создание хоста:
sudo addvhosts test
Сделаем тест для нашего сайта, напишем:
<?php
phpinfo();
?>
в созданном файле:
nano /home/www-data/www/test/index.php
Осталось запустить наш браузере — test.loc, если вы на экране увидели информацию об установленном php, значит все работает.
Будьте внимательны, в зависимости от настроек вашего сервера, пути расположения исходных директорий могут отличаться.
Комментариев нет:
Отправить комментарий