热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

淘宝Tengine2.1.0编译安装和配置

Tengine的官网:http:tengine.taobao.org下载源码包wgethttp:tengine.taobao.orgdow
Tengine的官网:http://tengine.taobao.org/
下载源码包
  1. wget http://tengine.taobao.org/download/tengine-2.1.0.tar.gz`

  2. tar -zxvf tengine-2.1.0.tar.gz

  3. cd tengine-2.1.0
需要注意的是,我希望用Jemalloc来分配和释放tengine内存(比默认的内存管理好多了),所以编译选项设置了--with-jemalloc的源码路径,源码包的获得具体通过以下方式:
Jemalloc方面
官网 http://www.canonware.com/jemalloc/
解压至指定目录
  1. wget https://github.com/jemalloc/jemalloc/releases/download/3.6.0/jemalloc-3.6.0.tar.bz2

  2. tar -jxvf jemalloc-3.6.0.tar.bz2 -C /usr/local/src
编译配置
  1. ./configure \
  2. --prefix=/usr/local/nginx \
  3. --with-jemalloc=/usr/local/src/jemalloc-3.6.0/ \
  4. –-user=www-data \
  5. –-group=www-data
如果想知道更多详细的编译参数的话可以执行./configure --help,会打印出所有的编译选项,可以按需添加或者禁用一些tengine模块,也可以在以后的使用中按需添加编译属性然后重新编译安装即可。
执行configure时,可能会报各种依赖包不存在的提示,比如openssl,如果是开发环境或者对这些依赖程序的版本没有要求的话,可以直接通过apt-get install libxxx的方式安装这些依赖包。
编译安装
  1. make
  2. make test
  3. make install
配置Tengine
make install之后会安装在/usr/local/nginx目录下,其中conf为tengine的配置文件目录,我们修改一下/usr/local/nginx/conf/nginx.conf这个配置文件:
如果有像Apache的vhost需求的话,可以在conf目录下新建一个文件夹vhost,然后所有虚拟主机的配置文件都放到vhost这里面:
  1. cd /usr/local/nginx/conf
  2. mkdir vhost
  3. vim nginx.conf
打开 nginx.conf 配置文件后,最基础的需要做以下几个地方的修改(所提到的地方都要去除前面的 # 号注释,只修改提到的地方,其它地方保留默认即可):
  1. #Tengine的进程以www-data用户启动
  2. user www-data;
  3. #自动以CPU核心数启动相应数量的进程
  4. worker_processes auto;
  5. #开启gzip支持
  6. gzip on
  7. #全局的错误日志地址,方便调试
  8. error_log /home/jason/BigDisk/nginx/error.log;
  9. server {
  10.         #设置默认访问的server(default是指通过ip或者servername未定义的域名进行访问时就走到这个server)
  11.         listen       80 default;
  12.         #默认访问的路径
  13.         root /home/jason/Work/nginx-default;
  14.         location / {
  15.             index index.php  index.html index.htm;
  16.         }
  17.         #默认错误页面
  18.         error_page   500 502 503 504  /50x.html;
  19.         location = /50x.html {
  20.             root   html;
  21.         }
  22.         #抓发到php-fpm
  23.         location ~ \.php$ {
  24.             fastcgi_pass   unix:/var/run/php-fpm.socket;
  25.             fastcgi_index  index.php;
  26.             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
  27.             include        fastcgi_params;
  28.         }
  29.     }
  30.     #引用其他的vhost配置文件
  31.     include vhost/*.conf;
启动脚本
安装好Tengine后需要启动它,github上有人已经做了一份比较完美的nginx启动脚本,我们直接拿下来用:
  1. wget https://raw.github.com/JasonGiedymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginx
赋予可执行的权限:
  1. chmod +x /etc/init.d/nginx
启动Tengine:
  1. /etc/init.d/nginx start
这样基本上就配置好了Tengine
打开浏览器,输入主机ip:


推荐阅读
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Firefox火狐浏览器关闭到http://detectportal.firefox.com的流量问题解决办法
    本文介绍了使用Firefox火狐浏览器时出现关闭到http://detectportal.firefox.com的流量问题,并提供了解决办法。问题的本质是因为火狐默认开启了Captive portal技术,当连接需要认证的WiFi时,火狐会跳出认证界面。通过修改about:config中的network.captive-portal-service.en的值为false,可以解决该问题。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
author-avatar
文人博客
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有