今天在阿里雲的服務器上測試一個Flask程序,命名指定了 ip:0.0.0.0,port:5000,但是外網IP確怎么也訪問不了網頁
上網上好個查,發現阿里雲的服務器端口開放需要去阿里雲的“安全組配置”開放相應端口,才能正常使用;
- 這步操作大家可以直接百度“阿里雲開放端口”就可以百度到具體操作
但是經過開放端口后,發現用5000端口的程序還是不能正常訪問,而用80端口的網站卻是可以正常訪問;上網上瘋狂查找最后發現,雖然阿里雲那里把端口開放了,但是系統里並沒有允許端口通過防火牆,算是一種安全措施吧;接下來,我根據網上查到的命令讓5000-6000端口通過防火牆,就可以正常訪問Flask頁面了
防火牆相關命令
1.systemctl start firewalld.service(開啟防火牆)
2.systemctl stop firewalld.service(開啟防火牆)
3.service firewalld restart(從啟防火牆)
4.firewall-cmd --zone=public --add-port=4400-4600/udp --permanen(指定端口范圍為4400-4600通過防火牆)
Warning: ALREADY_ENABLED: 3306:tcp(說明3306端口通過成功)
5.firewall-cmd --zone=public --remove-port=80/tcp --permanent(關閉指定端口)
6.firewall-cmd --zone=public --list-ports(查看通過的端口)
7.查看防火牆狀態 :firewall-cmd --state
8.修改mysql密碼:SET PASSWORD = PASSWORD('123456');
9.flush privileges;
10.grant all privileges on *.* to 'root'@'%' identified by'test1234';(將所root用戶的所有ip 以密碼為test1234登錄)
11.flush privileges
12,在10前要先執行這個:update user set host = '%' where user = 'root';
13.在8前要先 use mysql
14.如何更改了mysql端口后 從啟服務沒有反應時 執行該命令:/usr/sbin/setenforce 0 (
開啟了selinux,mysql會無法啟動,你會在日志中看到以下錯誤
[ERROR] Can't start server: Bind on TCP/IP port: Permission denied
[ERROR] Do you already have another mysqld server running on port: 3308
)
原文鏈接:https://blog.csdn.net/qq_40084534/article/details/82928401