6

一旦我在烧瓶中设置了 SERVER_NAME 或主机属性,我就无法通过它们的 url 从外部解析任何方法。以下是我的应用程序初始化配置:

flask_sqlalchemy import SQLAlchemy
from flask.ext.cors import CORS
__authors__ = 'DarkStar1'

from flask import Flask

app = Flask(__name__)
app.config.from_object('config')
app.config['DEBUG'] = True
app.config['SERVER_NAME'] = '0.0.0.0'
#app.run(host='0.0.0.0')
CORS(app)

db = SQLAlchemy(app)

from oms import user_service, person_service

我可以设置 DEBUG 参数/属性,但尝试设置主机或 SERVER_NAME 会导致所有 url,例如 http://< hostname >:5000/test,导致 404。由于服务器是远程开发服务器,因此我可以通过 localhost 在烧瓶的所有 url 上建立隧道并获得 200 秒。端口已启用,我正在使用的烧瓶版本是 python 2.7.6 上的 0.10.1。我搜索并阅读文档无济于事。

4

1 回答 1

12

使用运行烧瓶

app.run(host="0.0.0.0:PORT#")

在命令提示符中查找您的 IPv4 地址ifconfig,并在浏览器中使用您的 ipaddress:port# 访问您的应用程序

您可能必须配置您的路由器(端口转发)以使其公开可用,否则您可以下载/使用https://ngrok.com/ ----> 这会将您位于 NaT 或防火墙后面的本地主机暴露给 Internet。

下载后,您可以通过运行来配置它

ngrok http localhost:5000

这将为您提供一个 RANDOMsubdomain.ngrok.io,您几乎可以在任何地方测试您的应用程序

于 2016-06-06T16:10:04.373 回答