Tenginx下载网址:


Tenginx 官网地址:http://tengine.taobao.org/

Tenginx的官方网址中可以阅读Nginx的文档,可以选择中文进行阅读。下载Tengine-2.3.2.tar.gz 进行部署。

一、VMware下Centos网络ip配置。

1、针对VMware上第一次安装centos虚拟机,需要配置虚拟机网络。首先确认虚拟机在VMware网络配置如图所示。首先确认虚拟机网络适配器是NAT模式,然后点击“编辑”--“虚拟网络编辑器”

 

2、选择VMnet8,点击DHCP设置,查看VMware分配虚拟机地址范围如下图所示,点击NAT设置,查看该虚拟机的网关和子网掩码信息,如图所示。(注意:这里面VMnet1和VMnet8都要报错连接 和启动状态,如果不是这种状态,最好点击面板上的“还原默认设置”按钮)

上图可知该虚拟机的IP地址范围是192.168.245.128~192.168.245.254。网关是192.168.245.2,子网掩码是255.255.255.0

3、在虚拟机上输入命令“ vi /etc/sysconfig/network-scripts/ifcfg-ens33 ” 设置虚拟机IP。有些虚拟机命名并不是ens33 ,可以查询本虚拟机网络驱动名称

其中BOOTPROTO=dhcp改为BOOTPROTO=static 标示ip由动态分配改为静态ip。ONBOOT= on 改为 ONBOOT=yes才能联网。ip设置在范围192.168.245.128~192.168.245.254内。目前设置为192.168.245.129(第二台虚拟机)。网关子网掩码按VMware上网络编辑器上配置。配置完成后“:wq"保存退出。

然后命令”  systemctl restart nerwork.service  “重启网络服务(注意要重启网络服务,不然IP配置不生效)。

4、yum search net-tools 命令搜索适合安装的网络软件,然后用 yum install net-tools.x86-64 -y  命令安装。

5、安装完成后,可以用ifconfig等命令查看ip信息。

7、Tenginx安装之前需要安装Gcc等依赖组件” yum install gcc openssl-devel pcre-devel zlib-devel -y“

8、通过xftp 将下载的tengine的包放到” /usr/local/“目录下。

9、在/usr/local/下新建tengine文件夹 ” mkdir /usr/local/tengine “,然后进入”/usr/local/”目录下将压缩包解压“ tar -zxvf tendine-2.3.2.tar.gz ”,进入tengine文件夹中将解压后的文件拷贝进来 " mv /usr/local/tengine-2.3.2 . "

10、编译并安装tengine,  ./configure  --prefix=/安装路径   , make && make install。目前安装路径为“/usr/local/tengine”

执行完成后目录状态是这样,

此时如下图可以通过在sbin的nginx启动tengine服务,但是停止tengine需要kill进程才行,使用起来不很方便,下面介绍配置shell脚本用service 命令启动、停止、重启tengine服务等操作。

11、用vi 编辑文件,提供的Nginx启动脚本文件内容到`/etc/init.d/nginx`这个文件中,配置tengine的启动脚本,建议用xshell远程连接编辑。

#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=nginx
NGINX_BIN=/usr/local/tengine/sbin/$NAME
CONFIGFILE=/usr/local/tengine/conf/$NAME.conf
PIDFILE=/usr/local/tengine/logs/$NAME.pid
# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0

nginx="/usr/local/tengine/sbin/nginx"
prog=$(basename $nginx)

NGINX_CONF_FILE="/usr/local/tengine/conf/nginx.conf"

[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx

lockfile=/var/lock/subsys/nginx

make_dirs() {
# make required directories
user=`nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
options=`$nginx -V 2>&1 | grep 'configure arguments:'`
for opt in $options; do
if [ `echo $opt | grep '.*-temp-path'` ]; then
value=`echo $opt | cut -d "=" -f 2`
if [ ! -d "$value" ]; then
# echo "creating" $value
mkdir -p $value && chown -R $user $value
fi
fi
done
}

start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}

stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}

restart() {
configtest || return $?
stop
sleep 1
start
}

reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}

force_reload() {
restart
}

configtest() {
$nginx -t -c $NGINX_CONF_FILE
}

rh_status() {
status $prog
}

rh_status_q() {
rh_status >/dev/null 2>&1
}

case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac

注意配置文件中 红字部分要与你实际安装的tengine目录相匹配,如 :NGINX_BIN="/usr/local/tengine/sbin/nginx" 必须要和实际部署的tengine路径相同,也即是 ./configure  --prefix=/安装路径 。

12、此时 nginx的权限还不够,无法用其中的命令运行tengine服务。用  chmod 777 nginx  赋予权限,然后用systemctl daemon-reload 重新加载系统启动脚本 ,最后可以使用nginx脚本启动服务了

13、启动服务

service Nginx start 启动服务

service Nginx stop 停止

service Nginx status 状态

service Nginx reload 动态重载配置文件

最后如果tengine服务启动了。浏览器访问不不了/usr/local/tengine/conf/niginx.conf 文件配置了监听端口,在防火墙中配置该端口后重启防火墙就可以访问tengine服务了。

刷新浏览器后,发现可以正常访问了

自此充VMware中虚拟机IP配置和tengine部署已全部结束,这个只是本人学习过程中的总结,当然会有且他未遇到和发现的问题,仅以此博客记录自己学习过程供后面读者学习借鉴,不足之处还望指正。

Centos虚拟机上安装部署Tenginx,以及部署过程中遇到的问题的更多相关文章

  1. 暑假第一周总结(在centos虚拟机上安装jdk以及hadoop并对hadoop进行配置)

    本周主要就是对虚拟机进行安装并在上边安装jdk以及hadoop并对其进行配置. 在看林子雨老师的教程时,下载了老师所给的全套的下载软件,在安装时发现老师所给的VirtualBox安装后无法正常启动,尝 ...

  2. 虚拟机上 安装 CentoOS 7.5 1804 过程记录

    1.准备安装镜像 在开始安装CentOS之前,必须下载安装ISO映像.镜像可从CentOS网站https://www.centos.org/download/.提供以下基本类型的镜像: DVD ISO ...

  3. Linux学习(一)-安装vm虚拟机以及如何在虚拟机上安装Centos系统

    (一)基本说明 学习Linux需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个Centos系统来学习. 1)安装软件vm12; 2)通过vm12创建一个虚拟机空间; 3)在vm12创建好的 ...

  4. 虚拟机上安装Linux系统之ubuntu

    以前自己在虚拟机上安装过几回Linux系统,有centos.ubuntu,不过都没来得及写一个安装教程,今天正好需要重新安装一下,就分享一个安装ubuntu的详细教程 安装前准备: VMWare虚拟机 ...

  5. 在VM虚拟机上安装Microsoft Dynamics CRM 2016 步骤图解及安装注意事项

    安装Dynamics CRM 2016环境配置要求: 系统版本:Windows Server 2012 R2(必须) SQL 版本: SQLServer2014SP1-FullSlipstream-x ...

  6. 虚拟机上安装Linux操作系统

    很久之前就知道虚拟机这个东西,也都在虚拟机上安装过Windows的操作系统和Linux的操作系统,但是一直都没有去做笔记. 最近还是比较有时间,就移除了前两天刚刚安装的Linux系统,重新安装一次,做 ...

  7. Mac系统下使用VirtualBox虚拟机安装win7--第三步 在虚拟机上安装 Windows 7

    第三步 在虚拟机上安装 Windows 7 等待虚拟机进入 Windows 7 的安装界面以后,在语言,货币,键盘输入法这一面,建议保持默认设置,直接点击“下一步”按钮,如图所示

  8. 在VMware Workstation11虚拟机上安装黑苹果

    图文详解如何在VMware Workstation11虚拟机上安装黑苹果Mac OS X 10.10系统-网络教程与技术 -亦是美网络 http://www.yishimei.cn/network/5 ...

  9. 在虚拟机上安装红帽Linux.5.5.for.x86.服务器版系统(按针对安装oracle 10g作的配置)

    在虚拟机上安装红帽Linux.5.5.for.x86.服务器版系统(按针对安装oracle 10g作的配置)   软件版本: 虚拟机版本:vmwareworkstation 7.11 build-28 ...

随机推荐

  1. Hadoop集群模式安装出现的若干问题

    一.域名解析问题 域名解析暂时失败问题 vim /etc/sysconfig/network 查看主机名 vim etc/hosts 配置IP地址与主机名 192.168.60.132 centos ...

  2. Pytest测试框架(三):pytest fixture 用法

    xUnit style 结构的 fixture用于初始化测试函数, pytest fixture是对传统的 xUnit 架构的setup/teardown功能的改进.pytest fixture为测试 ...

  3. DBF 文件 ORACLE 数据库恢复

    DBF 文件 ORACLE 数据库恢复 清·魏源<庸易通义>:"至道问学之有知无行,分温故为存心,知新为致知,而敦厚为存心,崇礼为致知,此皆百密一疏." 起因 在我们的 ...

  4. 10分钟搞定让你困惑的 Jenkins 环境变量

    前言 Jenkins, DevOps 技术栈的核心之一,CI/CD 离不开编写 Pipeline 脚本,上手 Jenkins ,简单查一下文档,你就应该不会被 agent,stages,step 这类 ...

  5. [ABP教程]第二章 图书列表页面

    Web应用程序开发教程 - 第二章: 图书列表页面 关于本教程 在本系列教程中, 你将构建一个名为 Acme.BookStore 的用于管理书籍及其作者列表的基于ABP的应用程序. 它是使用以下技术开 ...

  6. Liunx运维(十一)-系统管理命令

    文档目录: 一.lsof:查看进程打开的文件 二.uptime:显示系统的运行时间及负载 三.free:查看系统内存信息 四.iftop:动态显示网络接口流量信息 五.vmstat:虚拟内存统计 六. ...

  7. 【LeetCode】365.水壶问题

    题目描述 解题思路 思路一:裴蜀定理-数学法 由题意,每次操作只会让桶里的水总量增加x或y,或者减少x或y,即会给水的总量带来x或y的变化量,转为数字描述即为:找到一对整数a,b使得下式成立: ax+ ...

  8. Flutter 布局类组件:线性布局(Row和Column)

    前言 所谓线性布局,即指沿水平或垂直方向排布子组件.Flutter中通过Row和Column来实现线性布局,并且它们都继承自弹性布局(Flex). 接口描述 Row({ Key key, // 表示子 ...

  9. Hbase RIT故障修复

    业务场景: RocketMQ+Storm+Hbase 组件版本: RocketMQ:3.4.6 Storm:1.2.1 Hbase:1.2.1 1. 问题描述 4月15号早上发现业务系统前一天数据量明 ...

  10. GMT UTC CST ISO 夏令时 时间戳,都是些什么鬼?

    目录 ✍前言 本文提纲 版本约定 ✍正文 GMT:格林威治时间 凭什么格林威治作为标准时间? 地球自转 中国有哪几个时区? 美国有哪几个时区? GMT和Http协议的渊源 UTC:世界标准时间 UTC ...