fastdfs 配置公网IP java客户端上传

下面的操作是在已经搭建好fastdfs和配置好nginx代理情况下解决的

原来在虚拟机上配的,一切正常,只是虚拟机用的不是云服务器分的公网IP,都是局域网玩耍,上传下载一点问题都没。昨天刚搬到ECS云服务器上,配了公网IP一直上传不了,后来配了私网IP,在虚拟机上上传都没问题的,但是到java程序中就蒙圈了,总不能tracker_server写私网IP吧,昨天网上找了各种答案,都不行,fastdfs的issues翻遍了,还是不行,最后看了一篇文章启发了,下面是解决方法:

cd /etc/fdfs

vi tracker.conf    或    vim tracker.conf

....

port=22122    #设置tracker的端口号,通常采用22122这个默认端口

添加端口

firewall-cmd --permanent --zone=public --add-port=22122/tcp

firewall-cmd --permanent --zone=public --add-port=8080/tcp

service fdfs_trackerd restart

cd /etc/fdfs
vim storage.conf
tracker_server=公网IP:22122
添加端口
firewall-cmd --permanent --zone=public --add-port=23000/tcp
firewall-cmd --permanent --zone=public --add-port=8888/tcp

重启
service fdfs_storaged restart

cd /etc/fdfs
vim client.conf

tracker_server=公网IP:22122

如果还有nginx做代理(fastdfs-nginx-module)
vim /etc/fdfs/mod_fastdfs.conf
tracker_server=公网IP:22122

最后才是重点,如果是ECS,要添加安全组规则
允许 自定义 TCP 23000/23000 地址段访问 0.0.0.0/0
允许 自定义 TCP 22122/22122 地址段访问 0.0.0.0/0
允许 自定义 TCP 8080/8080 地址段访问 0.0.0.0/0
允许 自定义 TCP 8888/8888 地址段访问 0.0.0.0/0

StorageClient1 无论在哪个网段都可以上传

你可能感兴趣的:(fastdfs 配置公网IP java客户端上传)