Nginx 源码编译安装

前提:

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

1:官网下载合适的版本,建议选择稳定版本。

官网地址:https://nginx.org

wget https://nginx.org/download/nginx-1.20.1.tar.gz

2:解压,进入源码目录

cd /home/packages
tar -zxvf nginx-1.20.1.tar.gz 
cd nginx-1.20.1

3:源码文件各个目录

[root@localhost nginx-1.20.1]# ll
总用量 788
drwxr-xr-x 6 zdsoftro zdsoftro    326 10月 18 15:44 auto
-rw-r--r-- 1 zdsoftro zdsoftro 311503 5月  25 20:35 CHANGES
-rw-r--r-- 1 zdsoftro zdsoftro 475396 5月  25 20:35 CHANGES.ru
drwxr-xr-x 2 zdsoftro zdsoftro    168 10月 18 15:44 conf
-rwxr-xr-x 1 zdsoftro zdsoftro   2590 5月  25 20:35 configure
drwxr-xr-x 4 zdsoftro zdsoftro     72 10月 18 15:44 contrib
drwxr-xr-x 2 zdsoftro zdsoftro     40 10月 18 15:44 html
-rw-r--r-- 1 zdsoftro zdsoftro   1397 5月  25 20:35 LICENSE
drwxr-xr-x 2 zdsoftro zdsoftro     21 10月 18 15:44 man
-rw-r--r-- 1 zdsoftro zdsoftro     49 5月  25 20:35 README
drwxr-xr-x 9 zdsoftro zdsoftro     91 10月 18 15:44 src
  1. auto目录:用于编译时的文件,以及相关lib库,编译时对对操作系统的判断等,都是为了辅助./configure命令执行的辅助文件。
  2. CHANGES文件:就是当前版本的说明信息,比如新增的功能,修复的bug,变更的功能等
  3. CHANGES.ru文件:作者是俄罗斯人,生成了一份俄罗斯语言的CHANGE文件
  4. conf目录:是nginx编译安装后的默认配置文件或者示列文件,安装时会拷贝到安装的文件夹里面
  5. configure文件:编译安装前的预备执行文件。
  6. contrib目录:该目录是为了方便vim编码nginx的配置文件时候,颜色突出显示,可以将该目录拷贝到自己的~/.vim目录下面

    cp -rf contrib/vim/* ~/.vim/ 这样vim打开nginx配置文件就有突出的颜色显示。\

  7. html目录:编译安装的默认的2个标准web页面,会拷贝到nginx的安装目录下的html下。
  8. man目录:nginx命令的帮助文档,linux上可以使用man命令查看帮助,
  9. src:nginx的源码文件

4:开始编译

./configure --help #查看./configure 支持哪些参数

 

 

 

 

./configure --prefix=/usr/local/nginx

5:./configure 执行完成后,会生成很多中间文件,放在objs目录下面

执行报错:

c compiler cc is not found   #缺少gcc-c++

解决

yum install -y gcc-c++

6:在当前命令执行make命令

make #没有报错代表执行成功

NOTE:这个时候,如果是第一次安装,下一步可以执行make install命令,如果是升级,就不能执行install命令。

7:执行 make install 安装命令

一般情况下6、7会直接执行

make && make install

8:安装完成,安装目录为:/usr/local/nginx/

nginx -v  #查看nginx版本
nginx -V  #查看nginx编译参数,如果没有额外的参数,只会显示configure arguments: --prefix=/home/zdsoft/nginx
########  #这情况下,代表是默认安装,可以查看源码目录auto/options 文件。默认安装了哪些模块,哪些没有安装。

9:nginx进程启动

/usr/local/nginx/sbin/nginx  -c /usr/local/nginx/conf/nginx.conf

10:制作软连接

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

ln -s 源文件 软连接位置

................................................................................................................

nginx -t
ngixn -s reload

 

posted @ 2021-11-15 13:05  卜闻卜问卜听卜在乎  阅读(55)  评论(0编辑  收藏  举报