今天带大家一起学习一下nginx。
什么是nginx
Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。
- Nginx其可以支持数以百万级别的TCP连接
- 开源
- 跨平台
- 稳定
- 反向代理
正向代理与反向代理
什么是正向代理呢?正向代理就是客户端非常明确要访问的服务器地址;服务器只清楚请求来自哪个代理服务器,而不清楚来自哪个具体的客户端;正向代理模式屏蔽或者隐藏了真实客户端信息。比如用户想要访问某国外网站,该网站被墙了,但是我们可以访问到一个代理服务器,这个代理服务器可以访问到这个国外网站。这样呢,用户对该国外网站的访问就需要通过代理服务器来转发请求,并且该代理服务器也会将请求的响应再返回给用户。这个上网的过程就是用到了正向代理。而反向代理就是是指以代理服务器来接受请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给请求连接的客户端。通过反向代理服务器访问目标服务器时,客户端是不知道真正的目标服务器是谁的。
怎么用
我们一般在服务器上使用nginx去部署一些web。这里我们以Ubuntu来做例子。
下载
我们可以利用apt来下载安装nginx。
- sudo apt-get update
我们先更新一下列表
然后开始下载
sudo apt-get install nginx
目录
我们可以查看我们nginx的运行状态
ps -ef | grep nginx
还可以查看nginx的几个重要的目录
whereis nginx
我们可以进入/etc/nginx目录下去编辑配置信息。
如果我们有一个打包好的dist目录,我们可以做如下配置完成部署
server {
listen 5176;
server_name localhost;
location / {
alias /home/ubuntu/otherDist/dist/;
index index.html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
最后重启我们nginx。
sudo /usr/sbin/nginx -s reload
开启对应端口防火墙,我们就可以看到我们部署的东西啦。