设置背景图片
模块透明度调整:
完美解决emlog使用SSL,https访问的问题
首页 > 网络 作者:速水 2018年11月6日 热度:466 字号: 评论: 2 百度已收录
时间:2018-11-6 12:47 热度:466°  评论:2 条 

emlog我就不说多了,说起来都是泪,不过还是有部分人在使用此博客,如何解决SSL访问的时候出现的一些问题,主要是分为两步走。

一、下载emlog SSL访问插件

地址:https://tv1314.com/post-433.html ,作者鬼少,搬运工地址:gs_ssl.zip


安装插件后,启用之。


启用全站SSL访问插件

解决了这一部分,其实已经基本可以使用SSL访问了,但关系多众多模板的问题,这样还是不够的。

二、修改代码

修改代码前请先备份,这代码来自于其他网站,经过多个博客模板测试可行,版本仅限于5.3.1

1、 /include/lib/option.php
请将以下内容粘贴到 get function 的 default 判断分支之前 (在Emlog 5.3.1下是第43行)

case 'blogurl':
    return realUrl();

    break;




2、 /include/lib/function.base.php


请将以下内容粘贴到文件的末尾

/**
 * 获取当前访问的base url
 */
function realUrl() {
    static $real_url = NULL;
    if ($real_url !== NULL) {
        return $real_url;
    }
    $emlog_path = EMLOG_ROOT . DIRECTORY_SEPARATOR;
    $script_path = pathinfo($_SERVER['SCRIPT_NAME'], PATHINFO_DIRNAME);
    $script_path = str_replace('\\', '/', $script_path);
    $path_element = explode('/', $script_path);
    $this_match = '';
    $best_match = '';
    $current_deep = 0;
    $max_deep = count($path_element);
    while($current_deep < $max_deep) {
        $this_match = $this_match . $path_element[$current_deep] . DIRECTORY_SEPARATOR;
        if (substr($emlog_path, strlen($this_match) * (-1)) === $this_match) {
            $best_match = $this_match;
        }
        $current_deep++;
    }
    $best_match = str_replace(DIRECTORY_SEPARATOR, '/', $best_match);
    $real_url  = $_SERVER['HTTPS'] === 'on' ? 'https://' : 'https://';
    $real_url .= $_SERVER["SERVER_NAME"];
    $real_url .= in_array($_SERVER['SERVER_PORT'], array(80, 443)) ? '' : ':' . $_SERVER['SERVER_PORT'];
    $real_url .= $best_match;
    return $real_url;

}


3、/init.php
请用以下代码覆盖同名的define (在Emlog 5.3.1下是第39行)


define('DYNAMIC_BLOGURL', Option::get("blogurl"));




如果网站使用http访问就强制转向https在你的模板下的header.php中增加以下代码

    if(!isset($_SERVER['HTTPS'])){
    Header("HTTP/1.1 301 Moved Permanently");
    header('Location: https://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);}

 

OK,用https访问吧!
正文到此结束

热门推荐

二维码加载中...
版权声明:若无特殊注明,本文皆为《 速水 》原创,转载请保留文章出处。
本文链接:完美解决emlog使用SSL,https访问的问题 https://www.hayami.cn/post-36.html

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

嘻嘻 大笑 可怜 吃惊 害羞 调皮 鄙视 示爱 大哭 开心 偷笑 嘘 奸笑 委屈 抱抱 愤怒 思考 日了狗

已有2条吐槽

她与空白 沙发 2018-11-14 19:44

你的小锁子并不是全绿的,因为网站部分资源还引用了HTTP,解决方法就是替换掉这些内容,这个插件并不完善,还是推荐手动来修改,新浪图床可以用sql语句执行批量修改
1e3c6bce7419ef45b6028ceb742b3f7f994b20.png
 未知操作系统   未知浏览器

速水 2018-11-14 20:25

@她与空白:我试一下,终于不是单机了哈哈
 未知操作系统   未知浏览器

Copyright © 2016-2019    站长: 速水     桂ICP备17000584号