如果你想要搭建一个基于Typecho的博客,使用Nginx进行反向代理,并且使用CloudFlare进行防御,可以参考如下配置。

Nginx 配置

参考官方设置:服务器环境设置- Typecho Docs

参考Nginx Host配置:

# 独立php配置,升级php环境时方便修改配置
upstream php-handler {
    # server 127.0.0.1:9000;
    server unix:/var/run/php/php7.3-fpm.sock;
}

server {
    # 为了开启cf的flexible ssl,需要开启80端口,否则会出现无限重定向
    listen 80;
    listen 443 ssl http2;
    server_name www.example.com;
    root /var/www/www.example.com;
    index index.php;

    # 存放https相关配置,以及ssl证书配置
    include snippets/example.com.ssl.conf;

    if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php$1 last;
    }

    location ~ .*\.php(\/.*)*$ {
        include fastcgi.conf;
        fastcgi_pass php-handler;
    }
}

Typecho强制HTTPS设置

此处设置主要是为了解决开启CloudFlare防护之后,Typecho后台无法登陆的问题

Typecho后台登陆时会带一个fallback地址,默认情况下因为CloudFlare是通过http方式回源,地址为http,我们要修改这个地址为https。

方法很简单,修改Typecho根目录下的config.inc.php,添加一行配置

define('__TYPECHO_SECURE__', true);
最后修改:2024 年 07 月 08 日
如果觉得我的文章对你有用,请随意赞赏