玖叶教程网

前端编程开发入门

还在撸猫么?来试试Nginx吧(还在撸流浪猫吗)

什么是Nginx

在web时代,apache、tomcat、undertow都是大名鼎鼎的web服务容器,但是今天编者要介绍的是另一款web服务器nginx,可能大家并没有听过。但是Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locator)URL作为沟通依据,通过HTTP协议提供各种网络服务。Apache的发展时期很长,在Apache大行其道的时代,互联网产业远比不上现在。所以它被设计为一个重量级的。它不支持高并发的服务器。在Apache上运行数以万计的并发访问,会导致服务器消耗大量内存。操作系统对其进行进程或线程间的切换也消耗了大量的CPU资源,导致HTTP请求的平均响应速度降低。这些都决定了Apache不可能成为高性能WEB服务器,轻量级高并发服务器Nginx就应运而生了。而要真正的对Nginx下一个定义,它究竟是什么,能干些什么呢?Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。

反向代理又是个什么鬼

在了解反向代理之前,我们先来聊聊啥是正向代理。正向代理,架设在客户机与目标主机之间,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。典型的正向代理应用场景有哪些?各位看官看着这里马上就可能会脱口而出了,找个代理服务器翻墙就是正向代理的典型应用。不错,那么对应的反向代理又是什么呢?所谓反向代理,就是架设在服务器端,通过缓冲经常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器与目标主机一起对外表现为一个服务器。明白了吧,正向代理就是为我们这些散户服务的,而反向代理是为那些有服务资源的庄家服务的。

Nginx的安装

  • 首先进入到http://nginx.org/en/download.html进行安装包的下载

  • 注意自己的操作系统,里面的安装包有的是针对linux环境下的,有的是针对window环境下的,看官注意自行区分一下。
  • 安装Nginx,对下载后的Nginx压缩包进行解压

  • 启动Nginx。有两种方式,一种是直接双击运行上图中的Nginx.exe,另外一种就是
  • 打开cmd命令窗口,切换到nginx解压目录下,输入命令 nginx.exe 或者 start nginx。
  • 采取以上两种方式启动了Nginx后,可以通过在浏览器中访问http://localhost:80来验证Nginx是否成功启动,如果一切正常的话,浏览器页面中应该出现下图:

  • 配置Nginx
  • 可能各位看官注意到了,浏览器中的访问端口是8999,这是因为不好意思我的80端口被占用了,所以我把Nginx的服务端口改了,那么如何修改Nginx的服务端口以及其他的配置呢?秘密就在安装路径下的conf文件夹下的nginx.conf文件:

  • 看到没有,这里被改成了8999,同时告诉大家,当我们修改了nginx的配置文件nginx.conf 时,不需要关闭nginx后重新启动nginx,只需要执行命令 nginx -s reload 即可让改动生效。
  • 关闭Nginx。如果使用cmd命令窗口启动nginx,关闭cmd窗口是不能结束nginx进程的,可使用两种方法关闭nginx:
  1. 输入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx)
  2. 使用taskkill taskkill /f /t /im nginx.exe

Nginx的安装先讲到这里,那么如何利用nginx代理服务器做负载均衡呢?请听下回分解!

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言