小跑追幸福2016 发表于 2017-3-25 00:33:48

网站设置https之后,UC通信失败,请问怎么处理

网站设置https,DZ程序里需要改的两个文件都已经修改了,可是还是显示通信失败。

69jiejie 发表于 2017-3-25 00:33:48

论坛后台-站长-数据库 UC地址这个修改下看看

UC后台-应用-编辑 这里也修改下试试!

lotto散人 发表于 2017-3-25 00:33:48

.htaccess 设置成这样会有这种问题:

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

如果拿掉又无法自动转向https,鱼与熊掌不可兼得。

清湾捞仔 发表于 2017-3-25 00:33:48

http://att.discuz.net/data/attachment/forum/201702/15/074939o90fdwa0m6ar6d0x.png

王活泼 发表于 2017-3-25 00:33:48

找到解决方法了,既可以强制https,又不会通信失败。

https://www.weizhushou.net/2764.html

方法我也是谷歌搜的,亲自试过了,没问题。

/public_html/uc_server/model/misc.php

加中间红色的那一段,从 if(substr($url,0,5)=='https' 到 return curl_exec($ch); }:

如果有什么问题或副作用请发电邮给我:leonlaiminwang@hotmail.com

或加我微信:leonlaiminwang

我也不想我自己的网站有什么问题,谢谢。


    function dfopen($url, $limit = 0, $post = '', $cookie = '', $bysocket = FALSE    , $ip = '', $timeout = 15, $block = TRUE, $encodetype= 'URLENCODE') {
      $return = '';
      $matches = parse_url($url);
      $scheme = $matches['scheme'];
      $host = $matches['host'];
      $path = $matches['path'] ? $matches['path'].($matches['query'] ? '?'.$matches['query'] : '') : '/';
      $port = !empty($matches['port']) ? $matches['port'] : 80;

                if(substr($url,0,5)=='https'){
                            $ch = curl_init($url);
                            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
                            if($post){
                                    curl_setopt($ch, CURLOPT_POST, 1);
                                    curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
                            }
                            if($cookie){
                                    curl_setopt($ch, CURLOPT_COOKIE, $cookie);
                            }
                            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
                            return curl_exec($ch);
                  }

      if($post) {
            $out = &quotOST $path HTTP/1.0
";
            $header = "Accept: */*
";
            $header .= "Accept-Language: zh-cn
";
            $boundary = $encodetype == 'URLENCODE' ? '' : ';'.substr($post, 0, trim(strpos($post, "\n")));
            $header .= $encodetype == 'URLENCODE' ? "Content-Type: application/x-www-form-urlencoded
" : "Content-Type: multipart/form-data$boundary
";
            $header .= "User-Agent: $_SERVER
";
            $header .= "Host: $hostport
";
            $header .= 'Content-Length: '.strlen($post)."
";
            $header .= "Connection: Close
";
            $header .= "Cache-Control: no-cache
";
            $header .= "Cookie: $cookie

";
            $out .= $header.$post;

我不是卿酒酒 发表于 2017-3-25 00:33:48

DISCUZ x3.2 开启301强制跳转https后 门户栏目出现302死循环
页: [1]
查看完整版本: 网站设置https之后,UC通信失败,请问怎么处理