准备:
git clone AITalkUat工程,在本地跑:
可以直接浏览器访问127.0.0.1:5000()
如果带上参数,可以得到访问的结果127.0.0.1:5000/autoservice?q=怎么结算?n=0
跑通了之后,因为要先在AITalkUat下测试,需要修改端口。
这里插入一段接口的实现,因为在winServer下不能直接用flask部署,我们需要安装tornado。
在工程文件下,增加tornado_server.py,
from tornado.wsgi import WSGIContainerfrom tornado.httpserver import HTTPServerfrom tornado.ioloop import IOLoopfrom web_main import app if __name__ == ‘__main__‘: http_server = HTTPServer(WSGIContainer(app)) http_server.listen(5000)#对应flask的端口 print(‘IOLoop.instance() start‘) IOLoop.instance().start() print(‘IOLoop.instance() end‘)
下面的端口5000改为5001。如果要添加定时任务,就新增tornado_server.bat,
@echo off
#这里可能需要cd到工程目录
start python tornado_server.py
exit
但是因为我们在部署服务上,使用了win server wrapper部署,索一其实不需要这个bat文件
下面说怎么部署
先把工程文件AITalk,复制到D:\project\AITalkUat\app目录下,返回上一层目录,发现我们有写好了一个.bat文件 installservice.bat,还有一个winsw-1.9-bin,和指定winsw运行的目标的xml配置文件,
配置好之后,点击installservice,在服务器管理中,就会出现AITalkUat的服务,把这个服务启动,本地就可以访问了。
如果需要远程进行访问,我们直接kf.pospal.cn:5001并不可以,需要在nginx当中配置,并使用命令nginx -t 检查语法,然后nginx -reload ,reload并不会影响线上的服务,但是在工作时间段,还是不要动。
至于怎么配置,我在listen 80 default server下添加:
location/test {
proxy_pass http://localhost:5001;
}
尝试使用反向代理访问,可是出现404,问了bo哥以后,给出的答案是:
你说的nginx 配置问题是因为这个nginx是按照hostname来配置的。需要在对应的section(按照hostname去找)里面去配置才可以。
主要是看是否有通过hostname来配置
目前还没完全弄懂,备选方案是:
一、在listen 80下添加这个块(非default server)
二、尝试使用$host变量
原文地址:https://www.cnblogs.com/yjybupt/p/9856277.html