Helloooooo Bloooooooooog!!!

经过一番研究,终于把这个 WordPress 部署上了~

本来想写一个部署的记录的,但是作为一个懒人,我最终采用的是 Docker 部署的方案,而且 MariaDB 数据库也是直接在 Docker 中跑的。虽然显得很不专业,但确实是一个方便快捷的方案。
当然了,这个过程也踩了几个坑,简单记录一下。

数据库连接

默认的 WordPress Docker 是基于 Debian 的,没有 MySQL,只能安装 MariaDB 数据库的,这到不是什么大问题。
问题是安装并按官方手册创建数据库、注册用户之后,这个 WordPress 死活连接不上。

研究了半天,合着要写 127.0.0.1,不能写 localhost。可能是因为 localhost 被解析成 ipv6 了?不懂 hhh

HTTPS+Nginx 的困扰

由于是在 Docker 中跑的 WordPress,为了加上 HTTPS 免得浏览器提示不安全,我在服务器最前端套了一个 Nginx(其实本来所有对外的 HTTP 服务也本来就有一层 Nginx,也算不上新增的)。然后这个 WordPress 就和 Nginx 打起来了……情况如下

  • Nginx 代理的时候将 443 转发到 127.0.0.1:4000,合理。
  • WordPress 为了内部能正常重定向至子页面,需要设置 URL 为 https://blog.pythame.com/,合理。
  • WordPress 会自动检测 URL 为 HTTPS,如果访问来自 HTTP 协议则会重定向,合理。

然后这几个叠加起来的效果就是:首页能正常访问,但只要点任何一个按钮,都会因为多次重定向被浏览器拦截。看 Network 发现是 https://…/ 对自己的循环重定向。就很魔幻。

尝试了给 Nginx 加代理的头,但是问题仍然存在。
于是最后的解决方案非常暴力,强行修改了 WordPress 对 HTTPS 检测的相关 php 代码,不论来自什么地方的访问都直接被认为是 HTTPS 就行了。反正 Docker 开的端口也是 localhost,只有通过 Nginx 才能访问到,也无所谓。

评论

  1. 4 小时前
    2025-12-30 4:58:37

    您好,这是一条评论。若需要审核、编辑或删除评论,请访问仪表盘的评论界面。评论者头像来自 Gravatar

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!