discuz 配置 上传远程附件

discuz 配置 上传远程附件

一、配置上传远程附件的好处

  1. 附件将拥有更高的可靠性,例如单独做备份;
  2. 您的服务器无需为论坛附件准备额外的存储空间,降低服务器使用成本;
  3. 论坛用户查看图片附件时将直连 FTP 服务器,不占用您服务器的下行带宽/流量,用户访问速度更快。

官方的教程是将ftp连接到腾讯COS存储的,请看原文连接
https://cloud.tencent.com/document/product/436/40605

我是用免费的FileZilla Server搭建的服务器

二、需要准备的工具,两台服务器(虚拟机安装即可)

1、192.168.1.3 FTP服务器,我们使用免费的FileZilla Server,安装方法请自行百度
discuz 配置 上传远程附件
2、192.168.1.124 discuzX3.2 服务器,安装方法请自行百度

三、配置ftp服务器,新建两个用户,一个用作上传discuz_test密码0987654321,另外一个用作下载get_file密码654321,稍后解析为什么要分开两个用户discuz 配置 上传远程附件discuz 配置 上传远程附件

添加完目录之后要点击 Set as Home dir ,可以看到目录前面多了个 H 标志,另外为了安全两个用户的权限是不一样的。

四、配置discuz 的远程附件设置

discuz 配置 上传远程附件discuz 配置 上传远程附件
这里注意几点:
1、ftp服务器端口 ,默认安装是21 的,我这里改成了 21212 完全是为了安全,提高黑客扫描端口的成本
2、远程访问 URL: 这是最重要的配置!!!
填写 ftp://get_file:[email protected]:21212

配置好后点击 “”测试远程附件“” ,提示失败了,但查看 C:\ftpdata\discuz_test 即ftp根目录里面有 test 目录,里面有一个discuztest.txt文件 ,直接保存配置就可以了。

五、测试论坛上传的附件discuz 配置 上传远程附件

点击下载“成功下载”,查看 C:\ftpdata\discuz_test 下面多了 forum\202002\03 目录,里面就有刚刚上传的图片。
这里解析下为什么要分开两个用户,一个上传一个下载,我们将下载图片的网址链接用web开发工具跟踪调试,192.168.1.124/forum.php?mod=attachment&aid=NXw3OWM5MmMyM3wxNTgwNzI4ODk5fDF8Mg%3D%3D&nothumb=yes 实际上被重定向到了 ftp://get_file:[email protected]:21212/forum/202002/03/164955s9nbl2nelxnbdz11.jpg
这个时候会发现ftp用户名和密码都泄露了,所以我们单独给下载的用户只有读取的权限,这样会让风险降低很多。

discuz 配置 上传远程附件