环境

框架Hexo

主题Butterfly(其他主题方法一样)

本地(服务器安装)

centos7为例

安装docker

安装docker

yum install docker -y

创建twikoo容器

docker run --name twikoo -e TWIKOO_THROTTLE=1000 -p 8077:8080 -v ${PWD}/data:/app/data -d imaegoo/twikoo

这样twikoo的对外端口就是8077端口,你也可以改成其他没有被占用的端口

测试

http://服务器IP:8088

出现

成功!

即成功

外部访问(https访问)

如果你的博客没有证书(即通过 http://你的博客链接 访问你的博客),那么就直接跳到

Nginx反向代理

获取ssl证书

安装Nginx

修改Nginx配置文件

server {
listen 443 ssl;
server_name twi.cutcutfish.org; #你的子域名
ssl_certificate /home/syncthing/ssl/cert.pem; #你的公钥位置
ssl_certificate_key /home/syncthing/ssl/key.pem; #你的私钥位置

location / {
add_header 'Access-Control-Allow-Origin' 'https://cutcutfish.org'; #改成你博客的地址
proxy_set_header Host $host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:8077;#你的服务器地址+刚才给twikoo配置的端口号
}
}

最终测试

访问 https://你配置的子域名

结果

成功!

即成功

题外话

我自己这样配置会出现 Access-Control-Allow-Origin 有多个的报错,其中一个 Access-Control-Allow-Origin 是你在Nginx上配置的域名,另一个 Access-Control-Allow-Origin 是空。

不知道为什么会多个空的 Access-Control-Allow-Origin 响应头,目前还未解决,求解