centos

centos nginx多站点部署方案

小樊
57
2025-07-02 14:45:36
栏目: 智能运维

在CentOS上部署多个Nginx站点的方案如下:

1. 安装Nginx

首先,确保你的CentOS系统已经安装了Nginx。如果没有安装,可以使用以下命令进行安装:

sudo yum install epel-release
sudo yum install nginx

2. 配置多个站点

Nginx通过配置文件来管理不同的站点。每个站点通常对应一个配置文件,这些配置文件通常位于/etc/nginx/conf.d//etc/nginx/sites-available/目录下。

2.1 创建站点配置文件

/etc/nginx/conf.d/目录下创建一个新的配置文件,例如site1.conf

sudo vi /etc/nginx/conf.d/site1.conf

在文件中添加以下内容:

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

    root /var/www/site1;
    index index.html index.htm;

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

同样地,为第二个站点创建site2.conf

sudo vi /etc/nginx/conf.d/site2.conf

添加以下内容:

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

    root /var/www/site2;
    index index.html index.htm;

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

2.2 启用站点配置

如果你将配置文件放在/etc/nginx/sites-available/目录下,需要创建符号链接到/etc/nginx/conf.d/目录:

sudo ln -s /etc/nginx/sites-available/site1 /etc/nginx/conf.d/site1.conf
sudo ln -s /etc/nginx/sites-available/site2 /etc/nginx/conf.d/site2.conf

3. 配置DNS

确保你的域名(例如site1.example.comsite2.example.com)已经正确配置了DNS记录,指向你的服务器IP地址。

4. 测试配置并重启Nginx

在修改配置文件后,测试Nginx配置是否正确:

sudo nginx -t

如果没有错误,重启Nginx以应用更改:

sudo systemctl restart nginx

5. 配置防火墙

确保防火墙允许HTTP(端口80)和HTTPS(端口443)流量:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

6. 配置SSL(可选)

如果你需要为站点配置SSL,可以使用Let’s Encrypt免费证书。以下是使用Certbot安装和配置SSL的步骤:

sudo yum install certbot python2-certbot-nginx
sudo certbot --nginx -d site1.example.com -d site2.example.com

按照提示完成SSL证书的安装和配置。

7. 验证站点

打开浏览器,访问http://site1.example.comhttp://site2.example.com,确保站点能够正常访问。

通过以上步骤,你可以在CentOS上成功部署多个Nginx站点。

0
看了该问题的人还看了