ZaLinux.ru

Установка веб-сервера (Apache, PHP, MySQL, phpMyAdmin) на Linux Mint

Если вы веб-мастер, или программист на PHP, или вам просто нужно запустить веб-сайт на вашем компьютере, то вы можете это сделать с помощью веб-сервера. На Linux веб-сервер (Apache), а также сопутствующие компоненты (PHP, MySQL, phpMyAdmin) устанавливаются буквально в несколько команд.

В этой инструкции будет показано, как установить веб-сервер для сайтов на Linux Mint.

Установка Apache, PHP, MySQL, phpMyAdmin на Linux Mint

Большинство операций мы будет делать в командной строке – терминале Linux.

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

sudo apt-get update
sudo apt-get install apache2 mysql-server php libapache2-mod-php php-mysql php-xml php-gd php-imap php-mysql php-gettext phpmyadmin

В процессе установки появится окно, в котором вы можете установить пароль для MySQL:

Рекомендуется сразу установить пароль, это нужно для безопасности, также в своих стандартных настройках phpMyAdmin не даст войти без пароля.

Если для локального веб-сервера вы не хотите указывать пароль, то оставьте поле пустым, переключитесь клавишей TAB на OK и нажмите ENTER.

В этом окне оставьте всё без изменений, переключитесь клавишей TAB на OK и нажмите ENTER.

На вопрос «Настроить базу данных для phpmyadmin с помощью dbconfig-common?» клавишей TAB выберите «Нет» и нажмите ENTER:

Вот и всё! Веб-сервер (связка Apache, PHP, MySQL, phpMyAdmin) установлен и готов к работе. Откройте в браузере ссылку http://localhost/

Вы увидите стандартную страницу Apache:

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

sudo systemctl enable apache2

Настройка phpMyAdmin

Нам нужно сделать небольшую настройку для phpMyAdmin. Введите команду

sudo gedit /etc/apache2/apache2.conf

Она откроет текстовый файл. Пролистните этот файл до самого конца и в самый низ добавьте строку:

Include /etc/phpmyadmin/apache.conf

Перезапустите веб-сервер, чтобы изменения вступили в силу:

sudo systemctl restart apache2

Теперь phpMyAdmin доступен по ссылке http://localhost/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 и т.д. Более того, этот сервер можно сделать доступным для локальной или даже глобальной сети.

Рекомендуемые статьи:

7 Комментарии

  1. topboy84

    Спасибо!

  2. Baron

    Огромное спасибо! Коротко и все по делу.

  3. Alex

    Огромное tnx

  4. Дмитрий

    Что делать, если ПЫХ не обрабатывается, а выводится как есть текстом. Например, phpmyadmin просто содержимое скрипта вываливается.
    В index.php все место а также игнорируются

    1. Alexey (Автор записи)

      Устанавливали по этой инструкции?

  5. Дмитрий

    Сначала отдельно через менеджер программ php и apache. Затем поверх по этой инструкции

  6. Дмитрий

    Выше в коменте теги порезались. Места между открытием и закрытием php скрипта игнорируются

Оставить комментарий

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