上一篇
虚拟主机控制面板配置命令
- 虚拟主机
- 2025-08-24
- 5
主机控制面板配置命令包括启用站点(如
sudo a2ensite
)、禁用默认
配置(
sudo a2dissite
)、重启服务(
sudo systemctl restart apache2
)及Nginx符号链接设置等。
基础访问方式
协议类型 | 默认端口 | 适用场景 | 示例命令 |
---|---|---|---|
SSH | 22 | 命令行管理(推荐) | ssh root@服务器IP |
WebGUI | 80/443 | 可视化图形界面操作 | 浏览器输入 https://域名:端口 |
API调用 | 自定义 | 自动化脚本集成 | curl -X POST https://api.example.com/v1/... |
核心功能模块配置指令
域名绑定与解析
# 添加主域名(以DirectAdmin为例) /usr/local/directadmin/data/admin/scripts/add_domain.sh newdomain.com # 修改DNS记录(通过WHM) echo "NS1=ns1.yourhost.com;NS2=ns2.yourhost.com" > /etc/named.conf.local service named restart
注意:不同面板路径差异较大,建议优先使用面板提供的向导工具。
SSL证书部署
操作步骤 | CentOS命令 | Ubuntu命令 |
---|---|---|
安装Certbot插件 | yum install epel-release;yum install certbot-dns-cloudflare |
apt install python3-certbot-dns-cloudflare |
自动获取证书 | certbot certonly --dns-cloudflare --dns-cloudflare-credentials /path/to/creds.ini -d example.com |
同左 |
强制HTTPS跳转 | perl -pi -e 's/^SSL=off/SSL=on/g' /etc/httpd/conf.d/ssl.conf |
a2ensite default-ssl |
FTP账户创建
# Plesk面板操作流程: Websites & Domains → [目标站点] → Add New User → 设置用户名/密码 → 分配目录权限 # 手动创建(vsftpd): useradd -m -s /bin/bash ftpuser echo "ftpuser:U6aMy9vN7xZQjK" | chpasswd mkdir /home/ftpuser/uploads && chown ftpuser:ftpuser /home/ftpuser/uploads
数据库管理
数据库类型 | 创建命令 | 权限授予方法 |
---|---|---|
MySQL | CREATE DATABASE dbname; GRANT ALL PRIVILEGES ON dbname. TO 'user'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; |
通过phpMyAdmin或命令行执行 |
PostgreSQL | createdb mydb; createuser --pwprompt myuser; psql -c "ALTER USER myuser WITH PASSWORD 'secret';" |
使用GRANT ALL ON DATABASE mydb TO myuser; |
高级设置示例
PHP版本切换(cPanel)
- 登录cPanel → Software → Select PHP Version
- 选择目标版本(如8.2)→ Click Set as default
- 验证生效:
php -v
应显示已选版本号
Cron任务配置
# 每天凌晨备份数据库并上传至OSS 0 0 /usr/bin/mysqldump -u dbuser -pDbPass dbname | gzip > /backup/$(date +%Y%m%d).sql.gz && curl -X PUT -T "/backup/$(date +%Y%m%d).sql.gz" "OSS_ENDPOINT?access_key=AKIA..."
安全建议:敏感信息建议存储在环境变量中,避免明文写入脚本。
流量限制策略
参数 | 取值范围 | 作用说明 |
---|---|---|
LimitRequestBody |
10M~1G | 单个请求最大允许上传大小 |
IdleTimeout |
60s~3600s | 非活动连接超时断开时间 |
MaxKeepAliveRequests |
100 | 持久连接可处理的最大请求数 |
常见问题与解答
Q1: 无法通过SSH连接虚拟主机怎么办?
A: 按顺序排查以下可能原因:
1️⃣ 检查防火墙是否开放了22端口(firewall-cmd --list-all
)
2️⃣ 确认SSHD服务正在运行(systemctl status sshd
)
3️⃣ 确保root用户未被禁用(getent passwd root
查看账户状态)
4️⃣ 尝试更换加密算法:编辑/etc/ssh/sshd_config
添加Ciphers aes128-ctr,aes256-ctr
后重启服务
Q2: 如何快速迁移整个站点到新虚拟主机?
A: 推荐使用全量打包方案:
# 原服务器执行: tar -czvf site_backup.tar.gz /var/www/html/ logs/ database/ scp site_backup.tar.gz user@newhost:/tmp/ # 新服务器恢复: cd /var/www/html && tar -xzvf /tmp/site_backup.tar.gz # 同时导入数据库备份文件(注意调整字符集兼容性)
进阶技巧:对于动态网站,建议先停用缓存机制再迁移,避免