Если вы веб-мастер, или программист на PHP, или вам просто нужно запустить веб-сайт на вашем компьютере, то вы можете это сделать с помощью веб-сервера. На Linux веб-сервер (Apache), а также сопутствующие компоненты (PHP, MySQL, phpMyAdmin) устанавливаются буквально в несколько команд.
В этой инструкции будет показано, как установить веб-сервер для сайтов на Linux Mint, Ubuntu и Debian.
Установка Apache, PHP, MySQL, phpMyAdmin на Linux Mint, Ubuntu и Debian
Большинство операций мы будет делать в командной строке – терминале Linux.
Откройте терминал и выполните в нём следующие две команды:
sudo apt update sudo apt install apache2 default-mysql-server php phpmyadmin
Ответьте «Нет» на запрос о настройки с dbconfig-common:
Для перехода между пунктами используйте клавишу Tab, а для нажатия Enter.
Выберите «apache2».
Для выбора пунктов используйте клавишу Пробел, для перехода между пунктами используйте клавишу Tab, а для нажатия Enter.
Вот и всё! Веб-сервер (связка Apache, PHP, MySQL, phpMyAdmin) установлен и готов к работе. Откройте в браузере ссылку http://localhost/
Вы увидите стандартную страницу Apache:
А phpMyAdmin доступен по ссылке http://localhost/phpmyadmin/
Чтобы веб-сервер запускался вместе с каждым включением компьютера, выполните команду:
sudo systemctl enable apache2 sudo systemctl enable mysql
Как поменять URL адрес phpMyAdmin. Как включить и отключить phpMyAdmin
Если при установке phpMyAdmin вы выбрали не настраивать его для использованием с веб-сервером Apache, то для включения phpMyAdmin используйте команду:
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-enabled/
Чтобы изменения вступили в силу, перезагрузите веб-сервер:
sudo systemctl restart apache2
Чтобы отключить phpMyAdmin, используйте команду:
sudo rm /etc/apache2/conf-enabled/phpmyadmin.conf
Чтобы изменения вступили в силу, перезагрузите веб-сервер:
sudo systemctl restart apache2
В файле /etc/phpmyadmin/apache.conf есть важная строка:
Alias /phpmyadmin /usr/share/phpmyadmin
Суть её в том, что URL адресу /phpmyadmin (например, http://localhost/phpmyadmin) начинает соответствовать папка /usr/share/phpmyadmin. То есть файлы (скрипты) phpMyAdmin физически расположены в /usr/share/phpmyadmin, а не в директории веб-сервера (например, /var/www/html/).
Подробности о директиве Alias вы можете почитать в статье «Модуль Apache mod_alias».
Многие автоматические сканеры «скрытых» файлов и папок веб-сервера и сайтов обязательно проверяют директории «phpmyadmin», «pma» и другие подобные. Вы можете хорошо спрятать ваш phpMyAdmin изменив Alias. Например:
Alias /lkjgler94345 /usr/share/phpmyadmin
Чтобы изменения вступили в силу, перезапустите веб-сервер. Теперь phpMyAdmin станет доступен по адресу http://localhost/lkjgler94345 - такое найти непросто.
Настройка phpMyAdmin
По умолчанию phpMyAdmin не позволяет входить без пароля. Если вы не установили пароль для СУБД MySQL, то у вас на выбор две опции:
- установить пароль
- внести изменения в настройку phpMyAdmin, чтобы он разрешал вход без пароля
Рекомендуется задать пароль для базы данных. Для изменения пароля можно воспользоваться скриптом:
sudo mysql_secure_installation
Если вам нужно подробное описание и перевод всех шагов, то смотрите его в этой статье.
Если вы хотите разрешить входить в phpMyAdmin без пароля, то откройте файл
sudo gedit /etc/phpmyadmin/config.inc.php
Найдите вторую (их там две) строку
// $cfg['Servers'][$i]['AllowNoPassword'] = TRUE;
и раскомментируйте её (уберите два слеша из начала строки), чтобы получилось:
$cfg['Servers'][$i]['AllowNoPassword'] = TRUE;
Скорее всего, при подключении вас ждёт сюрприз в виде ошибки «#1698 - Access denied for user 'root'@'localhost'». Пошаговые действия для её решения в этой инструкции.
Где в веб-сервере Apache находятся сайты?
По умолчанию корневой папкой для веб-документов является /var/www/html. В /var/www вы можете делать ваши собственные виртуальные хосты.
Папка /var/www/html и все файлы внутри неё принадлежат пользователю рут.
Чтобы вы могли изменять, добавлять, удалять файлы в этой папке, вам нужно использовать sudo. Например, следующей командой вы откроете файловый менеджер для управления содержимым папки.
sudo nemo /var/www/html
Все другие программы, которые вносят изменения в /var/www/html, также должны быть запущенными с sudo
На локальном сервере для упрощения использования вы можете сделать себя владельцем этой папки:
sudo chown -R $USER:$USER /var/www/html
Теперь вам и запущенным от вашего имени программам не нужны привилегии суперпользователя для работы с содержимым этой директории:
nemo /var/www/html
Индексные файлы Apache
Если пользователь запрашивает у веб-сервера не файл, и директорию, то сервер ищет в ней файлы index.html, index.php, index.htm и т.п. Если эти файлы есть в этой директории, то показывается их содержимое. Эти файлы называются индексными. Если в директории сразу два или более таких файлов, то показывается один из них в соответствии с установленным приоритетом.
Посмотреть, какие файлы для вашего сервера являются индексными и в каком порядке выстроен их приоритет вы можете в файле
sudo gedit /etc/apache2/mods-enabled/dir.conf
Там вы увидите что-то вроде:
<IfModule mod_dir.c> DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm </IfModule>
Обычно пользователи хотят переместить индексный файл PHP (index.php) в первую позицию после DirectoryIndex, чтобы получилось примерно так:
<IfModule mod_dir.c> DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm </IfModule>
После внесения изменений, сохраните и закройте файл, перезапустите веб-сервер.
Заключение
В этой инструкции было показано, как установить веб-сервер Apache на свой компьютер с Linux Mint. По своей функциональность этот сервер не отличается от возможностей хостингов. Вы можете на нём тестировать свои сайты, использовать при изучении PHP, установить WordPress и т.д. Более того, этот сервер можно сделать доступным для локальной или даже глобальной сети.
Связанные статьи:
- Как установить веб-сервер Apache с PHP 7, MariaDB/MySQL и phpMyAdmin (LAMP) на Ubuntu (95.1%)
- Ошибка «Failed - Network error» во время экспорта в phpMyAdmin (РЕШЕНО) (68.6%)
- Как переименовать таблицу в phpMyAdmin и MySQL (68.6%)
- Как установить WordPress на Ubuntu/Linux Mint (62.7%)
- Как импортировать и экспортировать базы данных в MySQL или MariaDB (55.9%)
- PHP не отображает эмодзи из базы данных MySQL / MariaDB (РЕШЕНО) (RANDOM - 30.7%)
Спасибо!
Огромное спасибо! Коротко и все по делу.
Огромное tnx
Что делать, если ПЫХ не обрабатывается, а выводится как есть текстом. Например, phpmyadmin просто содержимое скрипта вываливается.
В index.php все место а также игнорируются
Устанавливали по этой инструкции?
Сначала отдельно через менеджер программ php и apache. Затем поверх по этой инструкции
Выше в коменте теги порезались. Места между открытием и закрытием php скрипта игнорируются
Почему в строке установки два раза указан
php-mysql?
Это опечатка. Поправил — спасибо, что обратили внимание.
Инструкция проверена и исправлена — теперь всё снова работает в последних версиях Linux Mint.