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默认测试页

Nginx源码安装配置的更多相关文章

  1. nginx 源码安装配置详解(./configure)

    在"./configure"配置中,"--with"表示启用模块,也就是说这些模块在编译时不会自动构建,"--without"表示禁用模块, ...

  2. Nginx源码安装及调优配置

    导读 由于Nginx本身的一些优点,轻量,开源,易用,越来越多的公司使用nginx作为自己公司的web应用服务器,本文详细介绍nginx源码安装的同时并对nginx进行优化配置. Nginx编译前的优 ...

  3. Nginx源码安装及调优配置(转)

      导读 由于Nginx本身的一些优点,轻量,开源,易用,越来越多的公司使用nginx作为自己公司的web应用服务器,本文详细介绍nginx源码安装的同时并对nginx进行优化配置. Nginx编译前 ...

  4. httpd的rpm包及源码安装配置

    httpd的rpm包及源码安装配置 1.rpm包安装 系统环境: [root@zhaochj ~]# cat /etc/issue CentOS release 6.4 (Final) Kernel ...

  5. nginx源码安装方法

    nginx源码安装方法 安装方法如下 1.安装nginx必要的源码依赖软件包. yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zli ...

  6. nginx源码安装教程(CentOS)

    1.说明 官方源码安装说明:http://nginx.org/en/docs/configure.html 源码包下载地址:http://nginx.org/en/download.html 版本说明 ...

  7. nginx源码安装

    1,首先解决系统环境: 安装rpm包组{CentOS6 跟开发相关的包组:} a.  Development Tools #yum groupinstall "Development Too ...

  8. nginx 源码安装的重启命令

    源码安装nginx就面临这样的麻烦,不能使用service nginx restart 来重启nginx,没办法只能重新加载下nginx. #/usr/local/nginx/sbin/nginx - ...

  9. nginx 源码安装以及后续升级https

    事情的来源是,公司要将网站从http升级到https,由于历史遗留原因,才发现现有的nginx是通过源码安装的,并没有安装ssl模块,需要现安装sll模块,这个nginx是整个公司最前端的一个代理,涉 ...

随机推荐

  1. 阶段3 3.SpringMVC·_07.SSM整合案例_06.ssm整合之编写MyBatis框架

    需要先搭建Mybits的环境. 用Mybits的注解的方式.把两个方法的sql语句写完 SqlMapConfig.xml resources下新建xml文档 把约束粘贴过来 两步操作 环境标签叫做en ...

  2. Spring Boot Application后台守护Daemon应用

    本地代码启动不报错,部署到服务器之后出现如下一个错误. 系统的日志如下: Error starting ApplicationContext. To display the conditions re ...

  3. openstack核心组件--keystone(1)

    一.keystone介绍 keystone 是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...

  4. logging.basicConfig函数各参数:

    import logging logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(line ...

  5. Mac OS下使用pyenv管理Python版本

    问题的由来 在开发过程中,可能会遇到多个版本同时部署的情况. Mac OS自带的Python版本是2.x,自己开发需要Python3.x 系统自带的是2.6.x,开发环境是2.7.x 由于Mac机器系 ...

  6. 【ABAP系列】SAP ABAP 带有参数的AMDP的创建

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 带有参数的AM ...

  7. ASP.NET Core 入门笔记2,建立项目

    1.建立项目 2.项目结构 1.项目结构说明 根目录/文件 说明 .vscode目录 VS Code项目配置目录,相当于.vs..idea文件夹 bin目录 编译输出目录 obj目录 编译配置与中间目 ...

  8. git与gitlab工具

    1.Git和SVN的对比 1)git是分布式的,svn是集中式的.(最核心) 2)git是每个历史版本都存储完整的文件,便于恢复,svn是存储差异文件,历史版本不可恢复.(核心) 3)git可离线完成 ...

  9. BUUOJ misc 二维码

    一个二维码,扫一下是提示:secret is here 用binwalk看一下: binwalk QR_code.png DECIMAL HEXADECIMAL DESCRIPTION ------- ...

  10. <<大道至简>>伪代码

    import.java.大道至简.* public class YuGong { public static void main(String [] args) throws IOException ...