phpcms v9附件下載出現參數錯誤的解決方法:先找到並開啟「down.php」檔案;然後刪除檔案中「patch IP」的部分程式碼;接著上傳覆蓋,並更新快取;最後重新點擊下載即可。
Phpcms v9下載模組參數錯誤的解決方案
推薦:《phpcms教學 》
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附件下載出現參數錯誤怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!