Установка Apache2 с PHP5 и MySQL + phpmyadmin для Debian/Ubuntu/Mint
Хотелось бы рассказать как я устанавливал apache2 c php5 и mysql, а так же phpmyadmin на Debian, Ubuntu и Linux Mint в своей статье «Установка Apache2 с PHP5 и MySQL + phpmyadmin для Debian/Ubuntu/Mint». У меня установлен Debian, работать будет так же на Ubuntu и Linux Mint.
Я использую my_server.example.net — это доменное имя с 192.168.16.66- это его айпишник. Они будут отличны от ваших, и их можно настроить под себя. А посмотреть можно вот так:
# vim /etc/hosts
[...] 192.168.16.66 my_server.example.net [...]
Я буду запускать все команды с привилегиями суперюзера, поэтому убедитесь, что вы вошли в вашу систему как администратор (root):
# su -
Установка Mysql
Когда я начал писать эту статью, то последняя версия mysql была 5, сейчас установим:
# apt-get install mysql-server mysql-client
В ходе установки, попросят ввести пароль для MySQL (для полного доступа, для рута) — это пароль будет одинаков как для root@localhost, так и для root@my_server.example.net. Его нужно ввести 2 раза.
Еще полезные статьи по теме:
1. Установка MySQL на Debian/Ubuntu/Linux Mint
2. Создать пользователя MySQL
3. Сброс пароля root в MySQL
4. Восстановление или сброс пароля root в MySQL
5. Как сделать резервную копию и восстановить большую базу данных MySQL
Установка apache2
Apache2 содержится в репозитории Ubuntu, как пакет, по этому я могу установить следующим образом:
# apt-get install apache2
После того как завершится установка, нужно перейти в свой браузер на http://ip_server_or-IP (у меня это http://my_server.example.net), и вы должны увидеть страницу приветствия Apache2 (Это работает!), на английском «It’s works!». По этому если вы это увидели, то сервер работает нормально.
Домашняя директория с apache-м, по умолчанию, находится в /var/www на Debian, и файл конфигурации лежит в /etc/apache2/apache2.conf. Дополнительные конфигурации хранятся в подкаталогах, в таких как /etc/apache2/mods-enabled (для модулей Apache), /etc/apache2/sites-enabled (для виртуальных хостов), и /etc/apache2/conf.d.
Установка PhP5
Мы можем установить пхп и модуль для работы вот так:
# apt-get install php5 libapache2-mod-php5
Перезапускаем веб сервер чтобы все что установили вступило в силу:
# /etc/init.d/apache2 restart
Для того чтобы убедится что все хорошо работает у нас, нужно создать файл в домашней директории апача ( если вы не меняли то он находится по пути /var/www ) и добавим php код который будет выводить полезную информацию о установленных приложения (php, apache, модули и тд):
# vim /var/www/php_info.php
<?php phpinfo(); ?>
Открываем браузер и переходим на этот файл:
http://your_ip/php_info.php
Вы должны увидеть некоторые данные на экране. Чтобы была поддержка MySQL в PHP,нужно установить php5-mysql пакет. Сейчас я установлю полезные модули, по этому, если нужны они вам, то устанавливайте ( они не помешают), так же можно выбрать самое необходимое и не ставить все что я ставлю себе.
# apt-cache search php5
Выберите те, которые вам нужны, и установить их так:
# apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-suhosin
Я установлю все перечисленное, оно не помешает мне. В этой установке содержатся модули для работы с шифрованием + для работы с кешем ( улучшение работы пхп) + поддержка sqlite и еще много чего. Я не буду описывать каждый из них, если уж очень нужно будет, то напишите и я добавлю описание каждого из них и вам станет понятно, но гугл еще работает =)
Теперь перезагрузите сервер:
# /etc/init.d/apache2 restart
XCache — модуль для кэширования и оптимизации промежуточного кода PHP. У него есть пару аналогов, таких как Eaccelerator и APC. Я рекомендую, чтобы хотя бы один из них был установлен у вас он должен ускорить работу ваших страниц которые написаны на PHP.
XCache можно установить следующим образом:
# apt-get install php5-xcache
Перезапускаем апач:
# /etc/init.d/apache2 restart
Чтобы посмотреть весь список установленных модулей, выполните:
# php -m
Теперь перезагрузите страничку с нашим php_info в вашем браузере и прокручиваем вниз до раздела модулей. Теперь вы должны найти много новых модулей там, в том числе модуля MySQL.
Установка phpmyadmin
Если нужно установить именно phpmyadmin для работы с вашими базами, то сейчас мы это сделаем:
# apt-get install phpmyadmin
Мастер установки спросит какой веб -сервер вы используете (Web server to reconfigure automatically): выбираем apache2, есть так же еще lighttpd. На следующий вопрос «Configure database for phpmyadmin with dbconfig-common?» — отвечаем No. Хотя можно нажать и Yes, тогда установщик спросит пароль для пользователя admin (нужен для входа в phpmyadmin).
Чтобы начать пользоваться phpmyadmin, нужно открыть в браузере:
http://yourIP_or_server/phpmyadmin/
Вводим в поле логин «root», пароль вводим такой как вы создали для mysql.
Настройка mysql
попозже будет( через пару дней)
Настройка apache2
Тут я буду рассказывать основные настройки веб-сервера апач, но по мере возможности. Я с каждым разом редактирую данную статью и добавляю что — то новое в описание.
Виртуальные хосты (Virtualhosts).
Хочу начать я свою настройку с создания и настройки Virtualhosts (виртуальных хостов). Есть много разных способов чтобы создать виртуальные хосты, но я бы посоветовал данный метод (поискав и перебрал много вариантов и литературы, я выбрал именно его).
По умолчанию, веб-сервер апач «слушает» все IP-адреса которые доступны для виртуального сервера. Это не есть хорошо, по этому нужно подредактировать и настроить его на прослушивание только определенного ИП-адреса. Даже если Вы имеете только один IP адрес!
Делаем изменение в файле ports.conf:
# vim /etc/apache2/ports.conf
[...] NameVirtualHost 192.168.16.66 :80 [...]
Измените данный ИП-адрес на свой!
Делаем изменение в файле default:
# vim /etc/apache2/sites-available/default
<VirtualHost 192.168.16.66:80>
Теперь я создам 1 виртуальный хост в качестве примера:
# vim /etc/apache2/sites-available/test
<VirtualHost 192.168.16.66:80> ServerAdmin mail@192.168.16.66 # введите свой емейл ServerName 192.168.16.66 # замените на свой IP ServerAlias www.192.168.16.66 # замените на свой ИП-адрес или доменное имя DocumentRoot /var/www/192.168.16.66/public_html/ # домашняя директория для данного домена или сайта ErrorLog /var/www/192.168.16.66/logs/error.log # файл для хранения ошибок CustomLog /var/www/192.168.16.66/logs/access.log combined # # папка для хранения ошибок </VirtualHost>
Создадим папки которых нет:
# mkdir -p /var/www/192.168.16.66/ # mkdir -p /var/www/192.168.16.66/public_html # mkdir -p /var/www/192.168.16.66/logs
После всех изменений, нужно подключить данный домен в apache:
# a2ensite test
И перезагрузить веб-сервер:
# /etc/init.d/apache2 reload
Можно отключить данный сайт (виртуальный хост test)следующей командой:
# a2dissite test
Чтобы проверить работает ли все нормально, я скопирую файл (php_info):
# cp /var/www/php_info.php /var/www/192.168.16.66/public_html/
Можно открыть браузер и перейти:
http://192.168.16.66/php_info.php
Настройка PHP5
Все изменения нужно проводить в конфигурационном файле php.ini, сейчас мы его немного поправим:
# vim /etc/php5/apache2/php.ini
[...] max_execution_time = 30 memory_limit = 64M error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR display_errors = Off log_errors = On error_log = /var/log/php.log register_globals = Off [...]
Вот и все, данная тема «Установка Apache2 с PHP5 и MySQL + phpmyadmin для Debian/Ubuntu/Mint» полностью раскрыта, можно использовать наш установленный LAMP. Спасибо за посещение http://linux-notes.org
У меня нет строчки NameVirtualHost
Напиши что не получается и я помогу.