功能位置:后台->其他管理->下载模型管理->管理地址前缀
相关函数:e/class/DownSysFun.php DoTypeForDownurl() , QDownLoadFile() , DownSoft()
功能解释:
HEADER:使用header转向,通常设为这个。
META:直接转自,如果是FTP地址推荐选择这个。
READ:使用PHP程序读取,防盗链较强,但较占资源,服务器本地小文件可选择。
帝国CMS弹出下载txt,xls等说明
1.看下面粘贴的帝国原函数DoTypeForDownurl() Header 与 Meta 两种方式都使用的真实地址,在这两种方式下浏览器不能读取的文件格式,例如RAR,ZIP等将直接直接弹出一个真实地址下载,txt等浏览器可读的文件格式则直接在线浏览;
2.默认不选择前缀的情况下,使用是Header
3.READ 这种方式下是利用PHP读取文件,并传递给浏览器,无论 RAR 还是TXT都会弹出下载,而不是浏览器直接读取,弹出的地址也是加密的地址类似:xxx.com/enews=DownSoft&classid=39&id=11&pathid=0&pass=7b9516932a88d44b4e4610e209f6288d&p=22:::J2qCrBGqmrxK
4.READ的加密地址判断是否有下载权限,也就是地址是否正确是由e/class/DownSysFun.php中DownSoft()函数来判断的,经测试如果不更改后台->系统设置->模型设置->下载验证码 的情况下流传出去是可以持续被下载的(没有用户组,积分等判断限制 如果要避免那么e/class/DownSysFun.php 第一行 $DownSys_CheckIp=0; 中的0改为1),帝国CMS也是通过这个方式来防盗链;
5.如果我不想使用下载地址前缀,而让TXT等格式可以弹出下载,那么你可以在e/class/DownSysFun.php中搜索DoTypeForDownurl($downurl,$downurlr['downtype']);上一行加入如下代码:
//不使用下载地址前缀 让txt等浏览器可读类型文件弹出下载 $type2r=array(".xls",".txt",); if(in_array(GetFiletype($downurl),$type2r)) { $downurlr['downtype']=2; }
- 上一篇: 帝国CMS没有相关信息时调用其它信息教程
- 下一篇: 帝国cms二次开发函数对应文件目录分享
- 最新文章
-
- phpcms v9无法更新url
- phpcms注册会员操作失败
- phpcms怎么修改模板
- phpcms添加内容报500错误的原因及解决方法
- linux服务器下phpcms提示hash数据验证失败的解决方法
- phpcms与phpsso通信失败的解决方法
- phpcms上传图片提示服务器安全认证错误的原因及解决方法
- phpcms v9更新栏目缓存失败的原因及解决方法
- phpcms v9后台登录提示验证码错误
- phpcms可以做什么?
- phpcms v9安装失败
- phpcms会员登录失败
- phpcms前台js获取不到cookie用户信息
- phpcms控制器不存在
- phpcms v9 php7可以运行吗
- phpcms js乱码怎么解决
- phpcms提示服务器安全认证错误
- phpcms php.ini在哪里
- phpcms phpsso验证码错误
- phpcms v9参数传递错误
- 热门文章
- 热门tag
- 随机tag