初识Nginx配置虚拟主机
Nginx配置虚拟主机
在nginx 安装目录下面找到
/nginx/conf/nginx.conf
文件修改它
1. 通过端口区分不同的虚拟主机
1.1 配置说明
# 一个server节点 就是一个虚拟主机
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html; #这个html是nginx安装目录下的html目录
index index.html index.htm;
}
}
1.2 添加配置虚拟主机
- (1) 配置代码示例
server {
listen 801;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
- (2) 注意事项
修改完成需要每次配置文件修改之后都需要重新加载配置文件
nginx -s reload
2. 通过域名区分不同的虚拟主机
2.1 名词解释
2.1.1 什么是域名呢?
域名就是网站例如下面地址
- 百度
www.baidu.com
- 淘宝
www.taobao.com
- 京东商城
www.jd.com
2.1.2 一级域名/*域名? 如下所示类型
- 百度的*域名
baidu.com
- 京东的*域名
jd.com
一级域名又称为*域名,大家需要注意的是,www.lisp.com这种形式的域名并不是一级域名,它只是一个二级域名,也就是说www只是一个主机名
真正的一级域名是由一个合法的字符串+域名后缀组成,所以,lisp.com这种形式的域名才是一级域名,lisp是域名主体,.com是域名后缀,可以是.net也是域名后缀
2.1.3 二级域名
所谓的二级域名实际就是一个一级域名下面的主机名,顾名思义,它是在一级域名前面加上一个字符串,比如asdx.lisp.com,它可以拥有与根*域名同样的功能,并且通过设置,可以拥有和跟*域名完全一样的功能 通常是如下所示的样子
- 百度图片的二级域名
image.baidu.com
- 京东商品服务的二级域名
item.jd.com
2.1.4 三级域名
同二级域名, 三级域名依附于二级域名之下的
- 给男装图片单独分类的三级域名
nan.image.baidu.com
2.1.5 通过域名访问网站流程说明
(图片来自于网络)
- (1) DNS服务器:
把域名解析为ip地址。保存的就是域名和ip的映射关系,可以简单的理解为一个MAP<KEY,VALUE>的形式,一个域名对应一个ip地址,一个ip地址可以被多个域名绑定.
2.2 配置域名
- (1) 修改nginx 配置文件 如下:
# 这个等下可以访问
server {
listen 80;
server_name www.taobao.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
# 我们的需要代理到其他服务器,所以需要用到proxy_pass参数
proxy_pass http://www.baidu.com;
}
}
# 这个不可以访问
server {
listen 80;
server_name www.baidu.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-baidu;
index index.html index.htm;
}
}
-
(2) 我们可以通过 SwitchHost 修改本地host,修改后,需要切换到修改的host哦
-
(3) 验证下 在浏览器输入地址
http://www.taobao.com
-
(4) 验证下 在浏览器输入地址
http://www.baidu.com
好了! 到此Nginx配置虚拟主机结束 …