當我安裝 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
(如註解中所述,如果您在較高版本的 Ubuntu 上使用 Apache 2.4,則.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 以使用正確的資料庫即可。您可以(手動)在 /var/www 中並行安裝多個 phpmyadmin 實例並進行不同的配置;只需獲取 tar.gz 並以不同的名稱解壓縮即可。