主题
多站点虚拟主机配置
Nginx 支持在同一台服务器上部署多个网站,通过虚拟主机实现独立管理和访问。
一、基本配置
nginx
server {
listen 80;
server_name site1.example.com;
root /var/www/site1;
index index.html index.php;
access_log /var/log/nginx/site1_access.log;
error_log /var/log/nginx/site1_error.log;
}- server_name:绑定域名
- root:网站根目录
- access_log / error_log:独立日志文件
二、多个站点配置示例
nginx
server {
listen 80;
server_name site2.example.com;
root /var/www/site2;
index index.html;
}- 每个 server 块可配置不同的根目录、日志和端口
- 可根据域名或 IP 区分不同站点
三、HTTPS 支持
nginx
server {
listen 443 ssl;
server_name site1.example.com;
ssl_certificate /etc/nginx/ssl/site1.crt;
ssl_certificate_key /etc/nginx/ssl/site1.key;
root /var/www/site1;
}- 每个站点可独立配置 SSL 证书
- 配合 HTTP 301 跳转强制 HTTPS
四、优化与管理建议
- 使用
include指令,将每个站点配置拆分成独立文件,便于维护 - 设置独立日志,便于分析和调试
- 合理规划端口与域名,避免冲突
- 对高并发站点启用缓存和 Gzip,提高性能
通过配置多站点虚拟主机,Nginx 可以高效管理多个网站,实现独立访问控制、日志管理和性能优化。