centos

centos nginx多站点配置方法

小樊
33
2025-05-31 04:13:17
栏目: 智能运维

在CentOS上配置Nginx多站点主要涉及以下几个步骤:

1. 安装Nginx

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

sudo yum install epel-release
sudo yum install nginx

2. 配置防火墙

确保防火墙允许HTTP和HTTPS流量:

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

3. 创建站点目录

为每个站点创建一个目录,并将网站文件放在这些目录中。例如:

sudo mkdir -p /var/www/site1.com/html
sudo mkdir -p /var/www/site2.com/html

4. 配置Nginx

编辑Nginx配置文件,通常位于/etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。你可以为每个站点创建一个单独的配置文件。

示例:site1.com

创建一个名为site1.com.conf的文件:

sudo nano /etc/nginx/conf.d/site1.com.conf

添加以下内容:

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

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

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

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
}

示例:site2.com

创建一个名为site2.com.conf的文件:

sudo nano /etc/nginx/conf.d/site2.com.conf

添加以下内容:

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

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

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

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
}

5. 测试配置

在重新加载Nginx之前,测试配置文件是否有语法错误:

sudo nginx -t

6. 重新加载Nginx

如果配置文件没有问题,重新加载Nginx以应用更改:

sudo systemctl reload nginx

7. 配置DNS

确保你的域名(例如site1.comsite2.com)指向你的服务器IP地址。你可以在你的DNS提供商的管理界面中进行配置。

8. 启用SSL(可选)

如果你希望为站点启用HTTPS,可以使用Let’s Encrypt免费获取SSL证书,并配置Nginx使用这些证书。

安装Certbot

sudo yum install certbot python2-certbot-nginx

获取并安装证书

sudo certbot --nginx -d site1.com -d www.site1.com
sudo certbot --nginx -d site2.com -d www.site2.com

按照提示完成证书的获取和安装过程。

9. 验证配置

访问你的站点,确保它们正常工作,并且SSL证书已正确安装。

通过以上步骤,你可以在CentOS上成功配置Nginx多站点。

0
看了该问题的人还看了