muban大师 发表于 2021-9-1 08:30:19

织梦采集,dede无法采集端口不为80的网址错误解决

织梦采集,一般用不到采集网址有端口的情况,少数有端口的网址就无法采集了。总结了下dede无法采集端口不为80的网址错误解决:
       
        问题描述,当采集的网址后代端口时(为防止有推广嫌疑就把网址换成xxx了。):
       
        测试采集网址:http://www.xxx.com:89/index.php/main/news/index.html?channel_id=104&page=1
       
        这样显然得到的网址是错误的。根本无法访问,也就无法采集了。
       
        经过一番查找,原来是dede 设置HTML的内容和来源网址 的函数问题,漏写端口判断了。
       
        在
       
        include/dedehtml2.class.php
       
        function SetSource 函数里大概79行加上红框里的内容:
       
       
https://www.adminbuy.cn/uploads/allimg/210901/1-210Z10S106302.jpg

       
       
                再测试一下。ok 了,这样网址就可以正常打开,采集到了。
       
               
       
                付上代码:
               
               
                       
                               
                                       
                                               
$port=$urls['port',=='80'?'':':'.$urls['port',;//lyy 为80时候可以省略,否则就加上
$this->HomeUrl = $urls['host',.$port;
页: [1]
查看完整版本: 织梦采集,dede无法采集端口不为80的网址错误解决