关于Hacklog-downloadmanager 若干问题的解答

最近有好多朋友在我的腾讯微博和博客里询问关于Hacklog-downloadmanager 插件的问题。
总结了下,问题主要有这么几个:

1. 无法下载,提示”错误:内容已经被发送!请联系站点管理员解决此问题。“
2. 无法显示”弹出层“ (popup )
3. 文件后缀问题
4. 与某些缓存插件冲突
5. 功能方面的要求,如能否增加独立页面显示下载资源
6. ......

有些回复了,有些没有及时回复。由于时间关系,没能一一回复,抱歉。
在此专门写文章说明下。

1. 无法下载,提示”错误:内容已经被发送!请联系站点管理员解决此问题。“

一般点击下载时显示这个信息是由于你的WP中的某些插件或代码产生了错误报告并且产生了输出。
PHP在发送头信息之前是不允许有任何输出的,如果有,那么可能会导致下载的文件不正确或无法下载。因此,我加了这个检测输出的代码,防止出错。在较早版本的下载插件中是没有这个检测代码的。
如果出现”错误:内容已经被发送!请联系站点管理员解决此问题。“怎么办?
插件在设计之初就提供了调试信息的显示,你可以在wp-config.php 文件中定义WP_DEBUG这个常量:

1
define('WP_DEBUG',TRUE);

这样,插件不会显示这句友好的提示信息,而是显示:
Error: header already sent in file foo.php line xxx .Please check your server configure or contact the administrator.
这样,你便知道是哪个插件或者哪里的代码导致了这个输出的。然后再行处理。

2. 前台无法显示”弹出层“ (popup )

这个一般是使用了”不标准“的主题导致本插件的js代码不能正常加载。
你可以试图修正你的主题的代码或者简单地手工增加script 标签,加载 facebox.js.php 。

3. 文件后缀问题。

在后台上传文件时,文件名那里要么留空,要么填写全名(包括后缀)。有童鞋反映填写文件名后,不显示后缀了,那是因为你在修改文件名时没有填写后缀。

4. 与某些缓存插件冲突

启动防盗链(检测来路)功能后,插件会根据时间不同,动态地生成下载url,因此,缓存会使下载URL失效。

5. 功能方面的要求,如能否增加独立页面显示下载资源

目前我的博客还在修改阶段,暂无时间修改插件。有时间肯定会对一些我发布的插件进行更新的。同时也欢迎爱好PHP的朋友一起进行开发。

更多
One Response Post a comment
  1. 花舞花落泪

    如果启用WP-Super Cache可以在高级设置内打开: 不要为 GET 请求缓存。(地址结尾为?x=y)
    我就是用的这个办法,可以成功下载。

Leave a Reply

Note: You may use basic HTML in your comments. Your email address will not be published.

Subscribe to this comment feed via RSS