当前位置:网站首页 >  百科

服务器多分站从零搭建 完整可复制配置与运维实操指南

时间:2026年06月02日 01:24:24 来源:易频IT社区

前置准备

提前准备好以下资源,无需额外技术基础,满足要求即可按步骤操作:

  • 1台运行CentOS 7/8系统的云服务器,获取服务器公网IP
  • 多个已完成ICP备案的域名(1个分站对应1个主域名,可带www子域名)
  • 云服务器后台安全组已开放80、443端口(入口方向允许访问)

环境安装与端口配置

使用SSH工具连接服务器后,执行以下命令完成Nginx安装和防火墙配置,所有命令直接复制执行即可:

``` 更新yum源并安装Nginx yum update -y && yum install nginx -y 启动Nginx并设置开机自启 systemctl start nginx && systemctl enable nginx 防火墙放行80(HTTP)和443(HTTPS)端口 firewall-cmd --add-service=http --add-service=https --permanent firewall-cmd --reload ```

分站创建与Nginx配置

1. 创建分站目录

每个分站单独存储文件,方便管理和维护,按以下格式创建,新增分站只需要重复创建对应目录即可:

``` 创建分站根目录,示例创建2个分站,可按需求新增 mkdir -p /data/wwwroot/site1.com && mkdir -p /data/wwwroot/site2.com 赋权避免权限不足导致访问错误 chmod -R 755 /data/wwwroot ```

2. 编写Nginx分站配置

我们采用每个分站单独一个配置文件的方式,方便新增删除,第一个分站配置直接按以下步骤操作,后续分站复制修改即可:

在路径/etc/nginx/conf.d/新建文件你的域名.conf,内容如下,直接复制,替换标注部分即可:

``` server { listen 80; 替换为你自己的分站域名,多个空格分隔 server_name site1.com www.site1.com; 替换为你刚才创建的分站目录 root /data/wwwroot/site1.com; index index.html index.php; 单独存储分站日志,方便排错 access_log /var/log/nginx/site1.com.access.log; error_log /var/log/nginx/site1.com.error.log; 证书验证固定配置,不需要修改 location ~ /.well-known/acme-challenge/ { root /data/wwwroot/site1.com; } 强制跳转HTTPS,不需要可以注释整行 return 301 https://$server_name$request_uri; } server { listen 443 ssl http2; server_name site1.com www.site1.com; root /data/wwwroot/site1.com; index index.html index.php; access_log /var/log/nginx/site1.com.access.log; error_log /var/log/nginx/site1.com.error.log; SSL证书路径,申请后自动生成,不需要修改 ssl_certificate /etc/letsencrypt/live/site1.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/site1.com/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; } ```

第二个及后续分站操作:复制上面的配置文件,修改四个地方即可:server_name的域名、root路径、日志文件名、证书路径的域名,命令示例:

``` 复制配置文件,替换成你自己的域名 cp /etc/nginx/conf.d/site1.com.conf /etc/nginx/conf.d/site2.com.conf 编辑修改,不会用vim的可以用服务器面板的文件编辑器修改 vi /etc/nginx/conf.d/site2.com.conf ```

域名解析与SSL证书申请

1. 域名解析:登录你的域名注册商后台,将每个分站的域名(包括www)解析到你的服务器公网IP,必须完成解析后再申请证书,否则会失败

服务器多分站从零搭建 完整可复制配置与运维实操指南

2. 申请免费SSL证书,执行以下命令即可自动完成配置,每个分站逐个申请:

``` 安装certbot证书申请工具 yum install epel-release -y && yum install certbot python2-certbot-nginx -y 替换为你的邮箱和分站域名,执行后自动完成配置 certbot --nginx -m your@email.com -d site1.com -d www.site1.com --agree-tos ```

配置生效与测试

所有配置完成后,执行以下命令检查配置并重载生效:

``` 检查Nginx配置语法是否正确 nginx -t ```

如果输出显示test is successful,说明配置正确,执行以下命令重载生效:

``` nginx -s reload ```

最后添加测试文件验证访问:

``` 添加测试页面,替换成你的分站目录 echo "分站1搭建成功" > /data/wwwroot/site1.com/index.html ```

打开浏览器访问你的域名,正常显示内容即搭建完成。

日常运维操作指南

  • 新增分站:重复「创建目录→复制修改配置→域名解析→申请证书→重载Nginx」即可,全程不超过5分钟
  • 删除分站:1. 删除对应配置文件rm /etc/nginx/conf.d/xxx.com.conf;2. 删除站点目录rm -rf /data/wwwroot/xxx.com;3. 执行nginx -s reload生效
  • SSL证书自动续期:Let's Encrypt证书有效期90天,执行以下命令添加自动续期定时任务即可,无需手动操作:echo "0 0 1 root certbot renew --quiet && nginx -s reload" >> /etc/crontab
  • 排错方法:访问出错直接查看对应分站的错误日志,命令:tail -f /var/log/nginx/你的域名.error.log,根据日志提示即可快速定位问题

常见问题解决

1. 访问显示403错误:一般是目录权限错误,重新执行chmod -R 755 /data/wwwroot即可,或检查配置中root路径是否和实际目录一致。

2. 证书申请失败:检查域名解析是否正确、服务器80端口是否开放(安全组和防火墙都要开放),域名是否已完成ICP备案。

3. Nginx配置检查不通过:检查配置文件中每行末尾是否漏写分号,域名和路径是否有拼写错误,按提示修改即可。

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图