2022年12月

SQL执行以下命令

alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_options convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_users convert to character set utf8mb4 collate utf8mb4_general_ci;

修改config.inc.php的配置

/** 定义数据库参数 */
$db = new Typecho_Db('Pdo_Mysql', 'typecho_');
$db->addServer(array (
  'host' => 'localhost',
  'user' => 'user',
  'password' => '1234',
  'charset' => 'utf8mb4',
  'port' => '3306',
  'database' => 'Typecho',
), Typecho_Db::READ | Typecho_Db::WRITE);
Typecho_Db::set($db);

即可

开启方法
修改数据库
typecho_options表中的siteUrl的值
修改typecho\var\Widget\Options\General.php 中的165行左右,

        /** 站点地址 */
    if (!defined('__TYPECHO_SITE_URL__')) {
        $siteUrl = new Form\Element\Text(
            'siteUrl',
            null,
            $this->options->originalSiteUrl,
            _t('站点地址'),
            _t('站点地址主要用于生成内容的永久链接.') . ($this->options->originalSiteUrl == $this->options->rootUrl ?
                '' : '</p><p class="message notice mono">'
                . _t('当前地址 <strong>%s</strong> 与上述设定值不一致', $this->options->rootUrl))
        );
        $siteUrl->input->setAttribute('class', 'w-100 mono');
        $form->addInput($siteUrl->addRule('required', _t('请填写站点地址'))
            ->addRule('url', _t('请填写一个合法的URL地址')));
    }

改为

        /** 站点地址 */
    if (!defined('__TYPECHO_SITE_URL__')) {
        $siteUrl = new Form\Element\Text(
            'siteUrl',
            null,
            $this->options->originalSiteUrl,
            _t('站点地址'),
            _t('站点地址主要用于生成内容的永久链接.') . ($this->options->originalSiteUrl == $this->options->rootUrl ?
                '' : '</p><p class="message notice mono">'
                . _t('当前地址 <strong>%s</strong> 与上述设定值不一致', $this->options->rootUrl))
        );
        $siteUrl->input->setAttribute('class', 'w-100 mono');
        $form->addInput($siteUrl->addRule('required', _t('请填写站点地址'))
            ->addRule('xssCheck', _t('请填写一个合法的URL地址')));
    }

其中的 ->addRule('xssCheck', _t('请填写一个合法的URL地址')));



NULL