### Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。 Nginx 是一个很强大的高性能Web和反向代理服务器,它具有很多非常优越的特性: * 在连接高并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应, * 因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。 ### Nginx安装 **安装包的下载地址:http://nginx.org/en/download.html** . # mkdir /gx | mount.cifs //192.168.100.99/gx /gx # yum install gcc gcc-c++ make pcre pcre-devel zlib-devel -y # tar xzvf /gxnginx-1.6.0.tar.gz -C /opt //解压缩到opt目录 # cd /opt/nginx-1.6.0/ ./configure \ --prefix=/usr/local/nginx \ --user=nginx \ --group=nginx \ --with-http_stub_status_module //功能模块 统计日志 . # make && make install //编译&&编译安装 ### 检查安装结果和启动停止服务 # ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ //(软连接 方便调用nginx命令) # nginx -t //查看是否安装成功 # nginx //启动Nginx 服务 # netstat -anpt | grep nginx //查看端口 # killall -1 nginx //重启Nginx服务 #killall -3 nginx //关闭Nginx服务 ### 编写Nginx服务脚本 方便chkconfig和service工具管理 # vim /usr/local/nginx/conf/nginx.conf pid logs/nginx.pid; //去#号 使下面脚本中路径文件生成 vi /etc/init.d/nginx //创建服务脚本 #!/bin/bash # chkconfig: - 99 20 # description: Nginx Service Control Script PROG="/usr/local/nginx/sbin/nginx" PIDF="/usr/local/nginx/logs/nginx.pid" case "$1" in start) $PROG ;; stop) kill -s QUIT $(cat $PIDF) ;; restart) $0 stop $0 start ;; reload) kill -s HUP $(cat $PIDF) ;; *) echo "Usage: $0 {start|stop|restart|reload}" exit 1 esac exit 0 # chmod +x /etc/init.d/nginx # chkconfig --add nginx //添加为系统服务 现在可以使用service 控制Nginx服务了 ### 配置主配置文件 * 全局配置 # vim /usr/local/nginx/conf/nginx.conf user nginx nginx; //去# 改用户为nginx worker_processes 1; //工作进程数量 ...... error_log logs/error.log info; //错误日志文件 * I/O事件配置 events { use epoll; //添加 使用epoll模型 worker_connections 1024; //每个进程处理1024个连接 } * HTTP配置 http { include mime.types; //支持多媒体 default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$r equest" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; //访问日志位置 access_log logs/access.log main; sendfile on; //支持文件发送(下载) keepalive_timeout 65; //连接保持超时 server { //Web服务的监听配置 listen 80; //监听的端口 server_name www.benet.comt; //网站名称 charset utf-8; //默认字符集 location / { root html; //网站根目录的位置 index index.html index.htm; //默认首页(索引页) } * 开启访问状态统计 跟上面配置后面 添加4行 location ~ /status { //访问位置为/status stub_status on; //打开状态统计功能 access_log off; ////关闭此位置的日志记录 } # service nginx restart //重启nginx服务 打开浏览器输入服务器地址: 192.168.100.102 访问Nginx的统计状态 192.168.100.102/status ![](https://s4.51cto.com/images/blog/201806/13/881442bd492b8abc8a1ebf61b9549a50.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)![](https://s4.51cto.com/images/blog/201806/13/52671a5b5ef0374c3c03b8b0749120ec.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)