Nginx源码安装配置

Nginx web服务器简介

  Nginx ("engine x") 是一个高性能HTTP 和 反向代理 服务器、IMAP、POP3、SMTP 服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。

Nginx处理请求过程

1.nginx 程序开启之后 ,nginx 命令启动给nginx 程序发送启动信号,nginx 会开启master进程,由master读取配 置文件决定开启几个worker进程。

2.每个worker进程都是从Master进程fork生成出来,在Master进程里面,建立好需要listen 80端口的socket连接 (listenfd)之后,会fork出多个worker进程。

3.所有worker进程的listenfd会在被连接或者被请求到来时变得可读可连接,为保证只有一个进程处理该连接,所有 worker进程在注册listenfd读事件链接前抢accept_mutex“令牌”,抢到互斥锁“令牌”的那个进程注册listenfd读事件 链接,在读事件里调用accept信号接受该连接。

4.当一个worker进程在accept信号这个连接之后,就开始读取请求、解析请求、处理请求,产生数据后,再返回给客户 端,最后才断开连接,这样形成一个完整的请求流程

 

Nginx管理命令:

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

/usr/local/nginx/sbin/nginx -t 检测nginx配置文件是否正确

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

/usr/local/nginx/sbin/nginx -s reload 平滑启动nginx(在nginx服务不停止的情况下重新加载nginx配置文件)

 

Nginx 安装配置

(1)下载 Nginx 源码包

cd /usr/src

wget -c nginx.org/download/nginx-1.14.0.tar.gz

(2)解压 Nginx 源码包

 tar xf nginx-1.14.0.tar.gz

 (3)进入 Nginx 源码包解压目录;创建 www 用户

cd nginx-1.14.0

 useradd www

 (4)安装 pcre 库 openssl 库 gcc 编译器

yum install pcre-devel pcre openssl-devel gcc-c++ -y

 (5)预编译 Nginx

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

 (6)make 编译

make

(7)make install 安装

 make install

 到此Nginx web服务器已经安装完成

----------------------------------------------------------------------------------------------------------------------------------

启动 Nginx 

/usr/local/nginx/sbin/nginx

 查看 Nginx进程是否已启动

临时关闭SELinux

setenforce 0

 关闭firewalld防火墙(也可以写防火墙允许80端口通过规则)

systemclt stop firewalld

 通过浏览器访问Nginx默认测试页

 

 

posted @ 2019-06-02 21:06  独孤_剑客  阅读(172)  评论(0编辑  收藏  举报