当前位置: 代码迷 >> 综合 >> Nginx安装错误 cd.current_salt[0] = ~salt[0]
  详细解决方案

Nginx安装错误 cd.current_salt[0] = ~salt[0]

热度:89   发布时间:2024-02-11 14:33:42.0

Nginx安装错误 cd.current_salt[0] = ~salt[0];

出现这个问题,原因暂时不明.
但是,一定不是Nginx的版本高,或者是服务器版本高的问题
因为我的服务器版本是CentOS 8.3,Nginx的版本是1.6.2,
这个版本,算是高的了吧

在这里插入图片描述
在这里插入图片描述

全过程

cd /usr/local

   
  • 1

下载 Nginx安装包

 wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

   
  • 1

解压

tar -xzvf nginx-1.6.2.tar.gz 

   
  • 1

准备环境

更新软件源:

sudo yum update

   
  • 1

1.pcre 库(rewrite)

sudo yum install libpcre3 libpcre3-dev

下载地址: http://www.pcre.org/

  • 1
  • 2
  • 3

2.gcc c++ 库(c++)

sudo yum  install build-essential

sudo yum install libtool

  • 1
  • 2
  • 3

3.openssl 库(ssl)

sudo yum install openssl

下载地址: http://www.openssl.org/

  • 1
  • 2
  • 3

4.zlib 库(gzip)

sudo yum  install zlib1g-dev

下载地址:http://www.zlib.net/

  • 1
  • 2
  • 3

CentOS安装Nginx环境准备:

yum -y install gcc-c++  

yum -y install pcre pcre-devel

yum -y install zlib zlib-devel

yum -y install openssl openssl-devel

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

到此环境准备完成,如果中途出现各种诡诡异异的ERROR,不用管

进入解压目录

cd nginx-1.6.2/

  
  • 1

配置:

./configure --prefix=/usr/local/nginx

  
  • 1

此时处于 /usr/local/nginx-1.6.2 目录下

cd objs/

vi Makefile

  • 1
  • 2
  • 3

在这里插入图片描述

将
CFLAGS =  -pipe  -O -W -Wall -Wpointer-arith -Wno-unused -Werror -g
后面的
-Werror -g
去掉

CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

回到 /usr/local/nginx-1.6.2 目录

cd ..

  
  • 1

编译:

make

  
  • 1

报错
在这里插入图片描述
执行

vi src/os/unix/ngx_user.c

  
  • 1

在这里插入图片描述
找到这里
在这里插入图片描述

/*cd.current_salt[0] = ~salt[0];*/

  
  • 1

注释掉,保存退出

再次编译:

make

  
  • 1

在这里插入图片描述

make成功

安装:

make install

  
  • 1

在这里插入图片描述

make install 成功

启动

sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

注意:-c 指定配置文件的路径,不加的话,nginx会自动加载默认路径的配置文件,可以通过-h查看帮助命令。

  • 1
  • 2
  • 3

查看进程:

ps -ef | grep nginx

  
  • 1

在这里插入图片描述
开放 80 端口 :

gedit /etc/sysconfig/iptables

service iptables restart #最后重启防火墙使配置生效

不想开放指定端口可以直接关闭防火墙 service iptables stop

  • 1
  • 2
  • 3
  • 4
  • 5

具体防火墙操作可参考我另一篇博客

传送门: https://blog.csdn.net/wuekun/article/details/106411440

启动 Nginx

启动之前先把Nginx进程 kill 掉,不然会报错误
在这里插入图片描述

在这里插入图片描述

启动 Nginx命令

以后都可以用这个命令启动Nginx

usr/local/nginx/sbin/nginx

  • 1
  • 2
  • 3

服务器浏览器输入

localhost:80

  
  • 1

或者是本机浏览器输入
服务器IP:80
的方式访问

在这里插入图片描述
出现此页面为安装成功

常用命令

1.负责裁剪的 Lua 脚本(/usr/local/Tengine/lua/ImageResizer.lua)

2.启动:/usr/local/nginx/sbin/nginx 表示使用默认配置文件

3.停止:/usr/local/nginx/sbin/nginx -s stop

4.重启:/usr/local/nginx/sbin/nginx -s reload

5.检查配置文件(nginx.conf)是否合法: /usr/local/nginx/sbin/nginx -t

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

配置负载均衡

在这里插入图片描述

配置动静分离

在nginx.conf配置文件中配置好静态内容处理之后,在nginx的html文件夹下创建一个与项目同名的文件夹,设置其权限777
在这里插入图片描述

常见错误

Nginx使用非默认文件启动报错

nginx: [emerg] open() “/usr/local/nginx/mime.types” failed (2: No such file or directory) in /usr/local/nginx/nginx.conf:18

Reason:

我们将自定义的nginx配置文件放在conf目录之外导致其启动需要引用的mine.types文件找不到 无法加载 所以报错

Nginx在请求时报400错误

在这里插入图片描述

3Q

QAQ

                                </div>