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. spring整合mybatis(非代理方式)【我】

    首先创建要给 maven 的war项目 不用代理的方式: 如果不适用Mapper代理的方式,配置就非常简单: 首先是pom文件(以下配置文件包含其他多余内容,仅供参考): <project xm ...

  2. 史上最全SVN 教程

    以下博文引用<https://blog.csdn.net/u013067756/article/details/73302758>,再此仅供学习和参考. Svn是什么? SVN(全称Sub ...

  3. Mysql密码忘记,修改密码方法

    1.set password for ‘root’@’localhost’ = password(‘czllss’); -- czllss为新密码

  4. shell脚本安装python、pip-----非交互式的--批量执行函数

    首先把pip-.tgz 安装包放在 /usr/local 下面,按照顺序先安装pip,再安装python.不要先安装或只安装python,否则很容易出错, cat >>pip-python ...

  5. JavaScript(3):JSON

    <!DOCTYPE html> <html> <body> <p>JSON</p> <script> // JSON 值可以是: ...

  6. react 添加代理 proxy

    react package.json中proxy的配置如下 "proxy": { "/api/rjwl": { "target": &quo ...

  7. .net core cookie滑动过期设置

    HttpContext.SignInAsync( CookieAuthenticationDefaults.AuthenticationScheme, userPrincipal, new Authe ...

  8. MathType 6.0中MT Extra(TrueType)问题

    问题 MathType 6.0中MT Extra(TrueType)字体问题在打开MathType6.0时,有时会提示MathType需要安装一个较新版本的MT Extra(TrueType)字体,这 ...

  9. PJzhang:国外主流站点钓鱼网站示例工具shellphish

    猫宁!!! 参考链接:https://www.uedbox.com/post/58583/ 这个是这个项目的github地址 https://github.com/thelinuxchoice/she ...

  10. 前端数据Mock

    参考链接:https://www.clloz.com/programming/front-end/js/2019/05/10/data-mock/?utm_medium=hao.caibaojian. ...