Centos7下安装和配置 Tengine

engine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

Tengine,简单的讲就是对nginx进行了二次开发并提供了更丰富的功能,官网地址:http://tengine.taobao.org/,目前最新的稳定版本是2.2.0,我这里也用的这个版本,下载地址:http://tengine.taobao.org/download/tengine-2.2.0.tar.gz

1、下载

wget http://tengine.taobao.org/download/tengine-2.2.0.tar.gz
2、解压
tar -zxvf tengine-2.2.0.tar.gz
cd tengine-2.2.0/

3、在安装之前首先检查一下是否已安装nginx的一些模块依赖的lib库,诸如g++、gcc、pcre-devel、openssl-devel和zlib-devel。所以下面这些命令最好挨个跑一遍,已安装的会提示不用安装,未安装或需要更新的则会执行安装及更新:

yum -y install gcc-c++  pcre pcre-devel  zlib zlib-devel openssl openssl-devel --setopt=protected_multilib=false
4、安装完依赖后下面就可以放心开始安装nginx了,输入安装命令并指定安装路径:
./configure --prefix=/usr/local/nginx
看到如下提示信息就说明没有问题:
这里写图片描述
这里写图片描述

5、最后通过make以及make install进行编译安装:

make && make install

6、安装完成后启动一下,输入启动命令

/usr/local/nginx/sbin/nginx
之后访问80端口看看是否安装成功

7、设置为系统服务

vim /lib/systemd/system/nginx.service 创建文件
[Unit]  
Description=The nginx HTTP and reverse proxy server  
After=syslog.target network.target remote-fs.target nss-lookup.target  

[Service]  
Type=forking  
PIDFile=/usr/local/nginx/logs/nginx.pid  
ExecStartPre=/usr/local/nginx/sbin/nginx -t  
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf  
ExecReload=/bin/kill -s HUP $MAINPID  
ExecStop=/bin/kill -s QUIT $MAINPID  
PrivateTmp=true  

[Install]  
WantedBy=multi-user.target  
chmod 745 nginx.service【 chmod 745 /lib/systemd/system/nginx.service】
systemctl enable nginx.service 
 
完后就可以使用以下命令管理tengine服务器了:
service nginx start
service nginx stop
service nginx restart
systemctl enable nginx.service【开机自启动】

 

8、让Tengine可以处理PHP:nginx.conf

#隐藏服务器版本号
server_tokens off;
server {
        listen       80;
        server_name  localhost;
        root   /var/www;
        location / {
            index  index.html index.htm index.php;

             if (!-e $request_filename) {
             rewrite  ^(.*)$  /index.php?s=$1  last;
             break;
            }
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}
 

9、开启80端口(其他端口类似,只针对firewall防火墙)

service firewalld start(启动防火墙)
firewall-cmd --zone=public --add-port=80/tcp --permanent(开放端口)

 

命令含义:

–zone #作用域 –add-port=80/tcp #添加端口,格式为:端口/通讯协议 –permanent #永久生效,没有此参数重启后失效

重启防火墙

firewall-cmd --reload【service firewalld restart(重新启动防火墙)】




posted @ 2024-01-11 15:48  人生苦短,知足常乐!  阅读(133)  评论(0编辑  收藏  举报