2017-10-19 97 views
-1

当我在浏览器中打开链接0.0.0.0:5000时,我总是在浏览器上看到“此站点无法到达”消息 代码似乎是工作,因为我得到的控制台This site can not be reached [flask,python]

运行在http://0.0.0.0:5000/对此消息(按Ctrl + C退出)

enter image description here

这里是我使用

0123码
from flask import Flask, render_template, request 
from scipy.misc import imsave, imread, imresize 
import numpy as np 
import keras.models 
import re 
import sys 
import os 
from load import * 

sys.path.append(os.path.abspath('./model')) 
app = Flask(__name__) 
global model, graph 
model, graph = init() 

def convertImage(imData): 
    imgstr = re.search(r'base64(.*'.imData).group(1) 
    with open('output.png', 'wb') as output: 
     output.write(imgstr.decode('base64')) 

@app.route('/') 
def index(): 
    return render_template('index.html') 

@app.route('/predict', methods=['GET', 'POST']) 
def predict(): 
    imData = request.get_data() 
    convertImage(imData) 
    x = imread('output.png', mode = 'L') 
    x = np.invert(x) 
    x = imresize(x, 48, 48) 
    x = x.reshape(1,48,48,1) 
    with graph.as_default(): 
     out = model.predict(x) 
     response = np.array_str(np.argmax(out)) 
     return response 



if __name__ == "__main__": 
    port = int(os.environ.get('PORT', 5000)) 
    app.run(host='0.0.0.0', port=port) 
+2

0.0.0.0不是一个有效的IP地址,所以你实际上不能连接到它。当服务器说它是“在0.0.0.0上运行”时,这意味着它正在接受任何网络适配器上的连接,而不是特定的连接。使用127.0.0.1实际连接到机器上运行的服务器。 – kindall

+0

我试过,实际上,它不工作,它使用0.0.0.0:5000之前工作,但现在我不知道什么是问题 – Oussama

+0

@kindall我发现解决方案和您的意见真的帮助,我将主机更改为127.0.0.1,但我忘了烧瓶在模板文件夹中查找index.html文件,我没有放在那里 – Oussama

回答

1

在一般情况下,此消息

运行于http://0.0.0.0:5000/(按Ctrl + C退出)

通知您将要听取接受你的PC的IP地址请求。它可以配置为仅侦听一个IP地址。

正如评论中所述,如果您尝试从您开发的同一台PC访问您的网站,则可以使用虚拟(循环)地址127.0.0.1。如果您想检查您的网站在连接到同一网络的其他设备(例如平板电脑,电话,其他PC)上的外观如何,则需要输入PC的内部网络IP地址,循环。它可以是例如192.168.1.1(你应该检查你的网卡属性)。如果你试图为你的朋友制作真人秀等活动,它可能会发生变化。因此,为了防止您每次检查哪一个IP地址现在对您的PC有效,您可以使用0.0.0.0告诉您的应用程序“侦听来自所有NIC的传入请求,无论IP-地址他们有'。

相关问题