使用nginx配置虚拟主机
来源:互联网 发布:富阳法院拍卖淘宝网 编辑:程序博客网 时间:2024/05/14 19:06
什么是虚拟主机
虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供www服务,这样就可以实现一台主机对外提供多个web服务,每个虚拟主机之间是独立的,互不影响的。
通过nginx可以实现虚拟主机的配置,nginx支持三种类型的虚拟主机配置,
1、基于ip的虚拟主机,
2、基于域名的虚拟主机
3、基于端口的虚拟主机
nginx配置文件的结构
从第一个虚拟主机的例子可以看出nginx的配置文件结构如下:
......
events {
.......
}
http{
.......
server{
.......
}
server{
.......
}
}
每个server就是一个虚拟主机。
基于域名的虚拟主机配置
端口相同域名不同
1 需求
两个域名指向同一台nginx服务器,用户访问不同的域名显示不同的网页内容。
两个域名是aaa.test.com和bbb.test.com
nginx服务器使用虚拟机192.168.101.3
2 准备环境
创建192.168.101.3虚拟机,保证本地电脑和虚拟网络通畅。
在192.168.101.3上安装nginx。
通过host文件指定aaa.test.com和bbb.test.com对应192.168.101.3虚拟机:
修改window的hosts文件:(C:\Windows\System32\drivers\etc)
t1
3 html目录创建
在192.168.101.3上创建/usr/local/aaa_html,此目录为aaa.test.com域名访问的目录
在192.168.101.3上创建/usr/local/bbb_html,此目录为bbb.test.com域名访问的目录
目录中的内容使用nginx自带的html文件,将/usr/local/nginx/html中的内容拷贝分别拷贝到上边两个目录中,并且将aaa_html目录中的index.html内容改为:“Welcome to aaa nginx!”
将bbb_html目录中的index.html内容改为“Welcome to bb bnginx!”
4 配置虚拟主机
修改/usr/local/nginx/conf/nginx.conf文件,添加两个虚拟主机,如下:
配置虚拟主机aaa.test.com
server { #监听的ip和端口,配置本机ip和端口 listen 192.168.101.3:80; #虚拟主机名称是aaa.test.com,请求域名aaa.test.com的url将由此server配置解析 server_name aaa.test.com #所有的请求都以/开始,所有的请求都可以匹配此location location / { #使用root指令指定虚拟主机目录即网页存放目录 #比如访问http://ip/test.html将找到/usr/local/aaa_html/test.html #比如访问http://ip/item/test.html将找到/usr/local/aaa_html/item/test.html root /usr/local/aaa_html; #指定欢迎页面,按从左到右顺序查找 index index.html index.htm; } } #配置虚拟主机bbb.test.comserver { listen 192.168.101.3:80; server_name bbb.test.com; location / { root /usr/local/bbb_html; index index.html index.htm; }}
5 测试
访问aaa.test.com、bbb.test.com
基于端口的虚拟主机
域名相同端口不同
1 需求
nginx对外提供80和8080两个端口监听服务。
请求80端口则请求html80目录下的html
请求8080端口则请求html8080目录下的html
2 准备环境
创建192.168.101.3虚拟机,保证本地电脑和虚拟网络通畅。
在192.168.101.3上安装nginx。
3 html目录创建
将原来nginx的html目录拷贝两个目录 “html80”和“html8080”,为了方便测试需要修改每个目录下的index.html内容使之个性化。
参考基于ip或域名的虚拟主机章节。
4 配置虚拟主机
修改/usr/local/nginx/conf/nginx.conf文件,添加两个虚拟主机,如下:
#user nobody;worker_processes 1; events { worker_connections 1024;} http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; #配置虚拟主机 server { #监听的ip和端口,配置80 listen 80; #虚拟主机名称这里配置ip地址 server_name 192.168.101.3; #所有的请求都以/开始,所有的请求都可以匹配此location location / { #使用root指令指定虚拟主机目录即网页存放目录 #比如访问http://ip/test.html将找到/usr/local/html3/test.html #比如访问http://ip/item/test.html将找到/usr/local/html3/item/test.html root /usr/local/nginx/html80; #指定欢迎页面,按从左到右顺序查找 index index.html index.htm; } } #配置虚拟主机 server { listen 8080; server_name 192.168.101.3; location / { root /usr/local/nginx/html8080; index index.html index.htm; } } }
5 测试
启动 nginx,查看端口监听状态:
访问http://192.168.101.3
t3
访问http://192.168.101.3:8080
- 使用nginx配置虚拟主机
- nginx使用include配置多虚拟主机
- 03-使用Nginx配置虚拟主机(MAC)
- Nginx 配置虚拟主机
- nginx配置虚拟主机
- 【NGINX】虚拟主机配置示例
- Nginx虚拟主机配置教程
- Nginx 虚拟主机 VirtualHost 配置
- Nginx虚拟主机配置教程
- nginx配置虚拟主机
- nginx配置+虚拟主机
- Nginx虚拟主机配置
- Nginx 虚拟主机 VirtualHost 配置
- nginx虚拟主机配置实例
- Nginx 虚拟主机 VirtualHost 配置
- Nginx 虚拟主机 VirtualHost 配置
- nginx多虚拟主机配置
- Nginx的虚拟主机配置
- Spring源码分析之RequestContextListener
- npm 权限问题 报错4048
- CGAL 4.10.1 官方文档 软件包概述 ——几何内核类
- Ubuntu设置root密码
- opnet常见问题
- 使用nginx配置虚拟主机
- my 1st .md
- 重写了equals()为什么要重写hashCode()方法
- scp批量自动远程复制脚本不需要输入密码
- java websocket原理及其简易实现
- iOS静态库开发中对Bitcode的支持
- PHP基础之数组3
- OpenCV 3.3使用CMake 3.9.2和Visual Studio 2017配置win7 32位系统的开发环境
- IOS之静态库