通过nginx搭建url接口(服务器和虚拟机)

任务目的

提供一个可以调用的url接口,网址中带着需要输入信息,服务器的虚拟机中运行着程序,会在网页的界面中返回输出结果。(可以达到核心算法保密的目的)

准备工具

  1. 服务器
  2. 服务器中运行的虚拟机
  3. 虚拟机中存在python3的环境(2可能也行,没试过)
  4. 服务器中有nginx程序

步骤

1、虚拟机中运行python程序

import tornado.ioloop
import tornado.web
import joblib
import numpy as np
from allPre import * #核心算法

class MainHandler(tornado.web.RequestHandler):
    global tf_model #定义全局变量,可加速算法的运行速度
    tf_model = final_main()

    def get(self):
        """get请求"""
        a = self.get_argument('a')
        print(a)
        text = [a]
        text_enbedding =tf_model.transform(text)
        out = fit_and_predicted(text_enbedding)
        if out[0] == '0':
            outcome = '负'
        if out[0] == '1':
            outcome = '正'
        self.write("分类结果:" + outcome)

application = tornado.web.Application([(r"/add", MainHandler), ])

if __name__ == "__main__":
    application.listen(8868)
    tornado.ioloop.IOLoop.instance().start()

这时,通过访问本地ip加上端口号8868,即可得到想要的界面
例如:
在这里插入图片描述

2、在服务器中搭建nginx连接虚拟机中的端口

	upstream sum{
		server ***.**.**.***:****; #虚拟机运行python程序中访问网页的ip地址和端口号
		}
		
		
	# sumsung
	server {
		listen       *; #服务器开放的端口
		server_name  ***.**.**.**; #服务器地址
		location / {
			proxy_pass_header Server;
			proxy_set_header Host $http_host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Scheme $scheme;
			proxy_connect_timeout      90;
			proxy_send_timeout         90;
			proxy_read_timeout         90;
			proxy_pass  http://sum;#代理,转发到集群;
	}
	}

基本上需要修改的就是*的地方,这里注意,

  • 服务器和虚拟机的网络连接需要设置为桥接网络
  • 服务器端口一定要是开放的

3、访问结果

在这里插入图片描述

通过更改上述图片的服务器的地址和开放的端口号即可实时访问该网址。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Nginx 是一款高性能的 Web 服务器和反向代理服务器,能够处理大量的并发连接并提供快速的响应。伪静态 URL 是指通过配置来将动态生成的 URL 转化为静态的 URL,使得 URL 更加直观和友好。 在 Nginx 中实现伪静态 URL 需要借助于 rewrite 模块的功能来实现。通过 rewrite 规则,可以将原本包含动态参数的 URL 重写为不包含参数的静态 URL。 例如,假设原本的动态 URL 是:www.example.com/index.php?id=1,经过伪静态转换后的静态 URL 可能是:www.example.com/article/1。 实现伪静态 URL 的步骤如下: 1. 首先,需要在 Nginx 的配置文件中加载 rewrite 模块。可以在 http 块中的顶层或者 server 块中进行配置。 2. 在 server 或者 location 块中添加 rewrite 规则。例如,通过正则表达式匹配原始 URL,并根据规则转换为静态 URL。 3. 针对不同的动态 URL,可以分别设置不同的 rewrite 规则。根据需要,可以将多个动态参数转为更加友好的静态 URL。 实现伪静态 URL 可以带来一些好处,例如: 1. 对搜索引擎更加友好:静态 URL 更容易被搜索引擎爬虫抓取和索引,提高网站的可见度和排名。 2. URL 更加直观:静态 URL 更加具有描述性,更容易让用户理解和记忆。 3. 提高安全性:通过伪静态将动态参数隐藏起来,可以减少攻击者对网站的破坏和攻击。 需要注意的是,在实现伪静态 URL 的过程中,需要确保 URL 的唯一性以及正确性。同时,还需要保证原本的动态功能不受影响,并且在页面访问时能够正确解析相应的参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值