编译安装Nginx

  • A+

一、介绍

1.1、Nginx介绍

  Nginx : 是一款自由的、开源的、高性能HTTP服务器和反向代理服务器;也是一个IMAP、POP3、SMTP代理服务器;也就是说Nginx本身就可以托管网站(类似于Tomcat一样),进行Http服务处理,也可以作为反向代理服务器使用。

  它的设计不像传统的服务器那样使用线程处理请求,而是一个更加高级的机制—事件驱动机制,是一种异步事件驱动结构。

1.2、正想代理和反向代理

  •  正想代理

  正向代理通过下面的图理解其实就是用户想从服务器拿资源数据,但是只能通过proxy服务器才能拿到,所以用户A只能去访问proxy服务器然后通过proxy服务器去向server服务器数据,这种情况用户是明确知道你要访问的是谁,在我们生活中最典型的案例就是“翻墙“了,也是通过访问代理服务器最后访问外网的。

  • 反向代理

  反向代理其实就是客户端去访问服务器时,他并不知道会访问哪一台,感觉就是客户端访问了Proxy一样,而实则就是当proxy关口拿到用户请求的时候会转发到代理服务器中的随机(算法)某一台。而在用户看来,他只是访问了Proxy服务器而已,典型的例子就是负载均衡了。

编译安装Nginx

1.3、WEB服务器

Apache相对于Nginx的优点:

  • rewrite ,比nginx 的rewrite 强大
  • 动态页面,nginx处理动态请求是鸡肋,一般动态请求要apache去做,nginx只适合静态和反向。
  • 模块超多,基本想到的都可以找到
  • 少bug ,nginx 的bug 相对较多超稳定

Nginx相对于Apache的有点:

  • 轻量级,同样起web 服务,比apache占用更少的内存及资源 ,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。在高连接并发的情况下,Nginx是Apache服务器不错的替代品: Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一. 能够支持高达 50,000 个并发连接数的响应, 这归功于Nginx为我们选择了 epoll and kqueue 作为开发模型.
  • 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能
  • 高度模块化的设计,编写模块相对简单
  • 社区活跃,各种高性能模块出品迅速啊
  • Nginx本身就是一个反向代理服务器
  • 负载均衡能力突出,Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务, 也可以支持作为 HTTP代理 服务器对外进行服务. Nginx采用C进行编写, 不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多.

1.4、WEB缓存

  Nginx可以对不同的文件做不同的缓存处理,配置灵活,并且支持FastCGI_Cache,主要用于对FastCGI的动态程序进行缓存。配合着第三方的ngx_cache_purge,对制定的URL缓存内容可以的进行增删管理。

二、Nginx编译安装

2.1、安装依赖与下载软件包

# yum install openssl openssl-devel pcre pcre-devel -y

# wget http://nginx.org/download/nginx-1.13.7.tar.gz

2.2、编译安装

# useradd -s /sbin/nologin -m nginx

# tar xf nginx-1.13.7.tar.gz

# cd nginx-1.13.7

# ./configure --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --prefix=/usr/local/nginx-1.13.7

# make && make install

2.3、Nginx管理命令

# /usr/local/nginx/sbin/nginx -t            #检查配置是否正确

# /usr/local/nginx/sbin/nginx          #启动nginx

# /usr/local/nginx/sbin/nginx -s stop     #关闭Nginx

# /usr/local/nginx/sbin/nginx -s start     #启动Nginx

# /usr/local/nginx/sbin/nginx -s restart           #重启nginx

# /usr/local/nginx/sbin/nginx -s reload           #平滑重启

本篇就到这里,喜欢请关注,持续更新中···

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: