今天在阿里云的服务器上测试一个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