Debian10亚马逊云phpMyAdmin域名子路径HTTPS访问配置问题
问题核心原因
之前操作失效是两个认知错误导致的:
$cfg['Servers'][$i]['host']配置项是phpMyAdmin后台连接数据库服务的地址,和外部访问phpMyAdmin的域名没有任何关系。如果数据库和phpMyAdmin部署在同一台服务器,这个值必须保持localhost或127.0.0.1,改成域名反而会因为数据库未开放远程访问、域名回环解析异常导致连库失败。- 直接移动phpMyAdmin目录到站点根目录后,大概率是文件权限、Web服务器路径匹配规则、伪静态拦截导致程序无法运行,完全不需要移动原phpMyAdmin目录,通过Web服务器别名映射的方式实现路径访问是最稳定、改动最小的方案。
前置准备
先把之前改乱的配置还原:
- 删除之前移动到
/var/www/html/myweb/phpMyAdmin的目录,将phpMyAdmin配置文件中的$cfg['Servers'][$i]['host']改回原值localhost,保留原路径/var/www/html/phpMyAdmin的所有文件(当前公网IP能正常访问,说明原目录的文件、基础权限是正常的) - 确认
https://myweb.com已经可以正常访问,站点SSL证书配置无报错。
分环境配置步骤
环境1:使用Apache作为Web服务器(Debian安装phpMyAdmin的默认适配环境)
- 编辑myweb.com的443端口SSL虚拟主机配置,默认路径为
/etc/apache2/sites-available/myweb.com-ssl.conf - 在
<VirtualHost *:443>配置块内部、站点根目录配置项之后,添加如下别名规则:Alias /phpMyAdmin /var/www/html/phpMyAdmin <Directory /var/www/html/phpMyAdmin> Options FollowSymLinks AllowOverride All Require all granted </Directory> - 如果站点根目录的
.htaccess配置了伪静态规则(比如WordPress、ThinkPHP等框架的路由重写),需要在伪静态规则最顶部添加排除规则,避免/phpMyAdmin路径被站点路由拦截:RewriteRule ^phpMyAdmin - [L,NC] - 执行配置语法校验:
apache2ctl configtest,返回Syntax OK后重载服务生效:systemctl reload apache2
环境2:使用Nginx作为Web服务器
- 编辑myweb.com的443端口站点配置,默认路径为
/etc/nginx/sites-available/myweb.com - 在配置块内、原有
location /规则的最前面,添加phpMyAdmin专属匹配规则(注意fastcgi_pass路径要和你站点当前使用的PHP-FPM套接字路径一致):location /phpMyAdmin { alias /var/www/html/phpMyAdmin; index index.php index.html; location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_pass unix:/run/php/php7.3-fpm.sock; } location ~* ^/phpMyAdmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { alias /var/www/html/phpMyAdmin/$1; } } - 执行配置语法校验:
nginx -t,返回测试成功提示后重载服务生效:systemctl reload nginx
权限与AWS平台注意事项
- 如果之前移动目录改乱了权限,执行以下命令统一phpMyAdmin目录权限为Web服务运行用户(Debian下Apache、Nginx默认运行用户均为www-data):
chown -R www-data:www-data /var/www/html/phpMyAdmin chmod -R 755 /var/www/html/phpMyAdmin - 确认AWS实例对应的安全组规则已经放行443端口入站流量,配置规则和现有80端口放行规则保持一致即可。
- 配置完成后清空浏览器缓存,直接访问
https://myweb.com/phpMyAdmin即可正常打开登录页,不需要额外修改phpMyAdmin其他配置项。
内容的提问来源于stack exchange,提问作者user6642297
相关产品推荐
相关产品推荐

