centos8安装nginx步骤及出现的一系列错误问题解决

1.环境安装

1.安装gcc环境

$ sudo yum -y install gcc gcc-c++ # nginx 编译时依赖 gcc 环境

2.安装pcre

$ sudo yum -y install pcre pcre-devel # 让 nginx 支持重写功能

3.安装zlib

# zlib 库提供了很多压缩和解压缩的方式,nginx 使用 zlib 对 http 包内容进行 gzip 压缩
$ sudo yum -y install zlib zlib-devel 

4.安装openssl

# 安全套接字层密码库,用于通信加密
$ sudo yum -y install openssl openssl-devel

2.解压并重命名安装包

sudo tar -zxvf  nginx-1.11.5.tar.gz # 解压缩
mv nginx-1.11.5 nginx # 重命名

3.进入到重命名后的nginx目录下检查环境

$ ./configure --prefix=/usr/local/nginx # 检查平台安装环境

4.编译安装

make && make install

5.如上述未出现问题,进入sbin目录下启动nginx

/usr/local/nginx/sbin/nginx  # 启动nginx
/usr/local/nginx/sbin/nginx -s reload # 重启加载服务
/usr/local/nginx/sbin/nginx -s stop # 停止服务

6.遇到问题

1.报错如下内容

src/core/ngx_murmurhash.c: In function ‘ngx_murmur_hash2’:
src/core/ngx_murmurhash.c:37:11: error: this statement may fall through [-Werror=implicit-fallthrough=]
         h ^= data[2] << 16;
         ~~^~~~~~~~~~~~~~~~
src/core/ngx_murmurhash.c:38:5: note: here
     case 2:
     ^~~~
src/core/ngx_murmurhash.c:39:11: error: this statement may fall through [-Werror=implicit-fallthrough=]
         h ^= data[1] << 8;
         ~~^~~~~~~~~~~~~~~
src/core/ngx_murmurhash.c:40:5: note: here
     case 1:

解决方法(亲测):编辑objs/Makefile文件,删除CFLAGS中的Werror

vim /usr/local/dev/nginx/nginx/objs/Makefile

2.继续make会遇到如下问题

src/os/unix/ngx_user.c: In function ‘ngx_libc_crypt’:
src/os/unix/ngx_user.c:36:7: error: ‘struct crypt_data’ has no member named ‘current_salt’
     cd.current_salt[0] = ~salt[0];
       ^
make[1]: *** [objs/Makefile:732: objs/src/os/unix/ngx_user.o] Error 1
make[1]: Leaving directory '/usr/local/java/nginx-1.9.9'
make: *** [Makefile:8: build] Error 2
[root@iZuf6bhe673f5qtkz6pwjuZ nginx-1.9.9]#

解决方法:编辑/usr/local/dev/nginx/nginx/src/os/unix/ngx_user.c文件,注释掉cd.current_salt[0] = ~salt[0]; 这行代码

vim /usr/local/dev/nginx/nginx/src/os/unix/ngx_user.c

进到ngx_user.c文件后

/ngx_libc_crypt  ##表示搜索ngx_libc_crypt,找到这个方法下面的cd.current_salt[0] = ~salt[0];注释,注意,注释的时候是/*cd.current_salt[0] = ~salt[0];*/

完了之后继续make && make install 就ok啦

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值