既然都实现了图床了何不把静态资源一并CDN化了呢!

Head Pic: 「コスモスの空」/「mocha@3日目南-ナ31a」

前言

之前我们用了Github+jsDelivr实现了图床,那么有没有可能把js,css等静态资源也用这个办法实现呢?

当然是可行的!

使用方法

1.建立Github仓库

如何建立仓库可以查看

也可以使用与图床一样的仓库,只需要把静态资源文件上载就行。

2.定义CDN目录

首先我们找到根目录下的config.inc.php文件并添加如下代码

/* 定义cdn目录(相对路径) */
define('__TYPECHO_CDN_DIR__', 'https://cdn.jsdelivr.net/gh/你的Github用户名/你的仓库名/');

保存即可

3.修改Typecho默认插件与模板路径

找到跟目录下的\var\widget\Options.php

大概在160行左右的位置

找到并修改为

/**
     * 获取模板路径
     *
     * @access protected
     * @return string
     */
    protected function ___themeUrl()
    {
        return defined('__TYPECHO_THEME_URL__') ? __TYPECHO_THEME_URL__ :
            Typecho_Common::url(__TYPECHO_THEME_DIR__ . '/' . $this->theme,__TYPECHO_CDN_DIR__);
        
    }

    /**
     * 获取插件路径
     *
     * @access protected
     * @return string
     */
    protected function ___pluginUrl()
    {
        return defined('__TYPECHO_PLUGIN_URL__') ? __TYPECHO_PLUGIN_URL__ :
            Typecho_Common::url(__TYPECHO_PLUGIN_DIR__,__TYPECHO_CDN_DIR__);
    }

其实只是把一个变量改成了我们刚刚定义的变量而已

4.大功告成

保存刷新后即可看到基本都是被CDN充满的样子了

Last modification:October 29, 2020
如果觉得我的文章对你有用,请随意赞赏