nginx使用rewrite报错的解决

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/
目录 项目场景: 问题描述 原因分析: 解决方案:

项目场景:

今天编译安装nginx的时候想着要做rewrite功能,匆忙瞟了一眼编译文档就直接make&&make install了,然后再修改配置文件的时候一直报错,语法死活过不去。现在记录一下本次报错的情况。

问题描述

由于本人的英语不怎么好,看了一下help文档,一个without开头的和一个disable开头的,想都没想直接添加了without开头的模块,噩梦就此开始。

nginx使用rewrite报错的解决插图

配置好文件的时候我依旧信心满满的./sbin/nginx -t 检查语法,嗯?报错了,意料之中,可能是那里配置写错了,可是当我检查了一遍又一遍的时候,开始慌了。

nginx使用rewrite报错的解决插图1

原因分析:

首先根据提示我们知道nginx无法解析rewrite,(未知的指令“rewrite”),我想着应该是模块没装,或者其依赖pcre、pcre-devel没装(大家排查的时候也可以看看这两个依赖)。然后我检查了一下依赖(图一)。确实好像没啥问题,该装的都装了。我知道肯定是编译或者依赖的问题,然后我就打开了百度。

nginx使用rewrite报错的解决插图2

解决方案:

紧接着找到了这么一句话,默认参数编译nginx就会支持rewrite的模块。然后我忽然想起来without是除什么之外,难不成我这个是把rewrite功能关掉了!然后我就直接编译安装,什么参数也没加,果然,successful!

nginx使用rewrite报错的解决插图3

呵呵!被自己蠢哭了,顺便分享一下我找到的一个关于nignx的编译的小知识。

在”./configure”配置中,”–with”表示启用模块,也就是说这些模块在编译时不会自动构建”–without”表示禁用模块,也就是说这些模块在编译时会自动构建,若你想Nginx轻量级运行,可以去除一些不必要的模块。

免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容