• 编译安装 Nginx


    Nginx的安装

    一,环境准备工作

    1.Nginx服务器软件包和安装文件一共不到10MB的磁盘空间,应该保持10MB的磁盘空间(都9012年了,这点应该没问题)
    2.为了编译Nginx源码,我们需要标准的GCC编译器。

    GCC(GUN Compiler Collection,GUN编译套件)是由GNU开发的编程语言译器。GNU编译器套件包括C、C++、 Objective-C、 Fortran、Java、Ada和Go语言前端,也包括了这些语言的库(如libstdc++,libgcj等。)

    3.除此之外我们还需要Automake工具,来完成自动创建Makefile的工作。
    4.由于Nginx的一些模块需要依赖第三方库,通常有pcre库(支持rewrite模块),zlib库(支持gzip模块),openssl库(支持ssl模块)等

    因为只是调用底层模块,所以yum安装就好了

    [root@localhost home]# yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel openssl openssl-devel

    这里注意一下,我们并不需要安装Autoconf工具。Nginx软件的自动脚本不是由automake工具生成的,而是作者手工编写的。
    到此,我们就完成了编译和安装nginx服务器软件的环境准备工作。

    二,编译和安装

    nginx官网地址
    nginx-1.18.0百度云下载,验证码为:cdqf

    1.获取nginx的源码包

    1.1.递归创建/home/web/server目录
    [root@localhost ~]# mkdir -p /home/web/server
    1.2.下载源码包保存至/home/web/server目录下
    [root@localhost ~]# wget -P /home/web/server/ http://nginx.org/download/nginx-1.18.0.tar.gz

    2.解压源码包

    2.1.切换工作目录至/home/server下
    [root@localhost ~]# cd /home/web/server/
    2.2.解压nginx至当前工作目录(/home/server)
    [root@localhost server]# tar -zxvf nginx-1.18.0.tar.gz
    2.3.简要介绍一下部分文件和目录:

    【1】src目录:存放了nginx软件所有的源代码;
    【2】man目录:存放了nginx软件的帮助文档;
    【3】conf目录:存放了nginx服务器的配置文件,正确配置nginx文件可以保证nginx的正常运行;
    【4】html目录:存放了两个后缀名为.html的静态网页文件。
    【5】CHANGES.ru:俄文版 Nginx 各版本变更说明(因为Nginx 作者是俄罗斯人)
    【6】CHANGES:英文版 Nginx 各版本变更说明
    【7】LICENSE:存放了nginx许可证信息
    【8】contrib:存放了vim 提示插件以及一些提升使用 Nginx 效率的工具脚本
    【9】README:记录了一些作者的信息
    【10】auto目录:存放了大量的脚本文件,和configure脚本程序有关

    进入auto目录我们可以清晰的看到各种职能的脚本(此目录下的文件对于自动化脚本具有极高的参考价值!!)

    (1)os目录:检查环境
    (2)modules脚本:检查模块
    (3)options脚本:处理脚本参数
    (4)have,nohave,make,install:输出信息到输出文件
    (5)......nginx的自动化脚本都是作者手工编写的,此目录下的文件对于自动化脚本具有极高的参考价值!!因本人能力有限,就不多赘述了

    【11】configure文件:是nginx的自动化脚本,运行configure自动化脚本一般会完成两项工作:
    (1)检查环境,根据环境检查结果生成c语言代码;
    (2)生成编译代码需要的Makefile文件。

    Nginx源码的编译需要使用configure脚本自动生成Makefile文件,常用选项如下:



    3.进入nginx目录编译安装

    3.1.检查环境,我们指定nginx的安装位置在/home/web/server/nginx下,并生成Makefile文件
    [root@localhost nginx-1.18.0]# ./configure --prefix=/home/web/server/nginx

    具体返回信息可以对照上表,自行比对

    3.2.使用configure脚本得到Makefile文件后,使用make来编译,make install安装,我们用&&连接,表示表示正确执行make后执行make install
    [root@localhost nginx-1.18.0]# make && make install
    3.3.启动nginx
    [root@localhost ~]# /home/web/server/nginx/sbin/nginx
    3.4.查看nginx进程是否启动
    [root@localhost ~]# ps -aux|grep nginx
    3.5.查看80端口是否正常开启
    [root@localhost ~]# netstat -tunlp|grep 80

    打开浏览器:输入IP地址差看nginx的HTML页面

    3.6.添加nginx的环境变量,否则每次操作nginx都要打上一串,毕竟我们不能时时刻刻都在nginx目录下
    [root@localhost ~]# echo "export PATH="$PATH:/home/web/server/nginx/sbin:"" >> /etc/profile && source /etc/profile && nginx -s reload
    3.7.设置nginx开机自启(系统启动脚本vi /etc/rc.local 这个文件是系统启动后会自动执行的,我们就将启动命令加入到这个文件中,并给它可执行的权限)
    [root@iZgt88z6l1kvd7Z ~]# echo "/home/web/server/nginx/sbin/nginx -c /home/web/server/nginx/conf/nginx.conf &" >>/etc/rc.local && chmod o+x /etc/rc.local

  • 相关阅读:
    influxdb + cadvisor + grafana 监控 docker容器应用性能
    zabbix_get命令
    【工作笔记】python+influxdb+grafana监控云行情
    沙雕与大婶 | 把5W2H融入你的架构设计吧
    GO系列 | 5分钟入门GO【译】
    Docker深入浅出系列 | 5分钟搭建你的私有镜像仓库
    Docker深入浅出系列 | Swarm多节点实战
    Docker如何给Springboot项目动态传参
    沙雕与大婶 | Mock掉你的外部依赖吧
    ed后缀读音规则
  • 原文地址:https://www.cnblogs.com/hxlinux/p/12897869.html
Copyright © 2020-2023  润新知