解决emlog使用SSL,https访问的问题

解决emlog使用SSL,https访问的问题 

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

一、下载emlog SSL访问插件

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

安装插件后,启用之。

解决了这一部分,其实已经基本可以使用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://' : 'http://';
$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']);
} 强制使用https访问 

OK,用https访问吧!

支付下载注意:
1.支付成功后不要关闭或刷新当前支付页面,等待系统确认后自动刷新。
2.开通会员推荐使用 Chrome 或 FireFox 浏览器,切勿使用 IE 浏览器,以免支付刷新失败。
3.如支付成功后刷新无法显示下载地址、链接失效等问题请联系客服处理。
免责声明:
1.本站资源售价仅为赞助网站,收费仅用于网站维护运营更新,感谢您的支持。
2.本站所发布资源仅限用于学习和研究测试使用,不得用于商业或非法用途。
3.如果购买下载测试后满意,请前往购买支持正版,得到更好的正版服务。
4.本站仅保证资源的正常下载和测试使用,售后不包含相关技术咨询服务,请知悉谅解。
5.本站所发布资源为非实物商品,不接受退款,请考虑好再购买。

Zadmei资源分享 » 解决emlog使用SSL,https访问的问题