Tengine安装以及碰到的问题解决办法

2024-01-07 07:48

本文主要是介绍Tengine安装以及碰到的问题解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近的项目准备上APP,考虑到高可用跟负载均衡,前期并发量不大,能撑起来千人访问即可,我决定在应用服务器前面放置Nginx来实现,通过了解,决定使用淘宝优化的Nginx-Tengine版本,经过查询发现这个版本并没有提供Windows的版本,那就用Linux的呗,起个虚拟器,下载Tengine,安装Tengine的时候发现它还依赖于其他的包,都安装上吧,网上安装的文档一大把,搜了下大同小异,按照步骤装之,发现报错,查了下,发现是安装命令什么的都不对,真是服了,果然是天下文章一大抄啊,都没有自己实践过就Copy过来了。

这些安装包回头我会打包放到网盘供大家下载。

 先把这几个文件下载下来 PCRE OPENSSL  Zlib  jemalloc

安装PCRE:

进入到PCRE的目录,执行./configure 编译得到的反馈是configure: error: You need a C++ compiler for C++ support.

那先装C++的编译器好了,命令:yum install -y gcc gcc-c++ ,悲催的网络啊,还是不行,下载GCC的安装包继续

将镜像挂载上去
ls -l /dev/cdrom |grep cd   这个
创建挂载文件夹,将iso文件挂载到/mnt/cdrom文件夹
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
然后进入Packages后
ls *gcc*,发现了gcc-c++的安装包,安装之,又出错,有依赖,先安装依赖包
安装
rpm -ivh libstdc++-devel-4.8.5-4.el7.x86_64.rpm
rpm -ivh gcc-c++-4.8.5-4.el7.x86_64.rpm

安装成功,回过头来再编译

编译成功,真不容易,make && make install安装,成功,PCRE安装完成。

查看pcre是否成功安装
rpm -qa  pcre

华丽的分隔符********************

安装OPENSSL 

网上说执行./configure的都是没有操作过的,安装说明看read me文件在Install文件中,内容如下:

 To install OpenSSL, you will need:* make* Perl 5* an ANSI C compiler* a development environment in form of development libraries and Cheader files* a supported Unix operating systemQuick Start-----------If you want to just get on with it, do:$ ./config$ make$ make test$ make install
执行./config

按照文件的操作执行OK,接着装下一个

华丽的分隔符********************

安装ZLIB,执行命令:

./configure

make&&make install

执行成功。

华丽的分隔符********************

安装jemalloc

下载的文件是jemalloc-3.6.0.tar.bz2,查了下应该使用tar -jxvf命令解压,执行,又悲催的报错了

错误关键词  tar: bzip2:无法 exec: 没有那个文件或目录

搜下,如何解决,说可以直接yum安装解决,但是可恨的网络啊。

yum install -y bzip2 试试吧,居然成功了

 华丽的分隔符******************** 

Tengine的安装

tar -xzvf解压,然后执行命令

./configure --prefix=/usr/local/nginx --user=root --group=root --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.2 --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.40 --with-jemalloc
make&&make install

然后执行nginx -c /usr/local/nginx/conf/nginx.conf 不行,提示 -bash: nginx: 未找到命令还有什么libjemalloc.3.so什么的找不到文件,搜了下找不到原因,安装jemalloc的时候提示了很多警告,怀疑与警告有关,重装之,问题仍在,看来问题跟jemalloc无关,查看Tengine的命令怀疑与未指定jemalloc的路径有关,指定路径试一次。

./configure --prefix=/usr/local/nginx --user=root --group=root --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.2 --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.40 --with-jemalloc=/usr/local/src/jemalloc-3.6.0
make&&make install
安装完成后执行,执行成功,看来这次是成功安装了。

启动:/usr/local/nginx/sbin/nginx 
关闭:/usr/local/nginx/sbin/nginx  -s stop
所使用的安装包下载地址,建议大家还是尽量去官网下载最新版本的    链接: http://pan.baidu.com/s/1c19H9Fa 密码: p9f2
下一个目标,把Tengine设置成系统服务,开机启动。




这篇关于Tengine安装以及碰到的问题解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/579226

相关文章

详谈redis跟数据库的数据同步问题

《详谈redis跟数据库的数据同步问题》文章讨论了在Redis和数据库数据一致性问题上的解决方案,主要比较了先更新Redis缓存再更新数据库和先更新数据库再更新Redis缓存两种方案,文章指出,删除R... 目录一、Redis 数据库数据一致性的解决方案1.1、更新Redis缓存、删除Redis缓存的区别二

oracle数据库索引失效的问题及解决

《oracle数据库索引失效的问题及解决》本文总结了在Oracle数据库中索引失效的一些常见场景,包括使用isnull、isnotnull、!=、、、函数处理、like前置%查询以及范围索引和等值索引... 目录oracle数据库索引失效问题场景环境索引失效情况及验证结论一结论二结论三结论四结论五总结ora

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

element-ui下拉输入框+resetFields无法回显的问题解决

《element-ui下拉输入框+resetFields无法回显的问题解决》本文主要介绍了在使用ElementUI的下拉输入框时,点击重置按钮后输入框无法回显数据的问题,具有一定的参考价值,感兴趣的... 目录描述原因问题重现解决方案方法一方法二总结描述第一次进入页面,不做任何操作,点击重置按钮,再进行下

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

解决mybatis-plus-boot-starter与mybatis-spring-boot-starter的错误问题

《解决mybatis-plus-boot-starter与mybatis-spring-boot-starter的错误问题》本文主要讲述了在使用MyBatis和MyBatis-Plus时遇到的绑定异常... 目录myBATis-plus-boot-starpythonter与mybatis-spring-b

SQL Server数据库磁盘满了的解决办法

《SQLServer数据库磁盘满了的解决办法》系统再正常运行,我还在操作中,突然发现接口报错,后续所有接口都报错了,一查日志发现说是数据库磁盘满了,所以本文记录了SQLServer数据库磁盘满了的解... 目录问题解决方法删除数据库日志设置数据库日志大小问题今http://www.chinasem.cn天发

mysql主从及遇到的问题解决

《mysql主从及遇到的问题解决》本文详细介绍了如何使用Docker配置MySQL主从复制,首先创建了两个文件夹并分别配置了`my.cnf`文件,通过执行脚本启动容器并配置好主从关系,文中还提到了一些... 目录mysql主从及遇到问题解决遇到的问题说明总结mysql主从及遇到问题解决1.基于mysql

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

如何安装 Ubuntu 24.04 LTS 桌面版或服务器? Ubuntu安装指南

《如何安装Ubuntu24.04LTS桌面版或服务器?Ubuntu安装指南》对于我们程序员来说,有一个好用的操作系统、好的编程环境也是很重要,如何安装Ubuntu24.04LTS桌面... Ubuntu 24.04 LTS,代号 Noble NumBAT,于 2024 年 4 月 25 日正式发布,引入了众