标签:nginx简介 nginx编译安装步骤详解 编写Nginx启动文件
Nginx服务简介及编译安装详解Nginx是一个自由、开源、高性能及轻量级的HTTP服务器及反向代理服务器,其性能与IMAP/POP3代理服务器相当。Nginx以其高性能、稳定、功能丰富、配置简单及占用系统资源少而著称。Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多
Nginx由内核和模块组成,完成工作是通过查找配置文件将客户端请求映射到一个location block(location是用于URL匹配的命令),location配置的命令会启动不同模块完成工作。Nginx模块分为核心模块,基础模块和第三方模块。
1、核心模块包括:HTTP模块、EVENT模块(事件)、MAIL模块。
2、基础模块包括:HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块、HTTP Rewrit模块。
3、第三方模块包括:HTTP Upstream Request Hash模块、Notice模块、HTTP Access Key模块。
1、Nginx作为web服务器可以快速处理静态文件、索引文件以及自动索引效率高。
2、Nginx作为代理服务器可以进行快速高效的反向代理,提升网站性能。
3、Nginx作为负载均衡器既可以在内部直接支持 Rails 和 PHP 程序对外进行服务, 也可以支持作为 HTTP代理服务器对外进行服务。同时支持简单容错和利用算法进行负载均衡。
4、Nginx在性能方面,Nginx专为性能优化而开发,性能是其最重要的考量, 实现上非常注重效率。它支持内核Poll模型,能经受高负载的考验, 有报告表明能支持高达 50000 个并发连接数,并在大并发时占用很低内存。
5、Nginx在稳定性方面,采用分阶段资源分配技术,使CPU资源占用率低。官方表示保持10000个没有活动的连接,它只占2.5M内存,就稳定性而言, nginx比lighthttpd更胜一筹。
6、Nginx在高可用性方面,Nginx支持热部署。它的启动特别容易, 并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够在不间断服务的情况下,对软件版本进行进行升级。
本次Nginx是在CentOS7.3上进行安装的。
[root@localhost ~]# yum -y install pcre pcre-devel zlib zlib-devel openssl openssl-devel gcc gcc-c++
[root@localhost ~]# wget http://nginx.org/download/nginx-1.12.1.tar.gz
[root@localhost ~]# tar xf nginx-1.12.1.tar.gz
[root@localhost ~]# useradd nginx -s /sbin/nologin -M
[root@localhost ~]# cd nginx-1.12.1
[root@localhost nginx-1.12.1]# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx-1.12.1 --with-http_stub_status_module --with-http_ssl_module
[root@localhost nginx-1.12.1]# make && make install
[root@localhost nginx-1.12.1]# /usr/local/nginx-1.12.1/sbin/nginx
[root@localhost nginx-1.12.1]# netstat -antp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 4627/nginx: master
[root@localhost ~]# vim /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx-1.12.1/logs/nginx.pid
ExecStart=/usr/local/nginx-1.12.1/sbin/nginx
ExecReload=/usr/local/nginx-1.12.1/sbin/nginx -s reload
ExecStop=/usr/local/nginx-1.12.1/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[root@localhost ~]# systemctl enable nginx.service
[root@localhost ~]# systemctl start nginx.service
[Unit]:服务的说明
Description:描述服务
After:依赖,当依赖的服务启动之后再启动自定义的服务
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:启动、重启、停止命令全部要求使用绝对路径
[Install]服务安装的相关设置,可设置为多用户
启动nginx服务
systemctl start nginx.service
设置开机自动启动
systemctl enable nginx.service
停止开机自动启动
systemctl disable nginx.service
查看状态
systemctl status nginx.service
重启服务
systemctl restart nginx.service
查看所有服务
systemctl list-units --type=service
标签:nginx简介 nginx编译安装步骤详解 编写Nginx启动文件
原文地址:http://blog.51cto.com/longlei/2123840