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

Nginx源码安装

文章目录

      • Nginx源码安装
        • 安装pcre库
        • 安装openssl库
        • 创建用户及用户组
        • 安装编译环境
        • 解压文件
        • 检测环境
        • 重要目录
        • 检查
        • 配置服务启动脚本
        • 查看效果:

Nginx源码安装

本实验基于RHEL73.10.0-327.el7.x86_64,尽量使用RHEL7或CentOS7。

安装pcre库

安装 pere 库是为了使 Nginx 支持具备 URI 重写功能的 rewrite 模块,如果不安装 pere 库,则Nginx无法使用该模块。

yum install -y pcre-devel

安装openssl库

防止安装过程中报错。

yum install -y openssl-devel

创建用户及用户组

groupadd -g 958 nginx
useradd  -u 956 -g 958 -c "Nginx User" -s /sbin/nologin nginx

安装编译环境

yum install gcc gcc-c++ make

解压文件

tar zxvf nginx-1.22.0.tar.gz -C /usr/local/src/
drwxr-xr-x. 8 1001 1001 4096 May 24  2022 nginx-1.22.0

检测环境

执行nginx目录下的configure脚本

./configure 
#检查汇总
Configuration summary+ using system PCRE library+ OpenSSL library is not used+ using system zlib librarynginx path prefix: "/usr/local/nginx"nginx binary file: "/usr/local/nginx/sbin/nginx"nginx modules path: "/usr/local/nginx/modules"nginx configuration prefix: "/usr/local/nginx/conf"nginx configuration file: "/usr/local/nginx/conf/nginx.conf"nginx pid file: "/usr/local/nginx/logs/nginx.pid"nginx error log file: "/usr/local/nginx/logs/error.log"nginx http access log file: "/usr/local/nginx/logs/access.log"nginx http client request body temporary files: "client_body_temp"nginx http proxy temporary files: "proxy_temp"nginx http fastcgi temporary files: "fastcgi_temp"nginx http uwsgi temporary files: "uwsgi_temp"nginx http scgi temporary files: "scgi_temp"
#然后
make
#再
make install

重要目录

[root@nginx nginx]# tree -d -L 1
.
├── client_body_temp 
├── conf #配置文件存放
├── fastcgi_temp
├── html #工作目录,等价于apache /var/www/html
├── logs #日志文件及pid文件
├── proxy_temp
├── sbin #启动脚本存放目录
├── scgi_temp
└── uwsgi_temp

检查

#查看Nginx版本
/usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.22.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) 
configure arguments:
#启动Nginx
/usr/local/nginx/sbin/nginx
#查看监听端口
netstat -lnutp | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      33728/nginx: master

配置服务启动脚本

vim /usr/lib/systemd/system/nginx.service
#Contents
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network.target remote-fs.target nss-lookup.target[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid #这里的pidFile一定要和配置汇总里的对应。
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /usr/local/nginx/logs/nginx.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /usr/local/nginx/logs/nginx.pid)"[Install]
WantedBy=multi-user.target
#检查
systemctl daemon-reload
#在使用systemctl启动前记得杀死nginx的进程,不然重启会失败。详细可以看错误日志。
systemctl restart nginx.service
netstat -lnutp| grep 80
tcp      0    0 0.0.0.0:80        0.0.0.0:*         LISTEN      70435/nginx: master 

至此Nginx源码安装完成。

查看效果:

#因为我这边虚拟机没有安装界面所以只能在物理机上访问,所以防护墙必须关。
systemctl stop firewalld.servicesed  -i 's/^SELINUX=enforcing/SELINUX=Permissive/' /etc/selinux/config

image-20230803232451633

相关文章:

Nginx源码安装

文章目录 Nginx源码安装注安装pcre库安装openssl库创建用户及用户组安装编译环境解压文件检测环境重要目录检查配置服务启动脚本查看效果: Nginx源码安装 注 本实验基于RHEL73.10.0-327.el7.x86_64,尽量使用RHEL7或CentOS7。 安装pcre库 安装 pere 库…...

【数据结构和算法】--N叉树返回根节点到目标节点的路径

目录 一、前言二、Java代码实现 一、前言 项目中接触一个问题:在大量有父子关系的列表中,需要筛选出特定约束的数据【要求某个目标节点延续到根节点的数据】。这个问题抽象为数据结构,就是:N叉树返回根节点到目标节点的路径 二、…...

Flutter环境搭建踩坑集锦

Flutter 背景准备工作先检查一下自己的电脑,看一下是不是满足配置要求下载安装配置环境下载安装JDK下载安装Android studio下载Flutterflutter doctor故障Android license status unknownNetwork resources 故障 后记 背景 发现一个不错的框架Flutter,听…...

WPF上位机7——MySql

MySql DML语句 db操作、表操作 字段的数据类型 修改表 表的数据操作 DQL语句 数据查询和去重查询 条件查询 模糊查询 聚合查询 分组查询 排序查询 分页查询 DCL语句 函数 字符串处理函数 数值函数 日期函数 流程函数 约束 外键约束 多表查询 内连接 外连接 自连接 子查询 列…...

Linux的基本指令(2)

指令1:man 作用:可以查询linux指令语法内容。 格式: man 指令 安装man指令: yum install -y man-pages 例如: 查询 指令 ls 的语法内容。 man ls 查询 fork 指令的语法内容。 man fork 在man中存在9个手册&…...

mySql-Linux-安装

mySql-Linux-通过YUM安装 下载 yum 源 [rootspark ~]# wget http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm --2023-07-31 22:51:21-- http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm 正在解析主机 repo.mysql.com (repo.mysql.com…...

JS实现IOS标准时间(JSON时间格式)格式转yyyy-mm-dd格式

JS实现IOS时间格式转yyyy-mm-dd格式 /*** IOS时间格式转yyyy-mm-dd格式*param iosDate [IOS时间格式]*return {string} [yyyy-mm-dd]**/ const convertIOSDateFormat (iosDate) > {if(!iosDate) {return -;}const date new Date(iosDate);const year date.getFullYear()…...

【Jmeter】 Report Dashboard 生成html图形测试报告

目录 背景 生成图形报告的方式 1、直接使用一个已存在的 CSV文件生成 2、负载测试完成后自动生成 使用示例 报告内容详情 测试报告摘要图 响应时间随时间变化曲线 活跃线程随时间变化曲线 I/O(Bytes)随时间变化曲线(忽略事务控制器示例结果) …...

7种有效安全的网页抓取方法,如何避免被禁止?

网页抓取是一种从互联网上抓取网页内容的过程,但在网络抓取种相信您也经常遇到障碍?尤其是做跨境业务的,在抓取国外的网站时更有难度。但我们站在您的立场上,提供七种有效的方法来进行网页抓取而不被阻止,最大限度地降…...

flask服务生成证书文件,采用https访问,开启用户密码验证

openssl req -x509 -newkey rsa:4096 -nodes -out cert.pem -keyout key.pem -days 3072开启用户密码验证 auth.verify_password def verify_password(username, password):if username abcdefg and password 1234546:return usernameapp.route(/post_request, methods[POST…...

上海首个“零工”就业云平台上线

1.背景 今年6月,黄浦区人社局在建立新业态新职业岗位信息发布机制,挖掘数字经济、电商微商、兼职、共享、远程等新业态岗位的基础上,和人力资源机构携手打造全市首个“新经济、新业态”零工就业云平台。 2. 平台简介 平台上汇聚了新生代互…...

面试必考精华版Leetcode104. 二叉树的最大深度

题目: 代码(首刷自解 day23): class Solution { public:int maxDepth(TreeNode* root) {if(rootnullptr) return 0;return max(maxDepth(root->left),maxDepth(root->right))1;} };...

winform panel中放置 usercontrol ,设置usercontrol随着dpi分辨率变化

在 WinForms 中,如果要使 UserControl 随着 DPI 分辨率的变化而自适应调整大小,可以遵循以下步骤: 使用 Anchor 和 Dock 属性:在 UserControl 中的控件布局时,使用 Anchor 和 Dock 属性来适应父控件的大小变化。 处理…...

更新页面无法回显

需求与问题: 在菜品管理开发中,我需要修改菜品,第一步是回显页面,但在我再三确认代码无误的情况下依旧无法回显内容 问题发现与解决: 经过排查,我发现我的DishDTO内容如下: Data public clas…...

CS 144 Lab Four -- the TCP connection

CS 144 Lab Four -- the TCP connection TCPConnection 简述TCP 状态图代码实现完整流程追踪 测试 对应课程视频: 【计算机网络】 斯坦福大学CS144课程 Lab Three 对应的PDF: Lab Checkpoint 4: down the stack (the network interface) TCPConnection 简述 TCPConnection 需…...

在Volo.Abp微服务中使用SignalR

假设需要通过SignalR发送消息通知,并在前端接收消息通知的功能 创建SignalR服务 在项目中引用 abp add-package Volo.Abp.AspNetCore.SignalR在Module文件中添加对模块依赖 [DependsOn(...typeof(AbpAspNetCoreSignalRModule))] public class IdentityApplicati…...

数据可视化(七)常用图表的绘制

1. #seaborn绘制常用图表 #折线图 #replot(x,y,kind,data) #lineplot(x,y,data) #直方图 #displot(data,rug) #条形图 #barplot&…...

【ARM 常见汇编指令学习 8 - dsb sy 指令及 dsb 参数介绍】

文章目录 ARM dsb sy 指令 上篇文章:ARM 常见汇编指令学习 7 - LDR 指令与LDR伪指令及 mov指令 下篇文章:ARM 常见汇编指令学习 9 - 缓存管理指令 DC 与 IC ARM dsb sy 指令 数据同步屏障是一种特殊类型的内存屏障。 只有当DSB指令执行完毕后&#xff…...

YOLOv5本地模型训练报错解决

报错解决 页面文件太小,无法完成操作 训练过程中,发生下图所示的报错,同时pycharm崩溃 1. 更改虚拟内存 进入高级系统设置,应该都会进,就不说过程了 设置虚拟内存大小 2. 减小占用内容大小 新建一个fixNvPe.py程序…...

tomcat p12证书另存为nginx .crt证书和.key私钥

tomcat p12证书另存为nginx .crt证书和.key私钥 Tomcat使用的.pfx或.keystore文件都是私钥及公钥证书一起的,通过pin保证安全;nginx只需要使用.pem或.crt公钥证书文件和.key私钥即可,如果原ssl证书不方便重新下载,在已有tomcat证…...

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

数据链路层的主要功能是什么

数据链路层&#xff08;OSI模型第2层&#xff09;的核心功能是在相邻网络节点&#xff08;如交换机、主机&#xff09;间提供可靠的数据帧传输服务&#xff0c;主要职责包括&#xff1a; &#x1f511; 核心功能详解&#xff1a; 帧封装与解封装 封装&#xff1a; 将网络层下发…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

稳定币的深度剖析与展望

一、引言 在当今数字化浪潮席卷全球的时代&#xff0c;加密货币作为一种新兴的金融现象&#xff0c;正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而&#xff0c;加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下&#xff0c;稳定…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

Java求职者面试指南:计算机基础与源码原理深度解析

Java求职者面试指南&#xff1a;计算机基础与源码原理深度解析 第一轮提问&#xff1a;基础概念问题 1. 请解释什么是进程和线程的区别&#xff1f; 面试官&#xff1a;进程是程序的一次执行过程&#xff0c;是系统进行资源分配和调度的基本单位&#xff1b;而线程是进程中的…...

莫兰迪高级灰总结计划简约商务通用PPT模版

莫兰迪高级灰总结计划简约商务通用PPT模版&#xff0c;莫兰迪调色板清新简约工作汇报PPT模版&#xff0c;莫兰迪时尚风极简设计PPT模版&#xff0c;大学生毕业论文答辩PPT模版&#xff0c;莫兰迪配色总结计划简约商务通用PPT模版&#xff0c;莫兰迪商务汇报PPT模版&#xff0c;…...