当前位置: 首页 > news >正文

nginx官网源代码方式安装nginx并编译

从Nginx官网下载特定版本的源代码并编译安装的步骤如下:

  1. 确定需要的版本
    前往Nginx 官方网站下载页面,选择你需要的Nginx版本。

  2. 下载源代码
    使用wget命令下载源代码压缩包。例如,下载1.21.0版本的Nginx:

    wget http://nginx.org/download/nginx-1.21.0.tar.gz
    
  3. 解压源代码

    tar -zxvf nginx-1.21.0.tar.gz
    
  4. 进入源代码目录

    cd nginx-1.21.0
    

5.安装编译依赖
编译Nginx之前,需要安装一些依赖库,如PCRE、zlib和OpenSSL。使用以下命令安装:

sudo apt-get install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev
  1. 配置编译选项
    使用./configure脚本配置编译选项。你可以添加不同的参数来启用额外的功能,如SSL、HTTP缓存、stream等。例如,启用SSL和HTTP缓存的配置如下:

    ./configure --with-http_ssl_module --with-http_gzip_static_module  --with-stream
    

    如果你需要动态模块,可以添加 --with-dynamic-modules=PATTERN 参数。

  2. 编译Nginx
    使用make命令编译Nginx:

    make
    
  3. 安装Nginx
    编译成功后,使用make install命令安装Nginx到/usr/local/nginx

    sudo make install
    
  4. 验证安装
    检查Nginx版本确认是否安装成功:

    /usr/local/nginx/sbin/nginx -v
    
  5. 启动Nginx
    启动Nginx服务:

    sudo /usr/local/nginx/sbin/nginx
    
  6. 配置Nginx(如果需要):
    如果默认配置不符合你的需求,编辑配置文件/usr/local/nginx/conf/nginx.conf

  7. 设置开机启动(可选):
    创建一个systemd服务文件来管理Nginx,使其开机自启:

    sudo nano /etc/systemd/system/nginx.service
    

    在打开的编辑器中,添加以下内容:

    [Unit]
    Description=The NGINX HTTP and reverse proxy server
    After=syslog.target network.target remote-fs.target nss-lookup.target[Service]
    Type=forking
    PIDFile=/run/nginx.pid
    ExecStartPre=/usr/local/nginx/sbin/nginx -t
    ExecStart=/usr/local/nginx/sbin/nginx
    ExecReload=/usr/local/nginx/sbin/nginx -s reload
    ExecStop=/bin/kill -s QUIT $MAINPID
    PrivateTmp=true[Install]
    WantedBy=multi-user.target
    

    保存并退出编辑器。然后,启动并启用Nginx服务:

    sudo systemctl start nginx
    sudo systemctl enable nginx
    
  8. 验证服务状态
    检查Nginx服务的状态:

    sudo systemctl status nginx
    

通过以上步骤,你可以从源代码编译并安装特定版本的Nginx。请确保在编译安装过程中根据你的具体需求配置相应的选项。

相关文章:

nginx官网源代码方式安装nginx并编译

从Nginx官网下载特定版本的源代码并编译安装的步骤如下: 确定需要的版本: 前往Nginx 官方网站下载页面,选择你需要的Nginx版本。 下载源代码: 使用wget命令下载源代码压缩包。例如,下载1.21.0版本的Nginx:…...

iOS ActivityViewController使用

UIActivityViewController是iOS中用于展示一个活动列表的视图控制器,允许用户通过各种内置或第三方的应用来分享内容。以下是使用UIActivityViewController分享文本内容的示例代码: import UIKit class ViewController: UIViewController { IBA…...

新手快速上手IDEA【常用快捷键】

目录 一、常用二、进阶(提高编码速度)三、其他四、查找、替换与关闭最后 一、常用 说明快捷键复制代码ctrl c粘贴ctrl v剪切ctrl x撤销ctrl z反撤销ctrl shift z保存-save allctrl s全选-select allctrl a 二、进阶(提高编码速度&a…...

MySQL里如果有字段是function怎么查询呢?

在MySQL中,字段名通常不会命名为function,因为FUNCTION是MySQL的保留关键字,用于定义存储函数。但是,如果你确实有一个字段名叫做function(尽管这通常不是一个好的实践),你仍然可以查询它。你只…...

从高海拔到严寒季的测量作业更要「快准稳」,怎么实现?

西藏那曲海拔4500米公路勘测项目赶工期 “必须要保障在西藏那曲地区承接的公路勘测项目赶工期需求,海拔高达4500米、网络通讯不足、部分范围存在无网以及地基信号覆盖可能不足的情况,需要能满足环境和项目需求的专业RTK设备紧急送到。” 客户的一个电话…...

WowTab:简洁界面,效率神器,重塑新标签页浏览体验

目录 一、插件简介 二、插件功能 2.1 支持两种模式切换 2.2 效率组件介绍 2.3 设置中心 三、使用总结 四、插件安装说明 4.1 Edge安装 4.2 Chrome安装 大家在日常办公当中,是不是觉得新标签页太平淡无奇?来,给自己的浏览器加点料&…...

PostgreSQL 17 Beta1 发布,酷克数据再次贡献核心力量

得益于全球的开发者贡献,PostgreSQL已成长为一款拥有众多全球用户和贡献者、成熟稳定的开源数据库。2024年5月23日,PostgreSQL全球开发组宣布,PostgreSQL 17的首个 Beta 版本现已开放下载。本次新版本带来了众多惊喜。值得一提的是&#xff0…...

CDH服务红,查看日志发现host有问题

看host后,发现里面节点ip都是127.0.0.1然后全部改成对应的ip, 1.在/etc/hosts里面全部加上了 ip以及对应的角色名称 2然后注释了127.0.0.1 hostname 3.然后重启所有的机器agent和server,在重新登录,点击重新部署。 重启agent sy…...

数据分析------统计学知识点(三)

相关性分析 1.趋势分析与散点图 散点图可帮助我们发现和理解变量间的关系,可直观观察是否有相关性。 (1)散点图定义及组成要素 散点图是一种以点的形式在直角坐标系上表示两个数值变量间关系的图表 横坐标(x轴)&a…...

MySQL 导出一条数据的插入语句

1.MySQL 导出一条数据的插入语句的方法 在MySQL中,如果我们想要导出一条数据的插入语句,我们可以使用SELECT ... INTO OUTFILE语句(但这通常用于将整个表或查询结果导出到一个文件中),或者我们可以手动构建插入语句。…...

隐藏 IP 地址的重要性是什么?

在当今的数字时代,保护我们的在线身份至关重要。从保护个人信息到保护隐私,互联网用户越来越多地寻求增强在线安全性的方法。保持匿名和保护敏感数据的一个关键方面是隐藏您的 IP 地址。在这篇博文中,我们将深入探讨隐藏 IP 地址的重要性&…...

Oracle 19c linux安装

下载Oracle Database Preinstallation RPM,该包会自动下载依赖,创建oracle用户, 手动下载地址:https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/index.html wget http://yum.oracle.com/repo/OracleLinux/OL7/latest…...

AI音乐生成流程

suno.com...

android room数据库升级脚本常见问题

room数据库升级很容易遇到一个问题, java.lang.IllegalStateException: Migration didnt properly handle: Expected:xxx Found:xxx 意思是数据库执行完你编写的升级脚本后,发现数据库当前的表结构与你代码中的Entity class结构不一致,所…...

在 iCloud.com 上导入、导出或打印联系人

想将iPhone上的电话本备份一份到本地电脑上,发现iTunes好像只是音乐播放了,不再支持像电话本等功能,也不想通过其他第三方软件,好在可以通过iCloud进行导入导出。下面只是对操作过程进行一个图片记录而已,文字说明可以…...

JavaScript中this方法;var,let,constd区别;JSON是什么

this方法 1、在对象方法中, this 指向调用它所在方法的对象。 2、单独使用 this,它指向全局(Global)对象。 3、函数使用中,this 指向函数的所属者。 4、严格模式下函数是没有绑定到 this 上,这时候 this 是 undefined。 5、在 HT…...

Mybatis不明白?就这一篇带你轻松入门

引言:烧脑的我一直在烧脑的寻找资料,寻找网课,历经磨难让一个在大一期间只会算法的我逐渐走入Java前后端开发,也是一直在自学的道路上磕磕碰碰,也希望这篇文章对于也是同处于自学的你有所帮助,也希望你继续…...

pymupdf提取pdf表格及表格数据合并

pymupdf提取pdf表格非常快速,相比其他库是个更好的选择. 一个行列多的表格打印成pdf后会由于页宽分页原因变成多个表格,提取的多个表格需要合并为一个表格,再来处理数据. 下面代码中merge函数用于合并表格&#xff0…...

门外汉一次过软考中级(系统集成项目管理工程师)秘笈,请收藏!

24上软考考试已经结束,24下软考备考又要开启了!今年软考发生了改革,很多考试由一年考两次变成了一年考一次,比如高级信息系统项目管理师,比如中级系统集成项目管理工程师,这两科是高、中级里相对简单&#…...

[leetcode hot 150]第一百零八题,将有序数组转换为二叉搜索树

题目:给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 平衡二叉搜索树。 给定一个有序的整数数组,我们需要构建一棵平衡的二叉搜索树。平衡二叉树是指任意一个节点的左右子树的高度差不超过1。 由于给定的数组是有序的…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

Kafka入门-生产者

生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言: 双亲委派机制对于面试这块来说非常重要,在实际开发中也是经常遇见需要打破双亲委派的需求,今天我们一起来探索一下什么是双亲委派机制,在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言: 类加载器 1. …...

ZYNQ学习记录FPGA(一)ZYNQ简介

一、知识准备 1.一些术语,缩写和概念: 1)ZYNQ全称:ZYNQ7000 All Pgrammable SoC 2)SoC:system on chips(片上系统),对比集成电路的SoB(system on board) 3)ARM:处理器…...

​​企业大模型服务合规指南:深度解析备案与登记制度​​

伴随AI技术的爆炸式发展,尤其是大模型(LLM)在各行各业的深度应用和整合,企业利用AI技术提升效率、创新服务的步伐不断加快。无论是像DeepSeek这样的前沿技术提供者,还是积极拥抱AI转型的传统企业,在面向公众…...

32单片机——基本定时器

STM32F103有众多的定时器,其中包括2个基本定时器(TIM6和TIM7)、4个通用定时器(TIM2~TIM5)、2个高级控制定时器(TIM1和TIM8),这些定时器彼此完全独立,不共享任何资源 1、定…...

从实验室到产业:IndexTTS 在六大核心场景的落地实践

一、内容创作:重构数字内容生产范式 在短视频创作领域,IndexTTS 的语音克隆技术彻底改变了配音流程。B 站 UP 主通过 5 秒参考音频即可克隆出郭老师音色,生成的 “各位吴彦祖们大家好” 语音相似度达 97%,单条视频播放量突破百万…...