在Linux服务器上部署多站点前,需完成环境配置:安装Web服务器(如Nginx/Apache)、数据库(MySQL/MariaDB)和PHP/Python运行环境。通过包管理器一键安装核心组件:

sudo apt update
sudo apt install nginx mysql-server php-fpm
配置防火墙开放HTTP/HTTPS端口:
sudo ufw allow 'Nginx Full'sudo ufw enable
虚拟主机配置方法
通过虚拟主机实现多站点隔离,以Nginx为例:
- 在
/etc/nginx/sites-available/创建站点配置文件 - 写入基础配置模板:
server {
listen 80;
server_name domain1.com;
root /var/www/domain1;
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
使用符号链接激活配置:sudo ln -s /etc/nginx/sites-available/domain1 /etc/nginx/sites-enabled/
PHP与数据库环境隔离
为不同站点配置独立PHP进程池:
| 配置项 | 说明 |
|---|---|
| listen = /run/php/php7.4-domain1.sock | 创建专属Socket |
| user = domain1_user | 分配独立系统用户 |
| env[MYSQL_DB] = db_domain1 | 设置环境变量隔离数据库 |
在MySQL中创建专属数据库和用户:
CREATE DATABASE db_domain1;
GRANT ALL ON db_domain1.* TO 'user_domain1'@'localhost';
SSL证书自动化部署
使用Certbot为所有站点启用HTTPS:
sudo certbot –nginx -d domain1.com -d www.domain1.com -d domain2.net
自动续期配置:
- 定时任务:
sudo certbot renew --quiet - 强制HTTP跳转HTTPS(Nginx配置示例):
server {
listen 80;
server_name domain1.com;
return 301 https://$host$request_uri;
}
站点管理与维护技巧
高效管理多站点工作流:
- 目录标准化:统一路径格式
/var/www//public_html - 权限控制:
sudo chown -R www-data:www-data /var/www/domain1 - 日志分割:使用logrotate按日切割访问日志
- 备份脚本:自动化打包站点文件和数据库
故障排查命令:
sudo nginx -t # 检查配置语法
sudo systemctl reload nginx # 热重载服务
tail -f /var/log/nginx/error.log # 实时监控错误
容器化进阶方案
使用Docker实现环境级隔离:
- 为每个站点创建Dockerfile定义环境
- 通过docker-compose编排服务:
services:
wordpress_site:
image: wordpress:php7.4
volumes:
./wp_data:/var/www/html
ports:
8080:80"
结合反向代理实现域名映射:
location / {
proxy_pass http://localhost:8080;
}
内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。
本文由星速云发布。发布者:星速云。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/102827.html