最近在折騰Python Web,在測試的時候發現,本機可以正常訪問,但外網無法通過公網IP訪問頁面。經過各種搜索,有大致三種解決方案。
一、修改/添加安全組端口
這是第一種方案,也是能解決大部分問題的一個方案。
由于我的服務器是阿里云的,所以在阿里云的ECS云服務器控制臺中,管理安全組,添加5000和8000端口以便測試。
經過測試,外網依舊無法訪問。失敗……
二、配置/關閉防火墻
由于我的服務器是Windows Server 2016 操作系統,經過提醒,考慮是否是防火墻未允許端口通過。
如圖,將防火墻全部關閉后,外網依舊無法訪問,失敗……
三、修改端口號測試
1.修改端口
因為默認80端口可以訪問IIS默認頁面,遂考慮是否因為端口號問題導致無法訪問,在編譯器中修改app.run中的port參數。
修改host='0.0.0.0',port=8000后保存運行,發現運行結果依舊是localhost:5000端口
端口沒有修改成功……
2.各種鼓搗…
為了修改端口,經過長~~達~~半小時的搗鼓,終于在右上角項目名稱的編輯配置(Edit-Configuration)中發現了問題,修改了Additional options(附加選項)的內容為
--host=0.0.0.0 --port=5000
然后刪除app.run()括號內的參數重新保存運行,嘿,你猜怎么著
外網也可以成功訪問頁面了?。?!
這個有點坑的問題大概是只存在于Windows系統下的PyCharm中的,其他系統修改app.run的參數即可成功。
以上這篇關于Flask項目無法使用公網IP訪問的解決方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。