系统环境
[root@web ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@web ~]# uname -a Linux db02 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Nginx是一个开源的,支持高性能、高并发的WWW服务器和代理服务软件
nginx软件常见的使用方式或架构为:LNMP(linux nginx mysql php)
Nginx的特点或优势
- 支持高并发:能支持几万并发连接(特别是静态小文件业务环境)
- 资源消耗少:在3万并发连接下,开启10个Nginx线程消耗的内存不到200MB
- 可以做HTTP反向代理及加速缓存、即负载均衡功能,内置对RS节点服务器健康检查功能,这相当于专业的Haproxy软件或LVS的功能。
- 具备Squid等专业缓存软件等的缓存功能。
- 支持异步网络I/O事件模型epoll(Linux 2.6+)(绘图说明同步和异步)
大并发写操作;先写内存,再将内存数据存储到硬盘中---保证访问效率
大并发读操作;先写磁盘,再将磁盘数据存储到内存中---保证数据安全
总结:高并发-->资源消耗少-->功能多样(web服务/负载均衡/支持缓存)-->通讯模型先进(epoll)
Nginx编译安装步骤
一、解决nginx依赖包
需要的依赖:
pcre:兼容perl语言正则表达式,perl compatible regular expressions rewirte模块 参数信息(perl方式定义正则表达式)
openssl:https
注意:所有安装依赖软件,后面都要加上-devel
[root@web ~]# yum install -y pcre-devel openssl-devel 下载nginx [root@web tools]# wget http://nginx.org/download/nginx-1.10.2.tar.gz [root@web tools]# ll total 892 -rw-r--r-- 1 root root 910812 Oct 24 10:26 nginx-1.10.2.tar.gz
二、解压nginx、创建管理用户、配置nginx
[root@web tools]# tar xf nginx-1.10.2.tar.gz [root@web tools]# ll total 896 drwxr-xr-x 8 1001 1001 4096 Oct 18 2016 nginx-1.10.2 -rw-r--r-- 1 root root 910812 Oct 24 10:26 nginx-1.10.2.tar.gz [root@web tools]# cd nginx-1.10.2 [root@web nginx-1.10.2]# useradd -s /sbin/nologin www -M [root@web nginx-1.10.2]# id www uid=2223(www) gid=2223(www) groups=2223(www) [root@web01 nginx-1.10.2]# ./configure --prefix=/application/nginx-1.10.2 --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --prefix:表示指定软件安装到哪个目录中,指定目录不存在会自动创建 --user/--group:nginx工作进程由哪个用户运行管理 --with-http_stub_status_module:表示启动nginx状态模块功能(用户访问nginx的网络信息) --with-http_ssl_module:启动https功能模块