在CentOS上配置Nginx多站點是一個常見的任務,以下是一些基本的步驟和技巧:
首先,確保你已經安裝了Nginx。如果沒有安裝,可以使用以下命令進行安裝:
sudo yum install epel-release
sudo yum install nginx
確保防火墻允許HTTP和HTTPS流量:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Nginx的站點配置文件通常位于/etc/nginx/conf.d/
或/etc/nginx/sites-available/
目錄下。你可以創建多個配置文件來管理不同的站點。
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;
}
}
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;
}
}
如果你將配置文件放在/etc/nginx/sites-available/
目錄下,你需要創建符號鏈接到/etc/nginx/conf.d/
目錄以啟用站點:
sudo ln -s /etc/nginx/sites-available/site1.conf /etc/nginx/conf.d/
sudo ln -s /etc/nginx/sites-available/site2.conf /etc/nginx/conf.d/
在重新加載Nginx之前,測試配置文件是否有語法錯誤:
sudo nginx -t
如果配置文件沒有問題,重新加載Nginx以應用更改:
sudo systemctl reload nginx
如果你需要為站點配置SSL,可以使用Let’s Encrypt免費證書。首先安裝Certbot:
sudo yum install certbot python2-certbot-nginx
然后運行Certbot來獲取并配置證書:
sudo certbot --nginx -d site1.example.com
sudo certbot --nginx -d site2.example.com
通過以上步驟,你可以在CentOS上成功配置Nginx多站點。根據具體需求,你可以進一步調整和優化配置文件。