使用SSH在远程服务器上启动Flask

时间:2017-08-01 01:31:29

标签: python ssh flask ubuntu-16.04

我正在尝试在本地运行我的hello world应用程序。我希望能够发送朋友的IP地址,并将他们的请求显示在我的本地计算机上。

基于this answer似乎

The IP specified in app.run(host='0.0.0.0') must be owned by your server.

If you want to launch Flask on remote server use SSH.

由于我使用ubuntu进行了vps设置,并且我使用的是ubuntu,有什么方法可以让他在那里发出请求并将其转发到我的本地部署吗?

2 个答案:

答案 0 :(得分:1)

  

因为我有一个使用ubuntu的vps设置,而且我在ubuntu上...

为什么您的主机操作系统很重要? VPS是一个完全独立的机器。

  

有什么方法可以让他在那里提出请求并将其转发到我的本地部署?

如果您的本地 Flask实例不在VPS上,那么您想要使用ngrok,而您甚至不会需要@Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { } @Override public void onNothingSelected(AdapterView<?> parent) { } @Override public void onClick(View view) { } 的任何参数,因为你可以&#34;暴露&#34;端口5000直接通过该工具。

答案 1 :(得分:0)

Flask默认在端口5000上运行。如果你想让你的朋友访问你的烧瓶,

  1. 在您的ubuntu VPS中<?php header('Access-Control-Allow-Origin: *'); if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') { if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']) && $_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD'] == 'POST') { header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Headers: X-Requested-With, content-type, access-control-allow-origin, access-control-allow-methods, access-control-allow-headers'); } exit; } $req = file_get_contents("php://input"); $req = json_decode($req); 打开TCP / IP访问权限。示例:8088
  2. 在python脚本中使用{port_number}(app.run(host =&#39; 0.0.0.0&#39;,port = 8088))
  3. 检查VPS的IP地址(不是本地IP)。例如187.50.128.151
  4. 在您的朋友计算机中,使用浏览器访问 http:// {your_vps_ip}:{port_number} 。示例:http://187.50.128.151:8088