1.Nginx介绍
1.11Nginx是什么
Nginx是一个开源的,支持高性能、高并发的WWW服务器和代理服务器软件,它是由俄罗斯人Igor Svsoev开发,最初应用在俄罗斯的大型网站www.rambler.ru上,后来作者将源代码以类BSD许可证的形式开源出来供全球使用。
1.12Nginx的基本特性
- 可针对静态资源进行高速高并发访问并缓存
- 可使用反向代理加速,并进行数据缓存
- 支持简单负载均衡、节点健康检查
- 支持远程Fastcgi服务的缓存急加速
- 支持Fastcgi、SCGI、Memcached Servers的加速和缓存
- 具备模块化的结构:过滤器包括gzip压缩,ranges支持,chunked响应,XSLT,SSI及图像缩放登功能
1.13Nginx的WWW服务特性
- 支持基于域名,端口,IP的多虚拟主机站点
- 支持Keep-alive 和 pipelined连接
- 修改nginx配置时,可平滑重启,不中断业务访问
- 可自定义日志格式,临时缓冲写日志操作,快速轮询日志以及通过rsyslog处理日志
- 可利用信号控制nginx进程
- 支持3xx-5xx HTTP状态吗重定向
- 支持rewrite模块,支持URL重写以及正则表达式匹配
- 支持基于客户端IP地址和HTTP基本认证的访问控制
- 支持FLV流和MP4流技术产品的应用
- 支持HTTP响应速率限制
- 支持同一IP地址的并发连接数
- 支持邮件服务代理
1.13Nginx采用的模型
Nginx使用最新的epoll和kqueue异步网络I/O模型。与apache使用的传统的select模型相比,在处理大量连接的读写时,Nginx的epoll模型的运行机制更加的高效。
2.Nginx安装
2.1安装Nginx所需的pcre库
pcre的全程时perl compatible regular expressions,中文译名为perl兼容正则表达式,官方站点为http://www.pcre.org/,安装pcre库时为了使Nginx支持具备URI重写功能的rewrite模块,而rewrite模块功能几乎是企业应用所必须的.
使用yum的方式安装pcre
[root@www ~]#yum install -y pcre pcre-devel
[root@www ~]#rpm -qa pcre pcre-devel //查看安装结果
2.2安装Nginx所需的openssl-devel
Nginx在使用HTTPS服务的时候需要用到openssl模块,如果不安装openssl相关包,安装Nginx的过程中会报错
使用yum的方式安装openssl
[root@www ~]#yum install -y openssl openssl-devel
[root@www ~]#rpm -qa openssl openssl-devel
2.3开始安装Nginx
[root@www ~]#mkdir -p /home/lychee/tools
[root@www tools]#cd /home/lychee/tools
[root@www tools]#wget -q http://nginx.org/download/nginx-1.8.1.tar.gz
[root@www tools]#useradd nginx -s /sbin/nologin -M
[root@www tools]#tar xf nginx-1.8.1.tar.gz
[root@www tools]#cd nginx-1.8.1
[root@www nginx-1.8.1]#.configure --user=nginx --group=nginx --prefix=/application/nginx-1.8.1/ --with-http_stub_status_module --with-http_ssl_module
[root@www nginx-1.8.1]#make && make install
[root@www nginx-1.8.1]#ln -s /application/nginx-1.8.1 /application/nginx
.configure - -help查看编译参数说明
–prefix=PATH //设置安装路径
–user=USER //进程用户权限
–group=GROUP//进程用户组权限
–with-http_stub_status_module //激活状态信息
–with-http_ssl_module //激活ssl功能
其他说明
useradd user -s /sbin/nologin -M;-s是指定登录shell -M是不创建家目录
ln -s /application/nginx-1.8.1 /application/nginx 方便使用以及升级
3.Nginx启动
安装完Nginx后,需要启动Nginx服务才能对外提供服务
(1)启动前检查配置文件语法
[root@www ~]#/application/nginx/sbin/nginx -t
(2)启动Nginx
[root@www ~]#/application/nginx/sbin/nginx
(3)查看Nginx服务对应的端口情况
[root@www ~]#lsof -i :80
nginx 1639 root 11u IPv4 11010 0t0 TCP *:http (LISTEN)
nginx 1805 nginx 11u IPv4 11010 0t0 TCP *:http (LISTEN)
(4)查看Nginx服务实际情况
[root@www ~]#curl 127.0.0.1
4.无法获取Nginx页面排错
4.1 服务器排错
- 关闭SELinux
[root@www ~]#setenforce 0 //临时关闭SELinux
- 关闭防火墙
[root@www ~]#service iptables status
或者
[root@www ~]#chkconfig iptables off
4.2 客户端排错
第一步,在客户端ping服务端IP,排除物理线路影响
ping 127.0.0.1
第二步,在客户端上telnet服务端IP,端口,排除防火墙影响
telnet 127.0.0.1:80
第三步,wget命令检测 根据输出再进一步判断
wget 127.0.0.1