Установка XAMPP в Debian 10 (Ubuntu) Linux
Установка пакета XAMPP в Debian GNU/Linux
На сайте apachefriends.org качаем run-файл — загрузить.
Для Linux есть только 64-битные пакеты.
На момент написания статьи я скачал пакет xampp-xampp-linux-x64-7.2.30-0-installer.run.
Делаем файл исполняемым
sudo chmod 755 ~/Загрузки/xampp-linux-x64-7.2.30-0-installer.run
Запускаем установщик
sudo ~/Загрузки/xampp-linux-x64-7.2.30-0-installer.run
На всех появляющихся экранах установщика жмём Next.
Здесь можно снять галку с XAMPP Developer Files.
Здесь тоже снимаем галочку.
Тут галочку оставляем, чтобы потом запустился менеджер XAMPP. Нам надо будет сделать первый запуск серверов.
Жмём на Start All, для запуска серверов.
Консольные команды управления XAMPP-сервером
Запуск XAMPP-сервера
sudo /opt/lampp/lampp start
Остановка XAMPP-сервера
sudo /opt/lampp/lampp stop
Перезапуск XAMPP-сервера
sudo /opt/lampp/lampp restart
Запуск графического менеджера управления XAMPP-севером
sudo /opt/lampp/manager-linux-x64.run
ВАЖНО! Обязательно нужно сначала запустить все компоненты сервера, чтобы можно было установить пароли.
Теперь установим пароли для phpMyAdmin, MySQL root, FTP.
sudo /opt/lampp/xampp security
ВАЖНО! Пароли не забывать!
Пример работы этой команды:
@SrvHome:~$ sudo /opt/lampp/xampp security XAMPP: The MySQL/phpMyAdmin user pma has no password set!!! XAMPP: Do you want to set a password? [yes] yes XAMPP: Password: XAMPP: Password (again): XAMPP: Setting new MySQL pma password. XAMPP: Setting phpMyAdmin's pma password to the new one. XAMPP: MySQL has no root passwort set!!! XAMPP: Do you want to set a password? [yes] yes XAMPP: Write the password somewhere down to make sure you won't forget it!!! XAMPP: Password: XAMPP: Password (again): XAMPP: Setting new MySQL root password. XAMPP: Change phpMyAdmin's authentication method. XAMPP: The FTP password for user 'daemon' is still set to 'xampp'. XAMPP: Do you want to change the password? [yes] yes XAMPP: Password: XAMPP: Password (again): XAMPP: Reload ProFTPD...ok. XAMPP: Done. @SrvHome:~$
При запуске сервера, может появиться такая ошибка — XAMPP: Starting Apache.../opt/lampp/share/xampp/xampplib: строка 22: netstat: команда не найдена.
Пример вывода ошибки:
@SrvHome:~$ sudo /opt/lampp/lampp start Starting XAMPP for Linux 7.4.5-0... XAMPP: Starting Apache.../opt/lampp/share/xampp/xampplib: строка 22: netstat: команда не найдена /opt/lampp/share/xampp/xampplib: строка 22: netstat: команда не найдена ok. XAMPP: Starting MySQL.../opt/lampp/share/xampp/xampplib: строка 22: netstat: команда не найдена ok. XAMPP: Starting ProFTPD.../opt/lampp/share/xampp/xampplib: строка 22: netstat: команда не найдена ok. @SrvHome:~$
Сервер ругается на то, что не может найти утилиту — netstat.
Устанавливаем netstat
sudo apt install net-tools
Теперь при запуске сервера ошибок не наблюдается
@SrvHome:~$ sudo /opt/lampp/lampp start Starting XAMPP for Linux 7.4.5-0... XAMPP: Starting Apache...ok. XAMPP: Starting MySQL...ok. XAMPP: Starting ProFTPD...ok. @SrvHome:~$
Организация виртуальных хостов
Нам нужно отредактировать три файла – одного системного и двух конфигурационных самого XAMPP:
/etc/hosts/opt/lampp/etc/httpd.conf/opt/lampp/etc/extra/httpd-vhosts.conf
Исправления в /etc/hosts
Находим строку
127.0.0.1 localhost
и добавляем к ней site1.loc
В результате получится
127.0.0.1 localhost site1.loc
Где site1.loc, это адрес нашего проекта.
Исправления в /opt/lampp/etc/httpd.conf
Находим строку
#Include etc/extra/httpd-vhosts.conf
Приводим её к виду
Include etc/extra/httpd-vhosts.conf
то есть раскомментируем её.
Далее находим
AllowOverride none Require all denied
и меняем на
AllowOverride all Require all granted Order allow,deny Allow from all
Исправления в /opt/lampp/etc/extra/httpd-vhosts.conf
То, что есть в этом файле или удаляем или комментируем.
Добавляем наши настройки для localhost и нашего хоста
<VirtualHost *:80> ServerAdmin admin@site1.loc DocumentRoot /opt/lampp/htdocs ServerName localhost ErrorLog logs/localhost-error_log CustomLog logs/localhost-access_log common </VirtualHost> <VirtualHost *:80> ServerAdmin admin@site1.loc DocumentRoot /home/user/www/site1/public ServerName site1.loc ErrorLog /home/user/www/site1/error_log CustomLog /home/user/www/site1/access_log common </VirtualHost>
Пояснения:/home/user/www — путь к проектамsite1 — корневой каталог проектаpublic — каталог сайта проекта
Ниже можно добавлять новые секции для новых сайтов, меняя в них DocumentRoot, ServerName, ErrorLog, CustomLog.
Удаление XAMPP-сервера
Останавливаем службы XAMPP
sudo /opt/lampp/lampp stop
Делаем исполняемым файл uninstall
sudo chmod +x /opt/lampp/uninstall
Удаляем XAMPP
sudo /opt/lampp/uninstall