应用场景
- http服务器,使用nginx作静态服务器、图片服务器
- 虚拟主机配置,将一台服务器拆分红多个网站部署
- 反向代理,能够隐藏真实的 ip 访问地址
- 配建接口网关(解决跨域问题)
- 实现网站的动静分离
- 防止DDos,防盗链
- 配置缓存
<!--more-->html
配置文件结构说明
仅仅有server,后面再进行补充nginx
# 内部建立服务器、监听端口 server { #server 监听的端口号 listen 80; #服务器name 配置域名 server_name solo.ning.com; #匹配全部url地址 location / { # 监听拦截后 跳转根目录 资源目录文件 html文件 root html # 默认首页 index.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; } }
Nginx虚拟主机配置
一、基于域名的虚拟主机,经过域名来区分虚拟主机——应用:外部网站跨域
二、基于端口的虚拟主机,经过端口来区分虚拟主机——应用:公司内部网站,外部网站的管理后台浏览器
三、基于ip的虚拟主机,几乎不用。缓存
基于虚拟主机配置域名
在hosts文件中添加 bbs.ning.com、www.ning.com 都映射到127.0.0.1上(下面默认,更改的话,会有说明)服务器
server { listen 80; server_name bbs.ning.com; location / { root data/bbs; # 在根目录中建立,index的内容就一<h1>BBS</h1> index index.html index.htm; } } server { listen 80; server_name www.ning.com; location / { root data/www; # 在根目录中建立,index的内容就一<h1>www</h1> index index.html index.htm; } }
效果分别为网站
基于端口的虚拟主机
server { listen 8080; server_name bbs.ning.com; location / { root data/bbs; # 在根目录中建立,index的内容就一<h1>BBS</h1> index index.html index.htm; } } server { listen 8081; server_name bbs.ning.com; #此处重复没问题 location / { root data/www; # 在根目录中建立,index的内容就一<h1>www</h1> index index.html index.htm; } }
效果:url
反向代理的配置
### 当客户端访问nginx 的时候,拦截域名访问为www.itmayiedu.com,监听的端口号为80,匹配全部url地址 ### 最终查找/data/www目录文件地址 server { ## server 监听的端口号 listen 80; ###服务name 配置域名,配置域名 server_name www.itmayiedu.com; # #charset koi8-r; #access_log logs/host.access.log main; ###location 匹配全部url地址 location / { ###nginx 反向代理转发的真实ip地址 proxy_pass http://127.0.0.1:8080; index index.html index.htm; } }
访问 www.itmayiedu.com 就给转到 http://127.0.0.1:8080 上。在浏览器上输入www.itmayiedu.com,其实也是有端口的,端口就是80,默认端口,只是省略了而已。spa