Nginx是一个的静态文件和反向代理服务,轻量,方便部署,而且性能极高.
看完这篇文章, 你将点亮NGINX配置虚拟主机
, 反向代理
等技能点.
深入浅出
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
}
}
上面这是一个nginx
最基本的配置, 分http
代码块, server
代码块, 其中今天要玩的就是server
这个代码块.
开始操作
首先在nginx
的静态文件夹保证有两个html文件
, 分别为index.html
、page1.html
, 里面的内容自己随便写, 只要能分清楚是哪个文件就好.
正常启动
正常启动Nginx, 访问通过服务器地址访问, 会访问到index.html
的内容.
虚拟主机
第一个server代码块不需要更改, 下面紧接着添加:
server {
listen 80;
server_name page1.com;
location / {
root html;
index page1.html;
}
}
这样, 只要访问这个服务器的时候,请求头的Host
键内容为page1.com
, 可以通过抓包或者修改hosts
文件的方式来达到目的.
反向代理
第二个server代码块不需要更改, 修改第一个server代码块的内容为:
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://hls.easy.echosite.cn/;
}
}
重启服务器, 访问localhost
或者服务器真实IP, 你会发现, 显示的结果是你输入的http://hls.easy.echosite.cn
的内容, 但是浏览器的URL依旧是localhost
或服务器IP.
防盗链配置
原理: 通过nginx的if判断, 只允许通过合法的域名访问本网站, 其余的域名访问本网站的时候直接返回403。
server {
listen 80;
server_name youdoamin.com;
if ($host !~* ^youdomain.com$)
{
return 403;
}
location / {
root html;
index index.html index.htm;
}
}
临了, 最后的配置文件样子:
其实Nginx还有很多脚本类的东西, 太过深入就需要自己去研究了, NGINX一般还是作为接入层的反向代理去使用, 配置方便, 也轻量, 真的是做WEB必备的反向代理服务.
最后~ 文章中演示的hls.easy.echosite.cn
是使用EchoSite2.0 内网穿透,就选他了!所内网穿透用来测试的, 如果有需要内网穿透的可以了解一下.