如何在CentOS系统下轻松完成Tengine编译与部署

在开始编译Tengine之前,首先需要确保您的CentOS系统环境已准备就绪。建议使用CentOS 7或8版本,并确保系统已安装必要的开发工具和库文件。

如何在CentOS系统下轻松完成Tengine编译与部署

  • 系统更新:执行 sudo yum update -y 以确保所有系统软件包为最新版本。
  • 安装基础编译工具:通过命令 sudo yum groupinstall -y "Development Tools" 安装GCC、Make等核心工具。
  • 安装依赖库:Tengine编译依赖如PCRE、OpenSSL、zlib等库,可使用 sudo yum install -y pcre-devel openssl-devel zlib-devel 一键安装。

完成上述步骤后,您的系统环境即满足Tengine的编译要求。

获取Tengine源代码

Tengine的源代码可以通过官方Git仓库或下载稳定版压缩包获取。推荐从GitHub克隆以获取最新特性。

官方GitHub仓库地址:https://github.com/alibaba/tengine

您可以选择以下任一方式获取代码:

  • 使用Git克隆:执行 git clone https://github.com/alibaba/tengine.git
  • 下载稳定版:从官网或GitHub Releases页面下载如 tengine-2.3.3.tar.gz 的压缩包,并使用 tar -zxvf tengine-2.3.3.tar.gz 解压。

获取后,进入源码目录:cd tenginecd tengine-2.3.3

配置编译选项

配置是编译过程中的关键步骤,它决定了Tengine将包含哪些模块和功能。使用 ./configure 命令进行配置,并可根据需求添加参数。

以下是一个常用配置示例,启用了HTTP SSL支持、Gzip压缩等核心功能:

./configure \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-pcre

常用配置参数说明:

参数 功能描述
–prefix 指定安装目录,默认为 /usr/local/nginx
–with-http_ssl_module 启用HTTPS支持
–with-http_v2_module 启用HTTP/2支持
–with-http_stub_status_module 启用状态监控页面

配置完成后,系统会检查依赖关系并生成Makefile。如果出现错误,请根据提示安装缺失的依赖。

编译与安装

配置顺利通过后,即可开始编译和安装。这个过程会将源代码编译成可执行二进制文件,并安装到指定的目录。

  • 编译:执行 make 命令。这个过程可能需要几分钟,具体时间取决于系统性能。
  • 安装:编译成功后,执行 sudo make install 将Tengine安装到系统中。

安装完成后,Tengine的主要文件将位于您通过 --prefix 参数指定的目录(例如 /usr/local/nginx)下。关键目录包括:

  • sbin/nginx:Tengine的主程序。
  • conf/nginx.conf:主配置文件。
  • html/:默认的网站根目录。

配置与启动Tengine服务

安装完成后,需要对Tengine进行基本配置并启动服务。

基本配置:编辑主配置文件 /usr/local/nginx/conf/nginx.conf,确保关键配置如监听端口、服务器名称等正确。例如,确认 listen 80;server_name localhost;

启动服务:直接运行可执行文件启动Tengine。

sudo /usr/local/nginx/sbin/nginx

启动后,您可以通过浏览器访问服务器的IP地址或域名(如 http://your_server_ip)来验证是否出现Tengine的欢迎页面。

常用管理命令

  • 重启服务:sudo /usr/local/nginx/sbin/nginx -s reload
  • 停止服务:sudo /usr/local/nginx/sbin/nginx -s stop
  • 测试配置文件:sudo /usr/local/nginx/sbin/nginx -t

验证部署与基本测试

服务启动后,进行彻底的验证是确保部署成功的关键。

检查进程:使用 ps aux | grep nginx 命令,查看是否有Nginx主进程和工作进程在运行。

测试访问:通过curl命令或浏览器访问服务器。执行 curl http://localhost,如果返回HTML内容,则说明服务运行正常。

验证状态模块:如果您在配置时启用了 --with-http_stub_status_module,可以在配置文件中添加一个location块来访问状态信息:

location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;

配置并重载服务后,访问 http://your_server_ip/nginx_status 即可看到连接数、请求数等实时状态信息。

防火墙与开机自启

为了让Tengine能够被外部访问并确保系统重启后服务自动运行,需要进行额外配置。

配置防火墙:如果系统防火墙(如firewalld)已开启,需要放行HTTP(80)和HTTPS(443)端口。

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

设置开机自启:创建Systemd服务文件是管理Tengine服务的最佳实践。在 /usr/lib/systemd/system/ 目录下创建 nginx.service 文件,并写入以下内容:

[Unit]
Description=The Tengine Server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
KillMode=process
PrivateTmp=true
[Install]
WantedBy=multi-user.target

保存文件后,执行以下命令启用并启动服务:

sudo systemctl daemon-reload
sudo systemctl enable nginx
sudo systemctl start nginx

现在,您的Tengine服务器已经成功部署,并具备了生产环境运行的基本条件。

内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。

本文由星速云发布。发布者:星速云。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/134880.html

(0)
上一篇 2025年11月27日 上午5:51
下一篇 2025年11月27日 上午5:52
联系我们
关注微信
关注微信
分享本页
返回顶部