配置Web虚拟主机三种方法
基于域名的虚拟主机
通过不同域名区分网站,无需额外IP或端口,是最常见的配置方式。
| 配置项 | 说明 | 示例 |
|–|–|–|
| server_name
| 指定绑定的域名 | server_name example.com;
server_name www.example.com;
(支持多域名) |
| SSL证书 | 需为每个域名单独配置证书 | 使用ssl_certificate
和ssl_certificate_key
指向对应域名的证书文件 |
| 目录映射 | 每个域名对应独立的根目录 | root /var/www/example.com;
|
基于IP的虚拟主机
依赖服务器的多个IP地址,每个网站绑定不同IP,适用于IP充足的场景。
| 配置项 | 说明 | 示例 |
|–|–|–|
| listen
| 指定IP及端口组合 | listen 192.168.1.1:80;
|
| server_name
| 可省略或填入域名 | server_name ip1.example.com;
(可选) |
| 注意事项 | 需确保服务器已绑定多个IP | 通过操作系统网络配置添加多个IP地址 |
基于端口的虚拟主机
通过不同端口号区分网站,同一IP可复用,但用户访问需加端口号。
| 配置项 | 说明 | 示例 |
|–|–|–|
| listen
| 指定端口号(非默认80/443) | listen 8080;
|
| 访问方式 | 需在域名后追加端口 | http://example.com:8080
|
| 适用场景 | 适合内部测试或临时服务 | 常用于开发环境或轻量级服务 |
相关问题与解答
Q1:如何判断Nginx虚拟主机配置是否成功?
A1:可通过访问绑定的域名/IP/端口,检查是否能正常打开对应页面,若无法访问,需检查:
- Nginx配置文件语法是否正确;
- 域名DNS解析是否生效;
- 防火墙是否开放相关端口。
Q2:基于IP的虚拟主机是否需要SSL证书?
A2:若使用HTTP协议,无需证书;若开启HTTPS(如listen 192.168.1.1:443 ssl;
),则需为每个IP单独配置SSL证书,否则浏览器会提示安全风险。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/68565.html