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

相关文章

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

mybatis和mybatis-plus设置值为null不起作用问题及解决

《mybatis和mybatis-plus设置值为null不起作用问题及解决》Mybatis-Plus的FieldStrategy主要用于控制新增、更新和查询时对空值的处理策略,通过配置不同的策略类型... 目录MyBATis-plusFieldStrategy作用FieldStrategy类型每种策略的作

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

Python Jupyter Notebook导包报错问题及解决

《PythonJupyterNotebook导包报错问题及解决》在conda环境中安装包后,JupyterNotebook导入时出现ImportError,可能是由于包版本不对应或版本太高,解决方... 目录问题解决方法重新安装Jupyter NoteBook 更改Kernel总结问题在conda上安装了

pip install jupyterlab失败的原因问题及探索

《pipinstalljupyterlab失败的原因问题及探索》在学习Yolo模型时,尝试安装JupyterLab但遇到错误,错误提示缺少Rust和Cargo编译环境,因为pywinpty包需要它... 目录背景问题解决方案总结背景最近在学习Yolo模型,然后其中要下载jupyter(有点LSVmu像一个

解决jupyterLab打开后出现Config option `template_path`not recognized by `ExporterCollapsibleHeadings`问题

《解决jupyterLab打开后出现Configoption`template_path`notrecognizedby`ExporterCollapsibleHeadings`问题》在Ju... 目录jupyterLab打开后出现“templandroidate_path”相关问题这是 tensorflo

如何解决Pycharm编辑内容时有光标的问题

《如何解决Pycharm编辑内容时有光标的问题》文章介绍了如何在PyCharm中配置VimEmulator插件,包括检查插件是否已安装、下载插件以及安装IdeaVim插件的步骤... 目录Pycharm编辑内容时有光标1.如果Vim Emulator前面有对勾2.www.chinasem.cn如果tools工

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

Java多线程父线程向子线程传值问题及解决

《Java多线程父线程向子线程传值问题及解决》文章总结了5种解决父子之间数据传递困扰的解决方案,包括ThreadLocal+TaskDecorator、UserUtils、CustomTaskDeco... 目录1 背景2 ThreadLocal+TaskDecorator3 RequestContextH