2016-09-07 79 views
1

如果在我的筆記本電腦上運行網絡服務器,例如大學的公共網絡,網絡上的其他人是否可以通過瀏覽器連接到我的應用程序?當連接到公共WiFi網絡時,其他人能夠連接到筆記本電腦上運行的網絡服務器嗎?

該項目與瓶製成,而我只是在運行這個代碼的文件:

from my_project import app 

if __name__ == '__main__': 
    app.run(host='0.0.0.0', port=7000, debug=True, threaded=True) 

我也跑這對於瓶的應用程序存儲數據的MySQL數據庫服務器。在我的工作場所電腦上,我相信網絡上的其他電腦可以連接到它。與Flask應用程序相同。

但是,當我在公共網絡上的筆記本電腦上開發時,其他人是否可以連接到Flask Web服務器或MySQL數據庫服務器?

+0

只要他們能夠ping通你就可以訪問你的web應用程序。 – Tempux

+0

這聽起來像你需要爲你的Web服務器建立一個AAA系統。 –

回答

2

我不確定MySQL服務器,但是與您在同一WiFi網絡上的任何人都可以連接到Flask服務器。通過託管在0.0.0.0(主機上的所有可用IP地址),您允許任何擁有您的IP地址的人連接。但是,其他網絡中的用戶將無法連接,因爲您的公共WiFi網絡很可能沒有端口轉發您的筆記本電腦。

編輯:如果你想在公共WiFi網絡上開發一個web服務器,改爲在127.0.0.1上主機。這樣,只有主機才能連接。

+0

如果我在'127.0.0.1'而不是'0.0.0.0'上設置它,那麼公共網絡上任何有我IP地址的人都可以連接到Flask服務器嗎? – John

+1

@John我在Bottle服務器上做了一個快速測試來弄清楚。如果你使用'127.0.0.1'託管,你的網絡上的其他人將無法連接,無論他們是否擁有你的IP地址。答案已經過編輯,以說明這一點。 –

相關問題