目录

一、下载nginx源码

二、依赖环境准备

三、编译安装

四、加入系统服务


Nginx安装方式有多种,本篇介绍源码复杂安装,目的是进一步了解Nginx

一、下载nginx源码

官网下载最新稳定版:nginx: download


二、依赖环境准备

安装所有依赖环境

yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

环境解释

以上所安装的依赖环境作用解释请查看:【Nginx系列】- 源码安装依赖环境解释说明


三、编译安装

源码包准备

上传并解压官网下载的nginx源码包,进入到源码编译目录下

[root@001 nginx-s]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src

配置参数

./configure --prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/sbin/nginx \
--modules-path=/usr/local/nginx/modules \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--lock-path=/usr/local/nginx/logs/nginx.lock

参数说明

--prefix=PATH
指向Nginx的安装目录,默认值为/usr/local/nginx   
--sbin-path=PATH
指向(执行)程序文件(nginx)的路径,默认值为<prefix>/sbin/nginx
--modules-path=PATH
指向Nginx动态模块安装目录,默认值为<prefix>/modules
--conf-path=PATH
指向配置文件(nginx.conf)的路径,默认值为<prefix>/conf/nginx.conf
--error-log-path=PATH
指向错误日志文件的路径,默认值为<prefix>/logs/error.log
--http-log-path=PATH
指向访问日志文件的路径,默认值为<prefix>/logs/access.log
--pid-path=PATH
指向Nginx启动后进行ID的文件路径,默认值为<prefix>/logs/nginx.pid
--lock-path=PATH
指向Nginx锁文件的存放路径,默认值为<prefix>/logs/nginx.lock

开始编译安装

make && make install

四、加入系统服务

源码编译安装的nginx需要在安装目录下启动太麻烦,使用systemctl控制更方便

新建如下文件

sudo vim /lib/systemd/system/nginx.service

写入以下内容

[Unit]
Description=nginx
After=network.target[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true[Install]
WantedBy=multi-user.target

【注】:如果nginx处于启动状态,请先停止

./nginx -s stop

重新加载systemctl服务

systemctl daemon-reload

启动nginx并查看状态,成功

[root@001 sbin]# systemctl start nginx
[root@001 sbin]# systemctl status nginx
● nginx.service - nginxLoaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)Active: active (running) since Wed 2022-06-22 06:14:17 CST; 2s agoProcess: 5015 ExecStart=/usr/local/nginx/sbin/nginx (code=exited, status=0/SUCCESS)Main PID: 5016 (nginx)CGroup: /system.slice/nginx.service├─5016 nginx: master process /usr/local/nginx/sbin/nginx└─5017 nginx: worker processJun 22 06:14:17 001 systemd[1]: Starting nginx...
Jun 22 06:14:17 001 systemd[1]: Started nginx.
[root@001 sbin]#

以上内容就是Nginx复杂源码安装过程,欢迎讨论学习!

【Nginx系列】- Nginx源码复杂安装相关推荐

  1. LNMP架构环境搭建之PHP、Nginx源码编译安装及其简单配置应用

    LNMP架构中的Mysql见上一篇博文"LNMP架构环境搭建之mysql源码编译安装" 一.PHP简介 PHP(外文名:PHP: Hypertext Preprocessor,中文 ...

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

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

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

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

  4. 源码编译安装Nginx及网站服务配置

    文章目录 一.Nginx概述 1.1 Nginx概述 1.2 Nginx和Apache的区别 1.3Nginx和Apache的优缺点差异 1.4Nginx的进程 二.源码编译安装nginx服务 2.1 ...

  5. Linux LNMP源码架构部署 | Nginx服务 | Mysql服务 | php服务 | 论坛源码编译安装 | 超详细

    | Nginx服务 | Mysql服务 | php服务 | 论坛源码编译安装 | ➤安装 Nginx 服务 ➤1.关闭防火墙和安全机制 ➤2.卸载自带的httpd服务 ➤3.安装依赖包 ➤4.创建运行 ...

  6. Nginx源码包安装详解

    源码包安装详解 1.源码获取 2.如何安装源码 3.源码获取存放 3.1创建源码存放目录 3.2把源码移到需要存放的目录 3.3解压文件 3.4常用命令介绍 4.源码安装实际操作 4.1官网获取源码包 ...

  7. Nginx基础篇-Nginx 源码编译安装与平滑升级

    Nginx基础篇-Nginx 源码编译安装与平滑升级 Nginx官网下载地址 http://nginx.org/ 1.安装依赖包 yum -y install pcre-devel zlib-deve ...

  8. 源码方式安装的nginx注册到systemctl管理

    用源码方式安装的nginx每次都要进入安装目录才能进行启动.重启.停止操作,使用yum install nginx方式安装的话会自动注册到systemctl管理中,源码方式安装的nginx注册到sys ...

  9. 内存池组件以及根据nginx内存池源码设计实现简易内存池

    目录 造轮子内存池原因引入 大量的malloc/free小内存所带来的弊端 弊端 出现场景 大牛解决措施(nginx内存池) 内存池技术 啥叫作内存池技术 内存池技术为啥可以解决上文弊端 高并发内存池 ...

  10. RedHat系列软件管理(第二版) --源码包安装

    RedHat系列软件管理 --源码包安装 源码包特点: 拥有广泛的平台支持性,可以装在所有的类UNIX操作系统上,不用考虑CPU架构. 灵活性,可以在安装过程中指定特有的选项. 定制度非常高,可以自己 ...

最新文章

  1. 服务器修改mime类型,服务器上没有设置mime类型
  2. mysql linux 下载安装,Mysql 下载 安装 for linux
  3. java第十三章总结
  4. 搜索引擎蜘蛛爬虫原理
  5. 前端学习(2545):找不到模块
  6. JavaScript中函数的上下文——this
  7. 【算法笔记】数论基础:康托展开(全排列和序号之间的映射)
  8. matlab转换器dcdc,关于如何用 Simulink 设计 DC/DC 转换器的分析和介绍
  9. Windows 10 Office文件图标异常处理(Word | Excel | Powerpoint图标白色、右键新建找不到文件)
  10. 老树发新芽-前后端分离实践
  11. 出租车GPS数据分析的常规方法
  12. 互联网时代颠覆的传统行业
  13. 一生中必读的30个故事
  14. 大噶好,今天是应景的二分法
  15. 8051单片机基础3:C51内存模型(small, compact和large)
  16. 计算机丢失UxTheme无法修复,win7电脑系统开机提示uxtheme.dll丢失怎么办
  17. Chrome+ProxySwitchySharp+Putty
  18. 毕业典礼分享:人生就是一场「读书会」
  19. 应用计算机软件matlab使用迭代法仿真激光谐振腔模式_【军工央企,津贴10万,包工作餐】中国航天科工集团光量子技术及应用总体部人才招聘...
  20. linux系统工控软件,8种工控平台及工控平台的应用设计方案

热门文章

  1. minio 文件服务器,5分钟解决SpringBoot集成minio文件服务器的过程
  2. OFFICE2007 自编宏使用 以及 文件未找到 VBA6.DLL 错误处理
  3. android 取色器
  4. linux系统如何更改输入法切换快捷键,linux中什么快捷键可实现中英文的切换
  5. 财务分析报表APP的功能优势
  6. java 菜刀_Java中国菜刀(Cknife)的模拟终端乱码解决方法 | 【韩涛博客】
  7. Web前端的优点有哪些?为什么Web前端可以如此火爆?
  8. 五大常用算法之贪心算法
  9. js混淆还原工具_技术分享:几种常见的JavaScript混淆和反混淆工具分析实战
  10. AutoCAD(英文版)中所有英语词汇的翻译