网站远程附件功能是指通过FTP方式将用户上传的附件直接存储到远程的FTP服务器,目前Discuz论坛、PHPWind论坛、WordPress个人网站等都支持远程附件功能。本文介绍如何基于Discuz论坛存储远程附件。

前提条件

  • 已创建公共读权限的存储空间。具体操作,请参见创建存储空间

    本文以华东1(杭州)名为test-hz-jh-002的Bucket为例。

  • 已安装ossftp。具体操作,请参见安装ossftp
  • 已搭建Discuz论坛。下载地址,请参见Discuz!官方站

    本文以Discuz! X3.1版本为例。

操作步骤

  1. 使用管理员账号登录Discuz站点。
  2. 在管理界面单击全局,然后单击上传设置
  3. 单击远程附件,然后设置远程附件参数。
    参数 示例值 说明
    启用远程附件 是否启用远程附件。
    启用SSL连接 是否启用SSL连接。
    FTP服务器地址 127.0.0.1 运行ossftp的地址。如果是在本机上运行ossftp,填写127.0.0.1。
    FTP服务器端口 2048 ossftp的接收访问请求的端口。默认为2048。
    FTP帐号 Y6IoUOZReouXvWaXuwjvDch9******/examplebucket 连接ossftp的用户名。用户名由拥有Bucket访问权限的AccessKey ID和Bucket名称组成,格式为AccessKey ID/BucketName。如何获取AccessKey ID,请参见获取AccessKey
    说明 您可以自定义登录用户名。操作步骤,请参见创建自定义登录用户
    FTP密码 sRaQg0i3SH9EqYXJSL1hlaR****** 连接ossftp的密码。密码为拥有Bucket访问权限的AccessKey Secret。如何获取AccessKey Secret,请参见获取AccessKey
    说明 您可以自定义登录密码。操作步骤,请参见创建自定义登录用户
    被动模式(PASV)连接 选择
    远程附件目录 . FTP服务在OSS的指定路径创建远程附件的上传目录。半角句号(.)表示在Bucket的根目录下创建上传目录。
    远程访问URL https://test-hz-jh-002.oss-cn-hangzhou.aliyuncs.com Bucket的访问域名。格式为BucketName.Endpoint
    FTP传输超时时间 0 设置为0表示使用服务器默认超时时间。
  4. 单击测试远程附件确认配置是否正常。
  5. 发帖验证配置是否成功。
    1. 发贴时上传图片附件。
    2. 在图片上右键单击,然后选择在新标签页中打开链接
      如果图片的链接格式为http(s)://BucketName.Endpoint/path/filename,则表示附件已正常上传。

      例如本示例中,图片URL为https://test-hz-jh-002.oss-cn-hangzhou.aliyuncs.com/forum/201512/18/171012mzvkku2z3na2w2wa.jpg