源码编译NGINX

一、下载nginx
[[email protected] ~]# cd /opt/ && ls
[[email protected] /opt/]# wget http://nginx.org/download/nginx-1.16.1.tar.gz
--2020-02-09 15:13:30--  http://nginx.org/download/nginx-1.16.1.tar.gz
正在解析主机 nginx.org (nginx.org)... 62.210.92.35, 95.211.80.227, 2001:1af8:4060:a004:21::e3
正在连接 nginx.org (nginx.org)|62.210.92.35|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1032630 (1008K) [application/octet-stream]
正在保存至: “nginx-1.16.1.tar.gz”

100%[=============================================================>] 1,032,630   2.78KB/s 用时 9m 23s 

2020-02-09 15:22:54 (1.79 KB/s) - 已保存 “nginx-1.16.1.tar.gz” [1032630/1032630])
[[email protected] opt]# ls
nginx-1.16.1.tar.gz
二、安装依赖包
[[email protected] opt]# yum -y install gcc gcc-c++ make automake autoconf libtool pcre* zlib openssl openssl-devel
******

完毕!
三、解压
[[email protected] opt]# tar -xzf nginx-1.16.1.tar.gz
[[email protected] opt]# ls
nginx-1.16.1  nginx-1.16.1.tar.gz
[[email protected] opt]# cd nginx-1.16.1/
[[email protected] nginx-1.16.1]# ll
总用量 756
drwxr-xr-x. 6 1001 1001   4096 2月   9 15:28 auto    # 提供了4个子目录
-rw-r--r--. 1 1001 1001 296463 8月  13 20:51 CHANGES    # 对nginx版本中有哪些特性和bugfix进行说明
-rw-r--r--. 1 1001 1001 452171 8月  13 20:51 CHANGES.ru    # 俄罗斯语言版本的CHANGES
drwxr-xr-x. 2 1001 1001   4096 2月   9 15:28 conf    # 示例文件,安装好之后会将此目录中的示例文件拷贝到安装目录以方便配置
-rwxr-xr-x. 1 1001 1001   2502 8月  13 20:51 configure    # 用来生成中间文件,执行编译前的一个必备动作
drwxr-xr-x. 4 1001 1001     68 2月   9 15:28 contrib    # 提供了两个pa脚本,和vim的工具
drwxr-xr-x. 2 1001 1001     38 2月   9 15:28 html    # 提供了两个标准的html文件
-rw-r--r--. 1 1001 1001   1397 8月  13 20:51 LICENSE
drwxr-xr-x. 2 1001 1001     20 2月   9 15:28 man    # Linux对nginx的帮助文件,这里可以看到nginx的基本帮助和配置
-rw-r--r--. 1 1001 1001     49 8月  13 20:51 README
drwxr-xr-x. 9 1001 1001     84 2月   9 15:28 src    # 框架都在此目录的代码中
四、配置,使vim打开nginx配置文件时语法高亮
[[email protected] nginx-1.16.1]# mkdir /root/.vim
[[email protected] nginx-1.16.1]# cp -r contrib/vim/* /root/.vim/
五、查看NGINX的html目录结构
[[email protected] nginx-1.16.1]# tree html/
html/
├── 50x.html    # 发生50X错误时,可以重定向到此文件
└── index.html    # 默认的NGINX欢迎界面

0 directories, 2 files
六、查看configure支持哪些参数,使用more分页查看,空格翻页,q退出
[[email protected] nginx-1.16.1]# ./configure --help | more
七、配置:使用默认参数指定nginx的安装目录,配置成功后,nginx的配置特性以及nginx的执行木等信息都会列在最下方
[[email protected] nginx-1.16.1]# mkdir /opt/nginx
[[email protected] nginx-1.16.1]# ./configure --prefix=/opt/nginx
八、执行完configure命令后nginx-1.16.1目录下会多出以下两个内容
-rw-r--r-- 1 root root   356 2月 9 16:06 Makefile
drwxr-xr-x 3 root root    174 2月 9 16:06 objs    # 生成的中间文件
[[email protected] nginx-1.16.1]# cd objs/
[[email protected] objs]# ll
总用量 80
-rw-r--r--. 1 root root 17628 2月 9 16:07 autoconf.err
-rw-r--r--. 1 root root 39886 2月 9 16:07 Makefile
-rw-r--r--. 1 root root 6791 2月 9 16:07 ngx_auto_config.h
-rw-r--r--. 1 root root 657 2月 9 16:07 ngx_auto_headers.h
-rw-r--r--. 1 root root 5856 2月 9 16:07 ngx_modules.c  # 决定了接下来编译时,有哪些模块会被编译进nginx
drwxr-xr-x. 9 root root 84 2月 9 16:07 src  # C语言编译时生成的中间文件都会放在此目录
九、编译
[[email protected] objs]# cd ..
[[email protected] nginx-1.16.1]# make
# 编译完成后,objs目录下会生成大量中间文件,主要为以下三部分
# 如果需要对nginx进行版本升级,则需要从objs中将nginx执行文件拷贝到nginx的安装目录中
# 如果使用了动态模块,那么动态模块编译会生成so动态文件,届时也会放在objs目录下
-rwxr-xr-x. 1 root root 3825645 2月 9 16:25 nginx
-rw-r--r--. 1 root root 5317 2月 9 16:25 nginx.8
-rw-r--r--. 1 root root 32312 2月 9 16:25 ngx_modules.o
十、make install 安装,只有首次安装时可使用此命令
# 安装完成后,前往prefix指定的目录可以看到以下结构
[[email protected] nginx-1.16.1]# cd ../nginx
[[email protected] nginx]# ll
总用量 4
drwxr-xr-x. 2 root root 4096 2月   9 16:42 conf  # 决定nginx功能的配置文件在conf下
drwxr-xr-x. 2 root root   38 2月   9 16:42 html
drwxr-xr-x. 2 root root    6 2月   9 16:42 logs  # access.log和error.log在logs下
drwxr-xr-x. 2 root root   18 2月   9 16:42 sbin  # 最主要的nginx二进制文件在sbin下

原文地址:https://www.cnblogs.com/Axiao-47/p/12287700.html

时间: 2024-10-21 12:56:10

源码编译NGINX的相关文章

源码编译Nginx服务配置

一.实验环境: RHEL7.0 172.25.254.1 server1.example.com  firewalld disable 二.实验内容:     1.源码安装Nginx nginx-1.9.14.tar.gz        下载源码包 tar zxf nginx-1.9.14.tar.gz         cd nginx-1.9.14/         vim auto/cc/gcc # debug        #CFLAGS="$CFLAGS -g"    #关闭d

从源码编译nginx php mysql之——mysql5.6.24安装

网上关于mysql5.6 的安装教程很多,但是我在按照他们的教程安装的时候,总是会遇到各种问题,但是作者并没有指出解决办法,然后各种google之后,参考所有人的过程,终于安装成功,记录下来! 1 下载MySQL5.6源码包,然后我是解压到/home/cg/my/myapp/下面. 2 mysql 从5.5版本之后不是用./configure ,而是用cmake,所以需要安装cmake , sudo apt-get instal cmake 3 我是安装在/home/cg/my/server/m

Linux源码编译nginx

1.安装nginx 安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 首先要安装 PCRE PCRE 作用是让 Nginx 支持 Rewrite 功能. 1.下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz [[email protected] s

Ubuntu14.04下zabbix2.4.5 源码编译安装

安装环境: Ubuntu14.04 LTS  mysql 5.6 php-fpm nginx 1.8.0 第一部分,php+mysql+nginx组件安装 1.系统更新 sudo apt-get update && sudo apt-get upgrade 2.安装php-fpm zabbix的web前端是用php写成的,需要php来运行 sudo apt-get install php-fpm (当然也可以源码编译php) 3.源码编译 mysql5.6 1. 安装环境: Mysql-5

Nginx 源码编译安装

Nginx 源码编译安装环境 Centos7 Nginx1.8.1    下载地址:http://nginx.org/download/ 选择自己想要的版本 我这边使用1.8.1,下载地址:http://nginx.org/download/nginx-1.8.1.tar.gz 1.编译前安装环境 [[email protected]_30 ~]# yum groupinstall "Development Tools" -y                #安装开发工具包 [[ema

源码编译lnmp之简介与nginx安装

源码编译lnmp 系统环境:Centos 6.6 相关软件包: nginx-1.11.6.tar.gz mysql-boost-5.7.15.tar.gz php-5.6.28.tar.bz2 下载地址: nginx官网:http://nginx.org mysql官网:http://dev.mysql.com/downloads/mysql/ php官网:http://jp2.php.net/downloads.php 第一部分:安装nginx 一.安装nginx时必须先安装相应的编译工具 1

Centos 7.0 编译安装LNMP(Linxu+nginx+mysql+php)之源码安装nginx (一)

nginx简介:       Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日. 其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布. Nginx是一款轻量级的Web 服务器

源码编译lnmp(Nginx 1.8 + MySQL5.5 + PHP 5.3)

目录     安装     安装Nginx1.8 安装pcre库 tar xzfpcre-8.36.tar.gz cd pcre-8.36 ./configure make &&make install cd ../ 创建运行Nginx用户 useradd -M -s/sbin/nologin www 解压Nginx软件包,调整源码文件 tar xzf nginx-1.8.0.tar.gz cd nginx-1.8.0 # Modify Nginxversion sed -i '[emai

nginx源码编译以及源码编译过程中遇到的问题

原帖地址:https://www.cnblogs.com/operationhome/p/8964191.html 本文主要讲nginx安装以及安装过程中遇到的问题. 谈到nginx 必须聊聊它的起源和发展. nginx是由俄罗斯工程师Igor Sysoev 用C语言开发的一个免费开源的Web服务器软件,于2004年发布,聚集轻量级.高并发.高性能.低消耗等一系列优点.目前Nginx是互联网上仅次于Apache的第二流行的Web服务器软件. 接下来我们开始安装nginx,我们下面是以centos