源码包安装详解

  • 1.源码获取
  • 2.如何安装源码
  • 3.源码获取存放
    • 3.1创建源码存放目录
    • 3.2把源码移到需要存放的目录
    • 3.3解压文件
    • 3.4常用命令介绍
  • 4.源码安装实际操作
    • 4.1官网获取源码包(一般为tar包)
    • 4.2解压源码包
    • 4.3配置./configure(安装前的配置)
      • 4.3.1安装路径
      • 4.3.1.1错误提示
        • 4.3.1.1.1解决方案
      • 4.3.1.2错误提示
        • 4.3.1.2.1解决方案
      • 4.3.1.3错误提示
        • 4.3.1.3.1解决方案
      • 4.3.1.4错误提示
      • 4.3.1.4检查是成功
      • 4.3.2功能模块检测依赖关系
      • 4.3.3生成makefile文件
      • 4.3.4编译make
      • 4.3.5安装make install
  • 5.测试
    • 5.1网页测试
  • 6.实际操作精简

1.源码获取

Nginx 官网

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

2.如何安装源码

编译环境:gcc make
依赖环境:
准备环境:nginx-1.22.1.tar.gz

3.源码获取存放

3.1创建源码存放目录

mkdir -p /soft/src

3.2把源码移到需要存放的目录

[root@localhost ~]# ls
anaconda-ks.cfg  nginx-1.22.1.tar.gz
[root@localhost ~]# mv nginx-1.22.1.tar.gz /soft/src/

3.3解压文件

[root@localhost src]# tar xf nginx-1.22.1.tar.gz
[root@localhost src]# cd nginx-1.22.1/

3.4常用命令介绍

  --prefix=PATH                      set installation prefix--sbin-path=PATH                   set nginx binary pathname--modules-path=PATH                set modules path--conf-path=PATH                   set nginx.conf pathname--error-log-path=PATH              set error log pathname--pid-path=PATH                    set nginx.pid pathname--lock-path=PATH                   set nginx.lock pathname

4.源码安装实际操作

4.1官网获取源码包(一般为tar包)

mkdir -p /soft/src
cd /soft/src
wget https://nginx.org/download/nginx-1.22.1.tar.gz

4.2解压源码包

tar xf nginx-1.22.1.tar.gz

4.3配置./configure(安装前的配置)

4.3.1安装路径

[root@localhost nginx-1.22.1]# ./configure --prefix=/soft/nginx-1.22.1

4.3.1.1错误提示

./configure: error: C compiler cc is not found

4.3.1.1.1解决方案

yum -y install gcc gcc-c++

4.3.1.2错误提示

./configure: error: the HTTP rewrite module requires the PCRE library.

4.3.1.2.1解决方案

yum install pcre-devel -y

4.3.1.3错误提示

./configure: error: the HTTP gzip module requires the zlib library.

4.3.1.3.1解决方案

yum install -y zlib-devel

4.3.1.4错误提示

执行命令

./configure --prefix=/soft/src/nginx-1.22.1 \
> --user=www \
> --group=www \
> --with-http_ssl_module

错误提示

./configure: error: SSL modules require the OpenSSL library

4.3.1.4.1解决方案
yum -y install openssl-devel

4.3.1.4检查是成功

[root@localhost nginx-1.22.1]# echo $?
0

4.3.2功能模块检测依赖关系

4.3.3生成makefile文件

cd nginx-1.22.1/
make

4.3.4编译make

根据makefile上的内容将源码编程二进制

4.3.5安装make install

5.测试

[root@localhost ~]# cd /soft/src/nginx-1.22.1/
[root@localhost nginx-1.22.1]# ls
conf  html  logs  sbin
[root@localhost nginx-1.22.1]# cd sbin/
[root@localhost sbin]# ls
nginx
[root@localhost sbin]# nginx
-bash: nginx: 未找到命令
[root@localhost sbin]# ./nginx
nginx: [emerg] getpwnam("www") failed
[root@localhost sbin]# useradd www
[root@localhost sbin]# ./nginx
[root@localhost sbin]#
[root@localhost sbin]# ps aux | grep nginx
root      17518  0.0  0.0  45996  1124 ?        Ss   00:26   0:00 nginx: master process ./nginx
www       17519  0.0  0.1  46444  1872 ?        S    00:26   0:00 nginx: worker process
root      17523  0.0  0.0 112824   988 pts/0    S+   00:27   0:00 grep --color=auto nginx

5.1网页测试

6.实际操作精简

#!/bin/bash#1、安装依赖包
yum -y install gcc gcc-c++ make zlib-devel pcre-devel openssl-devel
#2、源码安装包获取
wget https://nginx.org/download/nginx-1.22.1.tar.gz
#3、解压源码包
tar xf nginx-1.22.1.tar.gz
#4、创建目录
cd ./nginx-1.22.1
mkdir -p /soft/src/
#5、安装
./configure --prefix=/soft/src/nginx-1.22.1 --user=www --group=www --with-http_ssl_module && make && make install
#6、增加用户
useradd www
cd /soft/src/nginx-1.22.1/sbin/
./nginx
#7、测试
ps aux | grep nginx

Nginx源码包安装详解相关推荐

  1. linux下的Apache2 + mysql5 + php5 源码完整安装详解

    由于公司要求下个项目得用PHP来开发,所以我不得不暂时放弃.net而钻入php的研究中...以下是我在linux下搭建php环境时所搜索到的相关资料以及自己的一些总结.     一:准备软件包,存放/ ...

  2. [nginx源码]FastCGI模块详解

    目录 1.初识FastCGI协议 1.1消息头 1.2消息体举例 2. 基础知识 2.1 FastCGI配置 2.2FastCGI配置预处理 3.构造FastCGI请求 3.1FastCGI请求结构 ...

  3. Linux系统中软件的“四”种安装原理详解:源码包安装、RPM二进制安装、YUM在线安装、脚本安装包...

    一.Linux软件包分类 1.1 源码包 优点: 开源,如果有足够的能力,可以修改源代码: 可以自由选择所需的功能: 软件是编译安装,所以更加适合自己的系统,更加稳定.效率更高: 卸载方便: 缺点: ...

  4. 源码包安装Nginx(1.19.1),并配置Nginx,比如:用户认证,防盗链,虚拟主机,SSL等功能

    基础配置 #关闭防火墙 [root@node2 ~]# systemctl stop firewalld [root@node2 ~]# systemctl disable firewalld #清空 ...

  5. CentOS 7下nginx源码包编译安装

    一.下载 nginx 源码包 这里我们选择稳定版: 把下载完的nginx-1.13.12.tar.gz包上传到服务器上 或者可以在服务器上使用终端下载: [root@localhost ~]# cd ...

  6. (转)linux上nginx源码编译安装

    亲测有效: 转:  https://segmentfault.com/a/1190000007116797https://segmentfault.com/a/1190000007116797 ngi ...

  7. Android4.0源码目录结构详解

    Android4.0源码目录结构详解 Android4.0与2.1目录差不多 alsa这块,注意external/tinyalsa下有: include/tinyalsa/asoundlib.h mi ...

  8. Android 8.0学习(32)---Android 8.0源码目录结构详解

    Android 8.0源码目录结构详解 android的移植按如下流程:     (1)android linux 内核的普通驱动移植,让内核可以在目标平台上运行起来.     (2)正确挂载文件系统 ...

  9. 【SRE笔记 2022.9.7 linux进程相关命令及源码包安装】

    SRE笔记 2022.9.7 源码包 定义 源码包安装 优缺点 优点 缺点 获取 安装 C语言和开发 nginx安装示例 基础环境准备 gcc make wget 下载源码包 解压源码包,进入目录 ( ...

最新文章

  1. 1亿参数4万样本BERT仍听不懂人话,我们离通用NLP能还有多远?
  2. Java管理Cookie增删改查操作
  3. hurricane中文_hurricane是什么意思
  4. oracle创建时分秒列,oracle 11g 分区表创建(年月日周时分秒)
  5. 【maven】maven jar 包 冲突 的解决方式
  6. ffmpeg之PCM转AAC
  7. 3.高性能MySQL --- 服务器性能剖析( 2 )
  8. 时间计算题100道_这三个马政经计算题,你能对几个?
  9. 漂泊在汉语视界中的蒙古歌者
  10. Redis 6.2的过期删除策略源码分析(定期删除)
  11. 运筹说 第47期 | 算法介绍之目标规划
  12. 【解决】如何线上申请电子版的招商银行卡 | 在线申请招商银行的一网通账户
  13. pd调节规律_一文看懂pd控制器的参数整定
  14. 什么是php 开发,php开发是什么?
  15. vus3+Ts Apache ECharts 的使用(可视化图表库)
  16. python感叹号的作用_Python的作用
  17. mysql查询历史执行sql记录
  18. 霍尔传感器工作原理简介
  19. java中m三个等号是什么意思_三个等号是什么意思
  20. 面向对象思想、特征等

热门文章

  1. ()文献可视化--vosviewer入门
  2. 【论文】SCI论文检索及论文的主要的获取方式
  3. c语言谭浩强第五版---全书笔记+习题(一)
  4. Spring Boot下载Excel模板,内容乱码解决方法
  5. cc2530 开发板
  6. 如何使用Chrome直接编辑前端代码
  7. BOS物流管理系统-第一天
  8. 视频教程-网络工程师入门CCNA 0基础学网络视频课程【精华版】-思科认证
  9. Java在线编译运行示例
  10. 华为boss力荐公司高层看的一篇文章,真的很经典!!![转载]