序言
今天折腾我的博客,因为一个评论插件设置错误,导致了我后台上不去了。
于是我把整站打包下载到本地环境进行调试,结果本地环境网站后台都打不开。
分析问题根源
我服务器站点配置里强制开启了 HTTPS+SSL,而本地环境是 HTTP,加上数据库里还保存着原域名的 HTTPS 配置,导致访问时不断跳转。
知道原因就好解决了:
第一步:修改数据库配置,清除强制 HTTPS
打开本地数据库的typecho_options表,执行以下 SQL 语句,把站点地址改回本地 HTTP:
UPDATE `typecho_options` SET `value` = 'http://192.168.66.28' WHERE `name` = 'siteUrl';
UPDATE `typecho_options` SET `value` = '0' WHERE `name` = 'rewrite'; -- 先关闭伪静态,避免跳转问题注意:
把http://192.168.66.28 换成你本地实际的访问地址(比如我这里改的是本地服务器的地址http://192.168.66.28)。
第二行可以不执行,只需要在伪静态配置中和服务器作一样的配置即可。
第二步:修改 Typecho 配置文件,禁用 HTTPS 跳转
打开 Typecho 根目录下的config.inc.php文件,添加 / 修改这两行:
// 强制关闭HTTPS
define('__TYPECHO_SECURE__', false);
// 强制设置站点地址(覆盖数据库配置)
define('__TYPECHO_SITE_URL__', 'http://localhost/你的本地目录');保存文件,这一步能直接覆盖数据库里的旧配置,避免跳转。
第三步:检查本地服务器配置,关闭 HTTPS 强制跳转
如果你的本地服务器(比如 Apache/Nginx)开启了 HTTPS 重定向,也会导致跳转:
Nginx 环境:
找到站点配置文件,删除所有带return 301 https://$host$request_uri;的重定向规则,或者修改为 HTTP。
第四步:清除浏览器缓存和 Cookie
浏览器会缓存旧的 HTTPS 跳转规则,即使你修改了配置,也会继续跳转:
打开浏览器,进入设置 → 清除浏览数据
勾选「缓存文件和图片」「Cookie 和其他网站数据」,清除后关闭浏览器
重新打开浏览器,访问本地站点地址


群主你也是有意思 给你反馈评论不上 你直接换了验证码款式 哈哈哈 极验不挺好使吗 我就用的极验
不知道为何,极验我找不到帐号了。手机登陆提示已注册,找回密码要输入邮箱,我死活接收不到验证码,死循环了,作罢。