nginx源码安装全过程分享,报错“src/os/unix/ngx_user.c:36:7: 错误:‘struct crypt_data’没有名为‘current_salt’的成员” 解决方案

2023-05-16

nginx源码安装全过程分享,报错“src/os/unix/ngx_user.c:36:7: 错误:‘struct crypt_data’没有名为‘current_salt’的成员” 解决方案

    • 一、首先下载好nginx。
    • 二、安装GCC和依赖库
    • 三、把nginx压缩文件上传到linux
    • 四、配置
    • 五、编译阶段
    • 六、验证是否安装成功

查看## nginx源码安装全过程分享,报错“src/os/unix/ngx_user.c:36:7: 错误:‘struct crypt_data’没有名为‘current_salt’的成员” 解决方案直接空降标题五

一、首先下载好nginx。

链接:nginx下载地址

二、安装GCC和依赖库

由于 Nginx 是由 C/C++语言编写的,所以对其进行编译就必须要使用相关编译器。对于C/C++语言的编译器,使用最多的是 gcc 与 gcc-c++。

yum  install  gcc  gcc-c++ -y

还有一些依赖库:

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

三、把nginx压缩文件上传到linux

我在/opt目录下新建了一个apps目录,将nginx源码放入apps目录下,并解压

四、配置

把nginx源码解压好之后,进入到当前目录下
cd /opt/nginx-1.8.1
然后执行下面的命令:

[root@node1 nginx-1.8.1]# ./configure --prefix=/opt/nginx --with-http_ssl_module --with-http_gzip_static_module --error-log-path=/var/log/nginx/nginx.log --pid-path=/var/log/nginx/pid

五、编译阶段

在命令行输入make之后,他竟然报错了,明明一步一步跟着教程来的。没办法,只能百度查原因。

src/core/ngx_murmurhash.c: 在函数‘ngx_murmur_hash2’中:
src/core/ngx_murmurhash.c:37:11: 错误:this statement may fall through [-Werror=implicit-fallthrough=]
         h ^= data[2] << 16;
         ~~^~~~~~~~~~~~~~~~
src/core/ngx_murmurhash.c:38:5: 附注:here
     case 2:
     ^~~~
src/core/ngx_murmurhash.c:39:11: 错误:this statement may fall through [-Werror=implicit-fallthrough=]
         h ^= data[1] << 8;
         ~~^~~~~~~~~~~~~~~
src/core/ngx_murmurhash.c:40:5: 附注:here
     case 1:
     ^~~~
cc1:所有的警告都被当作是错误
make[1]: *** [objs/Makefile:441:objs/src/core/ngx_murmurhash.o] 错误 1
make[1]: 离开目录“/opt/apps/nginx-1.8.1”

然后查了百度,根据https://www.cnblogs.com/wxj612/p/13696628.html去操作,然后又报了一个新的错误

src/os/unix/ngx_user.c: 在函数‘ngx_libc_crypt’中:
src/os/unix/ngx_user.c:36:7: 错误:‘struct crypt_data’没有名为‘current_salt’的成员
     cd.current_salt[0] = ~salt[0];
       ^
make[1]: *** [objs/Makefile:721:objs/src/os/unix/ngx_user.o] 错误 1
make[1]: 离开目录“/opt/apps/nginx-1.8.1”
make: *** [Makefile:8:build] 错误 2

心态有点崩,然后也不管了,想着死马当活马医,直接vim src/os/unix/ngx_user.c把它报错的这一句注释掉了
在这里插入图片描述

然后他又报了一次和第一次相同的错误

src/core/ngx_murmurhash.c: 在函数‘ngx_murmur_hash2’中:
src/core/ngx_murmurhash.c:37:11: 警告:this statement may fall through [-Wimplicit-fallthrough=]
         h ^= data[2] << 16;
         ~~^~~~~~~~~~~~~~~~
src/core/ngx_murmurhash.c:38:5: 附注:here
     case 2:
     ^~~~
src/core/ngx_murmurhash.c:39:11: 警告:this statement may fall through [-Wimplicit-fallthrough=]
         h ^= data[1] << 8;
         ~~^~~~~~~~~~~~~~~
src/core/ngx_murmurhash.c:40:5: 附注:here
     case 1:

和第一次一样处理就可以了。
接着make install

六、验证是否安装成功

找到nginx下的sbin目录,执行下面命令:

[root@localhost sbin]# ./nginx

查看nginx是否在进程中

[root@localhost sbin]# ps aux|grep nginx
root      282589  0.0  0.0  37832   560 ?        Ss   19:33   0:00 nginx: master process ./nginx
nobody    282590  0.0  0.4  71420  4508 ?        S    19:33   0:00 nginx: worker process
root      283306  0.0  0.1 221924  1156 pts/3    S+   19:33   0:00 grep --color=auto nginx

在页面中输入"https:[ip地址]",如果出现以下页面,说明安装成功。在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

nginx源码安装全过程分享,报错“src/os/unix/ngx_user.c:36:7: 错误:‘struct crypt_data’没有名为‘current_salt’的成员” 解决方案 的相关文章

  • 我怎样才能重写这个nginx“if”语句?

    例如 我想这样做 if http user agent MSIE 6 0 http user agent MSIE 7 0 etc etc rewrite ROOT ROOT ancient last break 而不是这个 if http
  • NGinx 域名重定向

    假设我有一个名为 xyz co 的网站 我还有其他具有相同前缀的域名 例如 xyz com xyz it xyz co it 现在 nginx 与端口 80 的 nginx conf 中的 server name xyz co 配合得很好
  • kubernetes nginx ingress 无法将 HTTP 重定向到 HTTPS

    我有一个托管在 Google Cloud 平台中的网络应用程序 该应用程序位于负载均衡器后面 而负载均衡器本身位于入口后面 入口设置了 SSL 证书 并按预期接受 HTTPS 连接 但有一个问题 我无法让它将非 HTTPS 连接重定向到 H
  • UNIX crontab 中的日期时间格式

    我每 6 小时运行一次 cron 来备份我的数据库 我希望文件名包含按以下格式创建的日期和时间 mysqlbackup 22 5 2013 15 45 sql gz 这是我运行的命令 date date d mysqldump uusern
  • 如何在运行 NGINX Docker 容器的 AWS EC2 上启用 HTTPS?

    我在 AWS 上有一个运行 Amazon Linux 2 的 EC2 实例 在上面 我安装了 Git docker 和 docker compose 完成后 我克隆了我的存储库并运行docker compose up让我的生产环境启动 我访
  • 如何拆分一行并重新排列其元素?

    我在一行中有一些数据 如下所示 abc edf xyz rfg yeg udh 我想呈现如下数据 abc xyz yeg edf rfg udh 以便打印备用字段并用换行符分隔 有没有这样的衬里 下列awk脚本可以做到这一点 gt echo
  • Supervisorctl 错误:unix:///var/run/supervisord.sock 拒绝连接? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这是我的配置文件 我运行supervisord c etc supervisor supervisord conf效果很好 当我尝试跑步时
  • 如何复制每个扩展名为 X 的文件,同时保留原始文件夹结构? (类Unix系统)

    我正在尝试将每个 HTML 文件从 src 文件夹复制到 dist 文件夹 但是 我想保留原始文件夹结构 如果 dist 文件夹不存在 我想创建一个新文件夹 如果文件夹不存在则创建 d dist mkdir dist 复制每个文件 cp R
  • Http POST 删除 URL 中的端口

    我有一个用 Django 构建的网络应用程序 我目前正在家里的路由器后面的笔记本电脑上运行它 我将路由器配置为将发送到特定端口的所有流量路由到该笔记本电脑 我将 Nginx 作为 Apache 的反向代理 使用 mod wsgi 来运行 D
  • 找不到 NGINX brew 安装命令

    I do brew install nginx and get gt Downloading http nginx org download nginx 1 2 2 tar gz Already downloaded Library Cac
  • nginx 反向代理到 apache-wordpress 可以工作,但到外部 url 的 proxy_pass 失败

    我有一个针对 apache wordpress 的 nginx 反向代理设置 效果很好 但是 根据位置需要重定向到失败的外部 url 请检查以下配置 这是一个有效的设置吗 https platform com https platform
  • 将代码从 htaccess 重写为 nginx 配置?

    我在将 htaccess 文件中的重写代码实现到 nginx 配置中时遇到问题 我已经尝试过生成器 http winnginx com htaccess http winginx com htaccess用于生成我的重写 代码 我的ngin
  • nginx代理认证拦截

    我有几个服务 它们支持 nginx 实例 为了处理身份验证 在 nginx 中 我拦截每个请求并将其发送到身份验证服务 在那里 如果凭据正确 我将设置一个包含用户相关信息的 cookie 现在 请求应该被路由到适当的服务 并设置 cooki
  • 如何在Unix中将相对路径转换为绝对路径[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想转换 相对路径 home stevin data APP SERVICE datafile txt to 绝对路径 home stev
  • 连接到上游时 Nginx 错误:(13:权限被拒绝)

    我在我的中收到此错误nginx error log file 2014 02 17 03 42 20 crit 5455 0 1 connect to unix tmp uwsgi sock failed 13 Permission den
  • Kubernetes Ingress 在 nginx 反向代理后面运行

    我已经在可以从互联网访问的服务器上安装了 minikube 我创建了一个可用的 kubernetes 服务 gt kubectl get service myservice NAME CLUSTER IP EXTERNAL IP PORT
  • 设置 Pyenv 的路径

    我正在尝试在我的服务器中设置 Pyenv 的加载路径 bashrc file 我正在关注这个tutorial https realpython com intro to pyenv 它要求我们在哪里设置pyenv到加载路径 然而 在我的 b
  • 在以下程序中将产生多少个进程

    int main fork fork fork fork fork printf forked n return 0 当我们调用 fork 函数时 父进程会得到一个非零 pid而孩子得0分作为回报 基于这个逻辑 在第二个陈述中 我们必须应用
  • 如何修复 Nginx 自动 301 重定向到带有尾部斜杠的相同 URL?

    当我尝试将 Web 应用程序的子目录中的索引文件访问到相同的 URL 但附加了斜杠 时 Nginx 出现了不良行为 它正在重新路由请求 我有一个简单的 Web 应用程序 其中设置了一个根目录和其中的许多子目录 每个子目录中都有一个 inde
  • 在 Unix 中添加用户和组

    有谁知道在unix中添加用户和组以及删除它们的api吗 我想以编程方式执行此操作 谢谢 坦率 我开始查看一些系统调用并发现以下内容 请注意 它们具有不同的标准 因此并非所有标准都可以在您的 Unix 版本上运行 getpwent setpw

随机推荐

  • 16. STM32——测量空气的温度和湿度(STM32 + DHT11温湿度 + OLED显示)

    STM32 测量空气的温度和湿度 xff08 STM32 43 DHT11温湿度 43 OLED显示 xff09 DHT11温湿度相关介绍初始化GPIOB11启动DHT11获取一个字节获取数据代码整合DHT11 hDHT11 coled h
  • 17. STM32——SPI硬件

    STM32 SPI SPI协议SPI接口SPI接口框图SPI工作原理时钟信号的相位和极性CPHA 61 0CPHA 61 1 SPI中断状态标志发送缓存器空闲标志 xff08 TXE xff09 接收缓冲器非空 RXNE 忙BUSY标志 S
  • 关于anaconda下载之后在开始菜单找不到快捷方式的问题

    这是我在安装anaconda时犯的错误 xff0c 安装之后在开始菜单没有找到关于anaconda的文件夹 jupyter notebook spyder anaconda prompt 安装了好多遍 xff0c 最后才知道方法如此简单 第
  • 对帧率、I/P率、I帧间隔的理解2021-11-16

    对帧率 I P率 I帧间隔的理解 码率就是数据传输时单位时间传送的数据位数 一般我们用的单位是kbps即千位每秒 通俗一点的理解就是取样率 xff0c 单位时间内取样率越大 xff0c 精度就越高 xff0c 处理出来的文 件就越接近原始文
  • java读取jar包内的配置文件

    java读取jar包内的配置文件 span class token class name Properties span p span class token operator 61 span span class token keywor
  • 3、Proteus仿真STM32定时器TIM2与中断来控制流水灯的定时闪烁。

    一 实验说明 本次实验建立在上两次实验上 xff0c 稍加修改 xff0c 通过TIM2定时器中断控制LED流水灯的闪烁时间 xff0c 并且增加两个按键PA1 PA2 xff0c 其中PA1控制LED流水灯的启动 xff0c 8个灯先依次
  • HDFS基础知识(个人总结)

    HDFS存储优缺点 优点 高容错 因为它有多个副本可处理大数据 文件数量可达百万 缺点 HDFS可以追加 但不能修改某一条数据 若实在想修改 只能下载下来原文件进行修改后重新上传覆盖 不适合低延迟数据访问 如毫秒级 无法高效存储大量小文件
  • 校招笔试题1

    编码题 字符串S由小写字母构成 xff0c 长度为n 定义一种操作 xff0c 每次都可以挑选字符串中任意的两个相邻字母进行交换 询问在至多交换m次之后 xff0c 字符串中最多有多少个连续的位置上的字母相同 xff1f 输入描述 第一行为
  • 【Linux】c++创建新线程执行sh脚本

    Linux c 43 43 创建新线程执行sh脚本 前情提要 Linux profile d加入循环shell脚本 xff0c 重启登录黑屏system函数可以运行 sh脚本 需要包含stdlib h因为我的 sh脚本里有循环 不能放在主程
  • pip下载路径查看,解决在pycharm导入问题

    今天在学习图表数据可视化时 xff0c 用到了pyecharts包 xff0c 在cmd中输入pip install pyecharts xff0c 显示下载成功 xff0c 如下所示 xff1a 但在pycharm中仍不能导入pyecha
  • C语言学习笔记:函数递归-斐波那契数列

    什么是递归 在数学和计算机科学中 xff0c 递归指由一种 xff08 或多种 xff09 简单的基本情况定义的一类对象或方法 xff0c 并规定其他所有情况都能被还原为其基本情况 递归就是在运行的过程中调用自己 xff0c 递归关系就是实
  • python3安装教程

    前言 xff1a 建议使用3 6版本及以上 xff0c 系统自带的python2不要卸载 xff0c 一些系统命令要用 xff0c 2和3可以共存 一 Linux安装python3 Python 3 6 8 1 查看是否已安装python3
  • windows通过xrdp协议远程centos桌面

    windows通过xrdp协议远程连接centos图形化桌面 系统远程试验环境Centos7 9远程环境检查Xrdp服务包安装开放访问端口启用远程服务开始访问测试其他注意事项 系统远程试验环境 远控端 xff1a Windows10 被控端
  • 深度相机的障碍物检测

    深度相机的障碍物检测 这里简单备份一下 xff0c 有关深度相机障碍物检测的学习内容 1 准备相机的驱动 Ubuntu18 04 43 ROS 43 ros astra camera master 采用的是astra深度相机 xff0c 安
  • [转载]windows搭建cloudreve对接OneDrive教程

    文章转载于我的博客GoodBoyboy 39 s Blog xff5c 惬意小屋 点滴记忆 GoodBoyboy 39 s Blog 惬意小屋 点滴记忆 https blog goodboyboy top 36 html 一 前言 clou
  • ROBOMASTER机甲大师赛视觉组学习方案

    ROBOMASTER机甲大师赛视觉学习方案 视觉技能学习踩坑硬件平台环境配置个人修为坑 机甲大师 xff08 RoboMaster xff09 是由大疆创新 xff08 DJI xff09 的创始人汪滔发起并承办 由共青团中央 全国学联 深
  • 数据库系统原理--第2章课堂练习4--答案

    题目 设有一个数据库中有三个关系 xff1a 学生关系 S S xff0c SNAME xff0c AGE xff0c SEX 课程关系 C C xff0c CNAME xff0c TEACHER 学习关系 SC S xff0c C xff
  • Mac下用docker安装SQL Server教程/全过程分享

    小白第一次写博客 xff0c 有不对的地方请大家多多指导 前言 xff1a 开始学习数据库了 xff0c 老师要求装SQL Server xff0c 我整整装了三天三夜 xff08 眼泪汪汪 xff09 xff0c 积累下一些经验想分享给大
  • go反射获取func入参及其返回值类型

    span class token keyword package span main span class token keyword import span span class token punctuation span span c
  • nginx源码安装全过程分享,报错“src/os/unix/ngx_user.c:36:7: 错误:‘struct crypt_data’没有名为‘current_salt’的成员” 解决方案

    nginx源码安装全过程分享 xff0c 报错 src os unix ngx user c 36 7 错误 xff1a struct crypt data 没有名为 current salt 的成员 解决方案 一 首先下载好nginx 二