千家信息网

如何解决phpcms v9附件下载出现参数错误的问题

发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,如何解决phpcms v9附件下载出现参数错误的问题?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。phpcms v9附件下载出现参数
千家信息网最后更新 2024年12月12日如何解决phpcms v9附件下载出现参数错误的问题

如何解决phpcms v9附件下载出现参数错误的问题?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

phpcms v9附件下载出现参数错误的解决办法:首先找到并打开"down.php"文件;然后删除文件中"patch IP"的部分代码;接着上传覆盖,并更新缓存;最后重新点击下载即可。

Phpcms v9下载模块参数错误的解决办法

Phpcms v9在下载的时候会检查客户端的IP地址,偶尔会导致参数错误,从网上也查询了大量的资料,目前知道的解决办法无非就2个,经测试一个无效,一个不能解决根本问题。已经知道的2个办法一个是加$data['id'] = $id; 测试 无效,一个是更改下载地址显示原始下载地址,不经过Phpcms v9的内核php文件来处理 直接生成下载地址,这倒是不会报错了,可是别人有权限问题的网站那就头疼了。

下面来说说代码笔记研究出来的解决办法,这也要得益于一篇网上吐槽Phpcms的文章给的灵感。

1、打开/phpcms/modules/content/down.php 这个文件。

2、找到大概100行的如下代码:

if(!$downid || empty($fileurl) || !preg_match("/[0-9]{10}/", $starttime) || !preg_match("/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/", $ip) || $ip != ip()) showmessage(L('illegal_parameters'));

3、删除中间patch IP的部分代码

|| !preg_match("/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/", $ip) || $ip != ip()

删除后的代码:

if(!$downid || empty($fileurl) || !preg_match("/[0-9]{10}/", $starttime) ) showmessage(L('illegal_parameters'));

上传覆盖,更新缓存。点击下载,居然成了。留下笔记,方便下次使用。

关于如何解决phpcms v9附件下载出现参数错误的问题问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

0