信创之-麒麟v10服务器安装tengine(已完成)

之前的文章太长了,所以单独写

背景:java8+springboot+nginx+redis+sqlserver+windows server2000

目前java8已经更换,windows也已经更换,sqlserver也已经更换成dm8

其实java的静态文件目录,可以很好处理前端网站了,但是秉承着前后端完全分离,还是弄了个nginx,同时nginx也使用了反向代理,保护服务端

好了话不多说

原本的目标:完全离线状态安装tengine,但是研究了很久,还是放弃了,很简单,依赖的包太难找了,百度了很久很久,最后有个人介绍了个方法,直接从麒麟的iso解压找到了,但还是太多了。

最后用了在线安装,那是真简单,我放弃了离线方式,后面如果有项目硬逼着要离线,到时候再研究吧。

回想下之前windows

1.直接下载nginx的编译包,不是exe,直接是源码编译包

2.修改nginx的conf文件,修改监听端口,修改网站地址,如果有反向代理,那也一样修改配置

3.双击nginx.exe,查看任务管理器有两个进程,就算结束了

现在到麒麟下,其实还是很困惑的

1.麒麟安装和linux安装有啥区别

2.windows下直接放编译包,那麒麟的怎么办

3.网上都是nginx的,那和tengine有什么关系,教程是否一致

带着上面的疑问,开始了,长久的百度之旅,说下结果

1.麒麟和linux一样的

2.麒麟下也是直接放编译包

3.tengine是腾讯基于nginx的提升,所以教程一致

好了,放心了,那不就变成linux下如何安装nginx了么!!!!!!

但是实际并没那么简单,尤其是对于一个从windows下转过来的,思想转变不过来。

我先说下在线安装,然后我再说下离线安装思路

  1. yum install gcc gcc-c++ make openssl-devel pcre-devel zlib-devel 然后框框一桶安装,y y确认

2.创建一个目录,这个目录用于nginx的安装目录,我是在/usr/local/tengine,你随意(其实我有点疑惑的,下载的源码编译包,怎么就变成安装了,windows下也没安装一说)

3.把linux的tengine.tar包放到麒麟服务器上,通过finalshell工具或者其他工具

4.通过cd目录进入到你的tengine.tar目录下,然后解压, tar -zxvf tengine-3.1.0.tar.gz

5.解压成功之后,cd进入解压后的目录

6.执行 ./configure --prefix=/usr/local/tengine,,意思就是把第2步的安装目录配置上去

7.执行 make 回车(输入make 回车即可),甭管输入什么,框框一顿操作就行

8.输入make install 回车

9.到这就表示安装好了(不明白为什么叫安装,反正跟着来),接下来就是启动nginx

10.这个和windows就不大一样了,在windows下直接是找到源码包里面nginx.exe双击,但是在linux下要cd进入上面设置的安装目录下,比如 /usr/local/tengine,那么就要执行 /usr/local/tengine/sbin/nginx 回车即可

11.通过端口查看,nginx是否成功启动, ps -ef | grep nginx;看到两个进程就对了,windows下也是两个

12.因为我们nginx是部署在服务器上的,那么我们外部想要测试下是否启动成功,那么就需要服务器开启80端口防火墙(80是默认的,可以改)

13.打开端口 firewall-cmd --permanent --add-port=80/tcp;重启防火墙 firewall-cmd --reload

14.外部测试,能打开nginx默认页面表示成功

好了。上面是在线安装,下面说下离线安装。

其实在线和离线的区别就在于,安装tengine或者nginx的时候,是需要安装额外依赖的,在线就很舒服了,一句指令,依赖都是自动的,而如果是离线,那么就需要自己找很多rpm包,进行安装,

如果恰好你有麒麟的iso镜像,那么解压后,取到packerage文件夹找就可以了。

我开始就准备离线,安装这个提示缺那个,安装那个又提示缺别的

太复杂了,不过这是个思路,你安装提示缺少什么,就去麒麟的解压包里找对应的rpm

安装告一段落,目前外部测试tengine是安装成功了,那接下来要进行

接下来:

1.修改配置conf文件,修改监听端口,修改反向代理等

2.把tengine服务做到开机自启中(windows下是通过nssm做的,可以自行百度,也很简单)


修改第一项,既然使用了linux,那么要用vi指令修改,但是....实在是一言难尽,改着改着火大了。

直接打开conf文件,把windows下的内容复制了过去,保存结束,测试成功。

所以步骤就没什么好说的了,总结一下修改ngnix

目前使用两点

1.作为静态资源服务器,我之前说过,前端打包后就是一个静态文件,是无法通过类似于http://1.1.1.1:8090 这样访问的,所以需要一个web服务器,之前net的iis就是这样,当然我说的很简单

2.作为代理服务器,就是比如你java开发了个jar,打包后别人通过你服务器ip和你java服务端口访问你的接口,这种方式是直接访问,把你的服务器等于是暴露出来,于是,nginx提供反向代理,你访问的是nginx的ip和nginx监听的端口,但是在nginx内部帮你转到了真实的jar服务,保护后端

3.nginx还有其他强大功能,比如https,防盗链,负载均衡,好像还有别的,没怎么了解


设置开机自启,前置工作:如果你服务器已经启动了nginx,那么先关掉先关掉先关掉先关掉

1.cd /lib/systemd/system 进入这个文件夹,开机自启的都放在这里

2.vim tengine.service 创建一个文件的意思,这个文件名随便你启

3.不会用指令写内容,所以我直接:wq 退出,然后打开直接复制粘贴(粘贴AI的),要注意一下"ExecStart"和"ExecReload",后面的地址就是你的安装目录

Unit

Description=Tengine web server

After=network.target

Service

Type=forking

ExecStart=/usr/local/tengine/sbin/nginx -g "daemon off;"

ExecReload=/usr/local/tengine/sbin/nginx -s reload

KillMode=process

Restart=on-failure

PrivateTmp=true

Install

WantedBy=multi-user.target

4.修改文件权限 chmod 745 nginx.service

5.systemctl enable tengine.service

6.systemctl start tengine.service(这一步好像是多余的。。。。。。)

7.reboot重启服务器,然后等启动之后,直接网站访问试试,成功表示开机自启了


至此,麒麟安装tengine,配置,开机自启结束。

相关推荐
努力努力再努力wz1 天前
【C++进阶系列】:位图和布隆过滤器(附模拟实现的源码)
java·linux·运维·开发语言·数据结构·c++
wayuncn1 天前
哈尔滨服务器托管优选-青蛙云
运维·服务器·服务器租用·服务器托管·物理机租用·idc服务商
博闻善行1 天前
git基础操作
运维·git
LeoZY_1 天前
开源超级终端PuTTY改进之:增加点对点网络协议IocHub,实现跨网段远程登录
运维·网络·stm32·嵌入式硬件·网络协议·运维开发
小闫BI设源码1 天前
Ansible自动化运维平台部署
运维·自动化·ansible·批量管理·devops工具·持续集成ci/cd·ssh协议
_BigMao1 天前
Linux服务器从零开始-部署.net控制台程序(AlmaLinux)
linux·服务器·.net
JeffreyGu.1 天前
centos网卡设置问题
linux·运维·centos
纳切威1 天前
CentOS 9部署Zabbix7.0 Agent2端
linux·运维·centos·zabbix
会飞的鱼_1231 天前
企业级日志分析利器:ELK Stack从入门到实战部署
运维·elk
qyhua1 天前
Linux CentOS 修改主机名称详解
linux·运维·centos