Nginx服务器,宝塔面板
1、宝塔开启强制https,很容易。
2、修改根目录下 config.inc.php 文件,在文件最后加入以下内容
/** 开启HTTPS **/ define('__TYPECHO_SECURE__',true);
另外设置伪静态的方法
以下两种伪静态设置方法,第一个是官方给的try_files伪静态方法推荐使用
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
----------------------------------------------------------------------
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php$1 last;
}
Apache服务器,宝塔面板
一、我的经验
1、开启 https 前提是申请和安装 SSL 证书(百度答案多)
2、.编辑 Typecho 站点根目录下的文件,config.inc.php ,在文件最后加入以下内容。
/** 开启HTTPS **/ define('__TYPECHO_SECURE__',true);
这两步完成算是基本完成开启 https 了,但是为了全局 https 还是要下面的内容
3.为了全局 https 还要修改评论系统,typecho 的评论提交默认 http,这里也要改成https.
找到typecho的usr > themes > (自己用的主题文件夹)> comments.php
查找到
$this->commentUrl(),
将其替换为:
echo str_replace("http","https",$this->commentUrl());
这样配置过后,网站就基本实现 https 浏览器也有了小绿锁
4.登录 Typecho 后台 -> 设置 -> 基本设置 -> 站点地址改成 https 的域名
其他人的教程
[quote color="warning"]
感谢陌生老哥,我也是借鉴了他的教程 https://www.qmang.online/blog
作者:轻芒_e
链接:https://www.jianshu.com/p/f2302b938ef4
來源:简书
[/quote]
1.编辑 Typecho 站点根目录下的文件。
config.inc.php
加入下面一行配置,否则网站后台还是会调用 HTTP 资源。
登录后台的时候会出现奇怪的错误
/** 开启HTTPS */ define('__TYPECHO_SECURE__',true);
2.由于 Chrome 浏览器对 HTTPS 要求较高,Firefox 已经显示小绿锁,可是 Chrome 还是有警告提示,F12 查看,评论表单的 action 地址还是 HTTP,找到站点主题目录下的 comments.php 文件,并搜索 $this->commentUrl()
$this->commentUrl() /* 并将其替换为:*/ /* 注意:域名最后不要添加“/”这个字符 */ echo str_replace("http","https",$this->commentUrl());
3.更新文章中引用的附件地址为 HTTPS 地址,执行 SQL 数据库操作:
UPDATE `typecho_contents` SET `text` = replace (`text`, 'http://qiudy.cc', 'https://qiudy.cc') /* 链接替换为自己的网站 */ /* 这是我的 */ UPDATE `typecho_contents` SET `text` = replace (`text`, 'http://www.qmang.online/blog', 'https://www.qmang.online/blog')
4.但是这样 HTTP 的方式还是可以访问的,我们可以通过 WEB 服务器(Ningx)将 80 端口(HTTPS)重定向到 443 端口(HTTPS),强制全站 HTTPS。如果你使用的了 CDN 的话 在 CDN 加速模式跳转,设置 http 跳转 https。
5.后来发现 typecho 头像是从 gravatar 获取的,但是 typecho 获取头像的地址为 http。所以修改 var/Typecho/Common.php 中的第 937 行。
http://www.gravatar.com /* 修改为 */ https://www.cravatar.cn
这就可以了
以上就是教程了,用来解决以后的问题,在此备忘
评论