温馨提示×

ubuntu sqladmin怎么绑定域名

小樊
42
2026-08-06 04:06:11
栏目: 云计算

Ubuntu 上把 sqladmin(通常指 phpMyAdmin 或类似数据库管理工具)绑定到域名,本质就是 通过 Web 服务器(Nginx / Apache)配置一个域名虚拟主机,然后把 sqladmin 放进去。下面给你两种最常见方案。


一、前提条件

  1. 已安装 sqladmin
    • 常见的是 phpMyAdmin
    • 或你自己部署的 sqladmin 项目
  2. 域名已解析
    sqladmin.example.com → 服务器公网 IP
    
  3. 已安装 Web 服务
    • Nginx 或 Apache(二选一)

二、使用 Nginx 绑定域名(推荐)

1️⃣ 假设 phpMyAdmin 路径

/usr/share/phpmyadmin

或你自己部署的:

/var/www/sqladmin

2️⃣ 创建 Nginx 虚拟主机

sudo nano /etc/nginx/sites-available/sqladmin

示例配置(phpMyAdmin):

server {
    listen 80;
    server_name sqladmin.example.com;

    root /usr/share/phpmyadmin;
    index index.php index.html;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.1-fpm.sock; # 根据 PHP 版本调整
    }

    location ~ /\.ht {
        deny all;
    }
}

✅ 如果是自己项目:

root /var/www/sqladmin;

3️⃣ 启用配置

sudo ln -s /etc/nginx/sites-available/sqladmin /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

4️⃣ (强烈建议)配置 HTTPS

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d sqladmin.example.com

三、使用 Apache 绑定域名

1️⃣ 创建虚拟主机

sudo nano /etc/apache2/sites-available/sqladmin.conf
<VirtualHost *:80>
    ServerName sqladmin.example.com
    DocumentRoot /usr/share/phpmyadmin

    <Directory /usr/share/phpmyadmin>
        Options FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/sqladmin_error.log
    CustomLog ${APACHE_LOG_DIR}/sqladmin_access.log combined
</VirtualHost>

2️⃣ 启用配置

sudo a2ensite sqladmin.conf
sudo systemctl reload apache2

3️⃣ HTTPS

sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d sqladmin.example.com

四、安全建议(非常重要)

不要直接暴露 sqladmin 到公网
推荐做法:

方案 1:限制 IP

allow 1.2.3.4;
deny all;

方案 2:加 Basic Auth

sudo apt install apache2-utils
htpasswd -c /etc/nginx/.htpasswd admin
location / {
    auth_basic "Restricted";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

方案 3:改路径

https://sqladmin.example.com/dbadmin

五、常见问题

❌ 403 / 404

  • 检查 root 路径是否正确
  • 检查 PHP-FPM 是否运行

❌ 域名打不开

ping sqladmin.example.com

❌ phpMyAdmin 页面空白

sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx

六、总结

核心步骤

  1. 域名解析到服务器
  2. 配置 Nginx / Apache 虚拟主机
  3. 绑定 sqladmin 目录
  4. 配置 HTTPS
  5. 加强安全限制

如果你愿意,可以把下面信息发我,我可以给你精确配置

  • ✅ 用的是 phpMyAdmin 还是自定义 sqladmin
  • Nginx 还是 Apache
  • Ubuntu 版本
  • 域名示例

我可以直接给你一份「可直接复制用」的完整配置。

0