本文记录我在一台运行 WordPress 的 Debian 12 服务器上,通过 Nginx 手动部署 phpMyAdmin 的完整过程。目标是将 phpMyAdmin 单独作为一个独立站点运行,用于可视化管理 WordPress 的数据库。
🧱一、为什么不用 apt 安装?
虽然 apt install phpmyadmin
是最简单的方式,但它会默认配置 Apache,而我的站点使用的是 Nginx + PHP-FPM + WordPress,因此选择了手动安装 + 自定义 Nginx 配置的方式。
🗂二、下载并部署 phpMyAdmin
cd /usr/share/
sudo curl -s https://files.phpmyadmin.net/phpMyAdmin/5.2.2/phpMyAdmin-5.2.2-all-languages.zip -o phpmyadmin.zip
sudo unzip phpmyadmin.zip
sudo mv phpMyAdmin-*-all-languages phpmyadmin
sudo rm phpmyadmin.zip
设置临时目录和权限:
sudo mkdir /usr/share/phpmyadmin/tmp
sudo chown -R www-data:www-data /usr/share/phpmyadmin
sudo chmod 777 /usr/share/phpmyadmin/tmp
⚙️三、配置 phpMyAdmin 本体
复制并修改配置文件:
sudo cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
sudo nano /usr/share/phpmyadmin/config.inc.php
修改以下内容:
$cfg['blowfish_secret'] = 'yourSecureRandomKey9876!'; // 必填,用于 cookie 加密
🌐四、为 phpMyAdmin 单独配置一个 HTTPS 子域名
创建 Nginx 站点配置
sudo nano /etc/nginx/sites-available/phpmyadmin
示例配置如下(带注释):
server {
listen 80;
server_name phpmyadmin.example.com;
# 强制跳转到 HTTPS
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name phpmyadmin.example.com;
root /usr/share/phpmyadmin;
index index.php index.html;
# SSL 证书
ssl_certificate /etc/ssl/certs/phpmyadmin.example.com.crt;
ssl_certificate_key /etc/ssl/private/phpmyadmin.example.com.key;
# 日志
access_log /var/log/nginx/phpmyadmin_access.log;
error_log /var/log/nginx/phpmyadmin_error.log;
# 主访问入口
location / {
try_files $uri $uri/ =404;
}
# PHP 支持(根据实际 PHP-FPM 版本修改)
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
# 禁止访问隐藏文件
location ~ /\. {
deny all;
}
}
启用该站点并重载 Nginx:
sudo ln -s /etc/nginx/sites-available/phpmyadmin /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
🧪五、访问并使用
浏览器打开:
https://phpmyadmin.example.com
登录使用 WordPress 数据库账号密码(从 wp-config.php
中获取):
define( 'DB_USER', 'wpuser' );
define( 'DB_PASSWORD', 'password' );
📌总结
- ✅ 不影响现有 WordPress 网站
- ✅ 独立子域名、独立配置、HTTPS 安全
- ✅ 灵活自定义权限、日志、安全策略
如果你觉得这篇文章对你有帮助,欢迎留言交流。如果你也在使用 WordPress + Nginx 构建网站管理系统,别忘了将 phpMyAdmin 安全地独立部署是非常明智的选择!
声明:本文为原创文章,版权归深谋之道所有,欢迎分享本文,转载请保留出处!