类别:技术杂谈 / 日期:2019-06-04 / 浏览:2152 / 评论:0
DEDECMS启用SSL后,栏目添加外部链接时就变成了https://xxx.com/xxx.com/***这个样子,网上搜了一下,答案如下。
一般引起这个问题的原因有两个:
1、外部链接是https
2、外部链接过长
OK,找到原因以后,开始找解决方法。
一、如果是由于https引起的,那么找到 include/helpers/channelunit.helper.php 该文件,然后打开找到大约429行
将如下代码
if(preg_match("/^http:|^ftp:/i", $typedir)) return $typedir;
增加https,修改为
if(preg_match("/^http:|^https:|^ftp:/i", $typedir)) return $typedir;
二、如果是由于外部链接过程引起的,则是由于长度过长,存入数据库只有一部分,所以链接无法打开,是由于数据库的限制
比如dede_arctype 表中 typedir 字段类似为 char(60) ,长度不够,可以修改为长度200。
ALTER TABLE `dede_arctype` CHANGE `typedir` `typedir` CHAR(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '';
修改完毕后清理缓存即可。
版权声明 : 本文使用「署名-非商业性使用-相同方式共享 4.0 国际」创作共享协议,转载或使用请遵守署名协议。
发表评论 / 取消回复