Когда я устанавливаю phpmyadmin
apt-get install phpmyadmin
Чтобы получить к нему доступ, мне нужно написать следующий формат адреса
http://123.123.123.123/phpmyadmin
предположим, что это был IP-адрес моего сервера. Но что, если я хочу использовать поддомен, например
http://phpmyadmin.dbugger.com
Как мне настроить/изменить файлы конфигурации в Apache, чтобы все заработало?
решение1
Если вы установили phpMyAdmin с помощью apt-get
, файлы обычно устанавливаются в /usr/share/phpmyadmin
. Следовательно, создание новой конфигурации виртуального хоста и указание DocumentRoot
директивы на /usr/share/phpmyadmin
должно сработать.
Apache хранит свою конфигурацию для каждого сайта в файле /etc/apache2/sites-available
.
Создайте /etc/apache2/sites-available/phpmyadmin.dbugger.com
(как отмечено в комментариях, если вы используете Apache 2.4 в более поздней версии Ubuntu, .conf
для имени требуется расширение), затем заполните его следующим содержимым:
<VirtualHost *:80>
ServerName phpmyadmin.dbugger.com
ServerAdmin [email protected]
DocumentRoot /usr/share/phpmyadmin
<Directory />
Options FollowSymLinks
DirectoryIndex index.php
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_flag register_globals Off
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/
</IfModule>
</Directory>
# Authorize for setup
<Directory setup>
<IfModule mod_authn_file.c>
AuthType Basic
AuthName "phpMyAdmin Setup"
AuthUserFile /etc/phpmyadmin/htpasswd.setup
</IfModule>
Require valid-user
</Directory>
# Disallow web access to directories that don't need it
<Directory libraries>
Order Deny,Allow
Deny from All
</Directory>
<Directory setup/lib>
Order Deny,Allow
Deny from All
</Directory>
</VirtualHost>
Включите виртуальный хост:
sudo a2ensite phpmyadmin.dbugger.com
Затем перезагрузите Apache:
sudo service apache2 reload
решение2
Я не думаю, что это имеет значение. phpmyadmin подключается к той базе данных, которую вы ему указываете, это не имеет никакого отношения к вашим веб-сайтам или доменным именам. Так что если у вас есть два поддомена, которые используют разные базы данных, просто настройте phpmyadmin на использование нужной. Вы можете (вручную) установить несколько экземпляров phpmyadmin в /var/www параллельно и настроить их по-разному; просто получите tar.gz и распакуйте под разными именами.