我使用以下说明将 phpMyAdmin 安装到 Centos 7 网络服务器中:
wget https://files.phpmyadmin.net/phpMyAdmin/4.6.5.2/phpMyAdmin-4.6.5.2-all-languages.tar.gz
tar xvzf phpMyAdmin-4.6.5.2-all-languages.tar.gz
mv phpMyAdmin-4.6.5.2-all-languages phpmyadmin
mv phpmyadmin /var/www/html/
奇怪的是(与我在其他问题中读到的不同),phpMyAdmin 安装在这里:
/var/www/html/phpmyadmin
phpmyadmin 配置文件在这里:
/var/www/html/phpmyadmin/config.inc.php
使用默认的 apache 配置,可以从 中查看网站/var/www/html
,从 中查看 phpMyAdmin /var/www/html/phpmyadmin
,URL 如下所示:
http://www.foo.com/phpmyadmin
到目前为止一切顺利,一切正常。
但是,我添加了一个虚拟主机,现在正在为该网站提供服务/var/www/foo.com/public_html
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/foo.com/public_html
ServerName foo.com
ServerAlias www.foo.com
ErrorLog /var/www/foo.com/error.log
</VirtualHost>
如果我这样做mv /var/www/html/phpmyadmin /var/www/foo.com/public_html
,它就可以工作,但是当通过 FTP 登录时,我不希望 phpmyadmin 文件夹在该文件夹下可见/var/www/foo.com/public_html
。
有没有办法将 phpmyadmin 保留在其原始位置/var/www/html/phpmyadmin
,但仍然可以通过 url 访问http://foo.com/phpmyadmin
?
答案1
实际上,只要有 rx 权限(不确定写入权限),您就可以将该文件夹放在任何地方。
对于阿帕奇 v1:
编辑/etc/httpd/conf-available/phpmyadmin.conf
或在httpd
文件夹所在的任何位置
添加该行Alias /phpmyadmin /location-of-folder
(如果尚不存在)
运行systemctl restart httpd
对于阿帕奇 v2:
编辑/etc/apache2/conf-available/phpmyadmin.conf
或在apache2
文件夹所在的任何位置
添加该行Alias /phpmyadmin /location-of-folder
(如果尚不存在)
运行systemctl restart apache2
答案2
/var/www/html
只需在=>文件夹中创建指向原始 phpmyadmin 文件夹的符号链接
ln -s {path of phpmyadmin} /var/www/html/phpmyadmin
,并将 httpd 配置为允许带有FollowSymLinks
选项的符号链接