- A+
所属分类:Emlog
闲来无事逛博客,发现这篇文章不错,收藏下。
https 支持已集成到 Emlog 6.0,以下内容仅适用于 Emlog 5.x 用户。
在进行修改之前,请先确定服务器已正确配置 https。并且备份所有文件,防止遇到兼容性问题。
1. /include/lib/option.php
请将以下内容粘贴到 get function 的 default 判断分支之前 (在 Emlog 5.3.1 下是第 43 行)
- /**
- * 添加文章、页面
- *
- * @param array $logData
- * @return int
- */
- function addlog($logData) {
- $kItem = array();
- $dItem = array();
- foreach ($logData as $key => $data) {
- $kItem[] = $key;
- $dItem[] = $data;
- }
- $field = implode(',', $kItem);
- $values = "'" . implode("','", $dItem) . "'";
- $this->db->query("INSERT INTO " . DB_PREFIX . "blog ($field) VALUES ($values)");
- $logid = $this->db->insert_id();
- return $logid;
- }
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"));
如果你使用的是 Emlog 5.3.1,并且没有对源代码做过修改,也可以下载附件里的文件直接覆盖同名文件.
本文来源于 vB·流水账
历史上的今天:
- 2018: 152 年一遇!今晚超级月亮+蓝月亮+红月亮(2)
- 2018: 分享六种方法下载 YouTube 视频(无需安装任何软件的教程)(4)
- 2017: 茶花(0)