<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="/wp-content/plugins/rss-beauty/pink.xsl"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>vue Archives - obaby 𝐢‍𝐧⃝ void</title>
	<atom:link href="https://zhongxiaojie.com/tag/vue/feed/" rel="self" type="application/rss+xml" />
	<link>https://zhongxiaojie.com/tag/vue/</link>
	<description>程序媛 / 独立开发者 / 智商不稳定的女神经</description>
	<lastBuildDate>Mon, 27 Apr 2026 02:03:03 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://zhongxiaojie.com/wp-content/uploads/2026/01/uugai.com-166111691272754-100x100.png</url>
	<title>vue Archives - obaby 𝐢‍𝐧⃝ void</title>
	<link>https://zhongxiaojie.com/tag/vue/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>浅谈前后端分离系统的SEO优化</title>
		<link>https://zhongxiaojie.com/2026/04/1156/</link>
					<comments>https://zhongxiaojie.com/2026/04/1156/#comments</comments>
		
		<dc:creator><![CDATA[obaby]]></dc:creator>
		<pubDate>Mon, 27 Apr 2026 02:03:03 +0000</pubDate>
				<category><![CDATA[程序媛]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[nuxt]]></category>
		<category><![CDATA[nuxt.js]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[vue]]></category>
		<category><![CDATA[前后端分离]]></category>
		<guid isPermaLink="false">https://zhongxiaojie.cn/?p=1156</guid>

					<description><![CDATA[开发一个系统，不管是从头开始，还是在已有系统上二次开发，从来都不是一蹴而就的事情。在上线以前总觉得已经做够了足 [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/30A1744-scaled.jpg" data-lbwps-width="1707" data-lbwps-height="2560" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/30A1744-scaled.jpg" data-lightbox="gal[1156]"><img fetchpriority="high" decoding="async" class="alignnone size-full wp-image-1161" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/30A1744-scaled.jpg" alt="" width="1707" height="2560" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-scaled.jpg?v=1777255370 1707w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-200x300.jpg?v=1777255370 200w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-683x1024.jpg?v=1777255370 683w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-100x150.jpg?v=1777255370 100w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-768x1152.jpg?v=1777255370 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-1024x1536.jpg?v=1777255370 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-1365x2048.jpg?v=1777255370 1365w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-665x998.jpg?v=1777255370 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1744-173x260.jpg?v=1777255370 173w" sizes="(max-width: 1707px) 100vw, 1707px" /></a></p>
<p>开发一个系统，不管是从头开始，还是在已有系统上二次开发，从来都不是一蹴而就的事情。在上线以前总觉得已经做够了足够的测试，但是在上线之后还是会出现各种各样的问题。</p>
<p><span id="more-1156"></span></p>
<p>有的问题，如果是新系统完全可以避免，正是由于是在已有系统上开发的为了兼容wp才会引入一系列的问题，这类问题主要是wp原生的一些机制兼容问题导致的包括但不限于：</p>
<p>1.wp固定连接的兼容</p>
<p>2.shortcode的解析处理</p>
<p>3.wp资源文件与新系统资源文件的路径兼容处理</p>
<p>4.wp启用插件的功能实现，邮件通知、micro-post、邮件发送、邮件模板等等</p>
<p>5.其他的未知问题</p>
<p>也有一部分是新系统天生的缺陷：seo不友好，搜索引擎爬虫无法获取网页内容，毕竟robot不会执行js，这个是前后端分离系统的必然缺陷。</p>
<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;!doctype html&gt;
&lt;html lang="zh-CN"&gt;
  &lt;head&gt;
    &lt;meta charset="UTF-8" /&gt;
    &lt;link
      rel="icon"
      href="https://zhongxiaojie.cn/wp-content/uploads/2026/01/uugai.com-166111691272754-100x100.png"
      sizes="32x32"
    /&gt;
    &lt;link
      rel="icon"
      href="https://zhongxiaojie.cn/wp-content/uploads/2026/01/uugai.com-166111691272754-200x200.png"
      sizes="192x192"
    /&gt;
    &lt;link
      rel="apple-touch-icon"
      href="https://zhongxiaojie.cn/wp-content/uploads/2026/01/uugai.com-166111691272754-200x200.png"
    /&gt;
    &lt;meta
      name="msapplication-TileImage"
      content="https://zhongxiaojie.cn/wp-content/uploads/2026/01/uugai.com-166111691272754-300x300.png"
    /&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;
    &lt;meta
      name="description"
      content="爱好广泛的女王 独立APP开发者 AI修理师 爬虫砖家 逆向工程师 人工智能 全栈工程师"
    /&gt;
    &lt;meta
      name="keywords"
      content="人工智能,机器学习,ml,逆向分析,信息安全,物联网,ida,uniapp,python,爬虫,妹子图,秀人集,java,vue"
    /&gt;
    &lt;meta
      name="theme-color"
      content="#ff4f87"
    /&gt;
    &lt;link
      rel="manifest"
      href="/manifest.json"
    /&gt;
    &lt;link
      rel="stylesheet"
      href="/vendor/enlighterjs.min.css"
    /&gt;
    &lt;link
      rel="stylesheet"
      href="/vendor/simple-microblogging.css"
    /&gt;
    &lt;title&gt;obaby 𝐢&#x200d;𝐧⃝ void - 程序媛 / 独立开发者 / 智商不稳定的女神经&lt;/title&gt;
    &lt;script type="module" crossorigin src="/assets/index-DFHpxK1A.js"&gt;&lt;/script&gt;
    &lt;link rel="stylesheet" crossorigin href="/assets/index-CKljzL1r.css"&gt;
  &lt;/head&gt;
  &lt;body&gt;
    &lt;div id="app"&gt;&lt;/div&gt;
    &lt;script
      defer
      src="/vendor/enlighterjs.min.js"
    &gt;&lt;/script&gt;
    &lt;script defer src="/vendor/obaby.js"&gt;&lt;/script&gt;

  &lt;/body&gt;
&lt;/html&gt;
</pre>
<p>&nbsp;</p>
<p>当然有人会比较在意这个东西，不是说这个东西不对。可能是自己没那么在乎吧，之前就曾经收到过数次关于seo友链不显示的问题，上次是搞页面静态化。</p>
<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260427-092806@2x-scaled.jpg" data-lbwps-width="2560" data-lbwps-height="621" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260427-092806@2x-scaled.jpg" data-lightbox="gal[1156]"><img decoding="async" class="alignnone size-full wp-image-1158" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260427-092806@2x-scaled.jpg" alt="" width="2560" height="621" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-scaled.jpg?v=1777253334 2560w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-300x73.jpg?v=1777253334 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-1024x248.jpg?v=1777253334 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-150x36.jpg?v=1777253334 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-768x186.jpg?v=1777253334 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-1536x373.jpg?v=1777253334 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-2048x497.jpg?v=1777253334 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-665x161.jpg?v=1777253334 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-092806@2x-1072x260.jpg?v=1777253334 1072w" sizes="(max-width: 2560px) 100vw, 2560px" /></a></p>
<p>其实，在我的博客添加的友链，也并不是全部都不显示，毕竟还有其他的域名，<a href="https://zhongxiaojie.com" target="_blank" rel="noopener">zhongxiaojie.com</a> 以及 <a href="http://oba.by" target="_blank" rel="noopener">oba.by</a>等还是会显示完整的友链信息，这两个域名并没有切换到新的前后端分离的系统。所以，我博客的友链，相当于数个站都给友链做了多次链接，我不知道这个东西对于seo有没有作用，至于是有好处，还是有坏处，我并不清除，我自己并不是那么关注所谓的seo。如果觉得这样反而会出问题的，欢迎反馈，我会及时删除相关链接哈。</p>
<p>当然，这个东西有办法解决吗？答案自然是有，至于解决方法，那就是继续回归服务器渲染。</p>
<p>这解决方案真的是简单粗暴啊，合着这折腾来折腾去，又要弄回服务器渲染，这辛辛苦苦四十年，一夜回到解放前？</p>
<p>采用这种简单粗暴的方法来解决seo问题，显示不是本仙女的作风。既然是针对搜索引擎的，那就直接对搜索引擎做单独的处理就完了。检测ua，如果是收缩引起的ua返回服务器渲染之后的内容，如果是正常浏览（搜索引擎爬虫意外的ua）返回前后端分离的内容。</p>
<p>要实现服务器渲染，基于vue的可以参考nuxt.js(百度百科):</p>
<blockquote>
<div class="para_efdCF summary_TvRxu MARK_MODULE" data-tag="paragraph" data-uuid="i5gzm8kpld" data-idx=""><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">Nuxt.js是由NuxtLabs团队于2016年10月推出的基于</span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true"><a class="innerLink_RUkn8" href="https://baike.baidu.com/item/Vue.js/19884851?fromModule=lemma_inlink" target="_blank" rel="noopener" data-from-module="summary">Vue.js</a></span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">的开源Web框架，采用MIT License授权。该框架灵感来源于</span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true"><a class="innerLink_RUkn8" href="https://baike.baidu.com/item/Next.js/64867074?fromModule=lemma_inlink" target="_blank" rel="noopener" data-from-module="summary">Next.js</a></span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">，Nuxt采用了约定俗成的规范以及一种明确的目录结构，以实现对重复性任务的自动化处理，并使开发人员能够专注于推进新功能的开发。</span><span class="supWrap_Ufaoj J-supWrap J-lemma-content-lemma-sup-item" data-flag="summary"><sup data-tag="ref"> [2]<em id="sup-2"></em></sup></span><span class="supWrap_Ufaoj J-supWrap J-lemma-content-lemma-sup-item" data-flag="summary"><sup data-tag="ref"> [5]<em id="sup-5"></em></sup></span><span class="supWrap_Ufaoj J-supWrap J-lemma-content-lemma-sup-item" data-flag="summary"><sup data-tag="ref"> [8]<em id="sup-8"></em></sup></span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">。</span></div>
<div class="para_efdCF summary_TvRxu MARK_MODULE" data-tag="paragraph" data-uuid="i5gzm8ltlr" data-idx=""><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">Nuxt默认内置</span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true"><a class="innerLink_RUkn8" href="https://baike.baidu.com/item/%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%AB%AF%E6%B8%B2%E6%9F%93/61701022?fromModule=lemma_inlink" target="_blank" rel="noopener" data-from-module="summary">服务器端渲染</a></span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">（SSR）功能、支持静态站点生成（SSG）和</span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true"><a class="innerLink_RUkn8" href="https://baike.baidu.com/item/%E5%8D%95%E9%A1%B5%E9%9D%A2%E5%BA%94%E7%94%A8/18753779?fromModule=lemma_inlink" target="_blank" rel="noopener" data-from-module="summary">单页面应用</a></span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">（SPA）三种部署模式，可通过&#8221;nuxt generate&#8221;命令生成预渲染HTML文件实现静态化部署</span><span class="supWrap_Ufaoj J-supWrap J-lemma-content-lemma-sup-item" data-flag="summary"><sup data-tag="ref"> [5]<em id="sup-5"></em></sup></span><span class="supWrap_Ufaoj J-supWrap J-lemma-content-lemma-sup-item" data-flag="summary"><sup data-tag="ref"> [7]<em id="sup-7"></em></sup></span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">。采用模块化架构提供50多个扩展模块，支持TypeScript类型安全、推送和现代化开发工具链</span><span class="supWrap_Ufaoj J-supWrap J-lemma-content-lemma-sup-item" data-flag="summary"><sup data-tag="ref"> [4]<em id="sup-4"></em></sup></span><span class="supWrap_Ufaoj J-supWrap J-lemma-content-lemma-sup-item" data-flag="summary"><sup data-tag="ref"> [6]<em id="sup-6"></em></sup></span><span class="text_H46ki J-lemma-content-lemma-text" data-text="true">。</span></div>
</blockquote>
<p>接下来也就简单了，创建nuxt项目，实现与frontend同样的页面路由和相关的页面文件布局。接口可以直接复用当前的接口，</p>
<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260427-094819@2x-scaled.jpg" data-lbwps-width="2560" data-lbwps-height="1613" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260427-094819@2x-scaled.jpg" data-lightbox="gal[1156]"><img decoding="async" class="alignnone size-full wp-image-1159" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260427-094819@2x-scaled.jpg" alt="" width="2560" height="1613" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-scaled.jpg?v=1777254518 2560w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-300x189.jpg?v=1777254518 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-1024x645.jpg?v=1777254518 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-150x95.jpg?v=1777254518 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-768x484.jpg?v=1777254518 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-1536x968.jpg?v=1777254518 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-2048x1290.jpg?v=1777254518 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-665x419.jpg?v=1777254518 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260427-094819@2x-413x260.jpg?v=1777254518 413w" sizes="(max-width: 2560px) 100vw, 2560px" /></a></p>
<p>配置openresty的处理逻辑：</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic"># -----------------------------------------------------------------------------
# Dynamic Rendering（SEO）：爬虫 UA → Nuxt SSR；普通用户 → 现有 SPA
# - Nuxt SSR 服务建议监听 127.0.0.1:3000（可按需调整）
# - ?__ssr=1 可强制走 SSR（方便自测/排障）
# - 仅对“页面路由”生效，不影响 /assets、/vendor、/bp-api、WP 后台等
# -----------------------------------------------------------------------------
set $bp_force_ssr 0;
if ($arg___ssr = "1") {
    set $bp_force_ssr 1;
}

set $bp_is_bot 0;
if ($http_user_agent ~* "(googlebot|bingbot|baiduspider|yandexbot|duckduckbot|slurp|sogou|360spider|bytespider|petalbot|facebookexternalhit|twitterbot|rogerbot|ahrefsbot|semrushbot|mj12bot)") {
    set $bp_is_bot 1;
}

location @nuxt_ssr {
    proxy_pass http://127.0.0.1:3000;
    proxy_http_version 1.1;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Uri $request_uri;
}

# 418 跳转技巧：在页面路由里 return 418 → error_page 转到 @nuxt_ssr
error_page 418 = @nuxt_ssr;</pre>
<p>启动之后就可以查看服务器渲染的页面了：</p>
<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15.png" data-lbwps-width="2151" data-lbwps-height="2081" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15.png" data-lightbox="gal[1156]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1155" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15.png" alt="" width="2151" height="2081" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15.png?v=1777209116 2151w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-300x290.png?v=1777209116 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-1024x991.png?v=1777209116 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-150x145.png?v=1777209116 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-768x743.png?v=1777209116 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-1536x1486.png?v=1777209116 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-2048x1981.png?v=1777209116 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-665x643.png?v=1777209116 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-15-269x260.png?v=1777209116 269w" sizes="auto, (max-width: 2151px) 100vw, 2151px" /></a> <a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41.png" data-lbwps-width="2166" data-lbwps-height="2088" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41.png" data-lightbox="gal[1156]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1154" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41.png" alt="" width="2166" height="2088" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41.png?v=1777209101 2166w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-300x289.png?v=1777209101 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-1024x987.png?v=1777209101 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-150x145.png?v=1777209101 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-768x740.png?v=1777209101 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-1536x1481.png?v=1777209101 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-2048x1974.png?v=1777209101 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-665x641.png?v=1777209101 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/BaiduShurufa_2026-4-26_21-10-41-270x260.png?v=1777209101 270w" sizes="auto, (max-width: 2166px) 100vw, 2166px" /></a></p>
<p>当然，这个实现方法的缺点就是得完全复刻frontend的相关路由和页面，优点就是不用关注原来的系统实现逻辑，哪怕爬虫seo系统出问题也不会影响现有的系统运行。</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://zhongxiaojie.com/2026/04/1156/feed/</wfw:commentRss>
			<slash:comments>62</slash:comments>
		
		
			</item>
		<item>
		<title>产品，还是玩具？ &#8212; Baby Press(缝合怪)</title>
		<link>https://zhongxiaojie.com/2026/04/1141/</link>
					<comments>https://zhongxiaojie.com/2026/04/1141/#comments</comments>
		
		<dc:creator><![CDATA[obaby]]></dc:creator>
		<pubDate>Fri, 24 Apr 2026 06:58:12 +0000</pubDate>
				<category><![CDATA[程序媛]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[vue]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://zhongxiaojie.cn/?p=1141</guid>

					<description><![CDATA[这算是给这个东西写的第二篇正式的文章，本来我的想法很简单，做一个简单的前后端分离的系统来完全替代wp的php渲 [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/30A1592-scaled.jpg" data-lbwps-width="1707" data-lbwps-height="2560" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/30A1592-scaled.jpg" data-lightbox="gal[1141]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1147" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/30A1592-scaled.jpg" alt="" width="1707" height="2560" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-scaled.jpg?v=1777013703 1707w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-200x300.jpg?v=1777013703 200w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-683x1024.jpg?v=1777013703 683w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-100x150.jpg?v=1777013703 100w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-768x1152.jpg?v=1777013703 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-1024x1536.jpg?v=1777013703 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-1365x2048.jpg?v=1777013703 1365w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-665x998.jpg?v=1777013703 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/30A1592-173x260.jpg?v=1777013703 173w" sizes="auto, (max-width: 1707px) 100vw, 1707px" /></a></p>
<p>这算是给这个东西写的第二篇正式的文章，本来我的想法很简单，做一个简单的前后端分离的系统来完全替代wp的php渲染机制。</p>
<p><span id="more-1141"></span></p>
<p>只是，在开发的过程中为了迎合wp的各种现有数据格式、插件、主题、shortcode等等，代码复杂度也在不断的提高。得益于ai的崛起，现在生成代码是真的简单方便，原来数个人的工作，现在一人就可以完成了。尽管哪怕没有ai，我自己也能全部搞定。ai在某些方便还是提高了输出效率，原本很多人不是全栈的，现在也给搞成了全干工程师，哪怕不会，也得硬着头皮上，去验证ai写的各种代码。</p>
<p>我一般不喜欢给ai太具体的描述，但是会给一个准确的描述，实现方法，实现路径，实现目标，所以多数时候ai呈现的代码质量尚可。然而，等到实际上线的时候发现还是一堆问题。</p>
<p>做完准备把wp的前端全部迁移到现在的baby press的前端，尝试部署之后出现了一系列问题，当然很多问题源自于测试不充分。为了解决两个系统的整合问题，需要大量的配置文件和代码。除了openresty的配置文件，前后端也生成了一堆默认的配置模板，当然，这些模板主要是为了提供一些自定义的功能，以及安全性提升加密等等。</p>
<p>这么复杂的系统，现在我觉得更像一个玩具，而不是产品，好的产品应该是简单易用，开箱可用的。</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">DJANGO_SECRET_KEY=dev-secret-key-change-me
DJANGO_DEBUG=1
DJANGO_ALLOWED_HOSTS=127.0.0.1,localhost
# 浏览器里「页面」的 origin（协议+域名+端口），须与前端访问地址一致；逗号分隔、勿加路径。
# 生产示例（Vue 部署在 i 子域、API 在 api 子域时，必须把 i 子域写进来，否则会 CORS 失败）：
# CORS_ALLOWED_ORIGINS=http://127.0.0.1:5173,http://localhost:5173,http://i.zhongxiaojie.cn,https://i.zhongxiaojie.cn
CORS_ALLOWED_ORIGINS=http://127.0.0.1:5173,http://localhost:5173
# Django CSRF 信任来源（协议+域名+端口，逗号分隔；用于 /admin/login/ 等表单提交）
# 生产示例：CSRF_TRUSTED_ORIGINS=https://api.zhongxiaojie.cn,https://i.zhongxiaojie.cn
CSRF_TRUSTED_ORIGINS=http://127.0.0.1,http://localhost

# Django 缓存（评论 UA/IP 查询结果）；推荐 Redis，例如 redis://127.0.0.1:6379/1
# 留空则使用 LocMem（仅开发、单进程）
# DJANGO_CACHE_REDIS_URL=redis://127.0.0.1:6379/1
#
# WordPress Object Cache Pro（可选）：Django 直写评论后用于定向清理评论缓存。
# 请与 WordPress 端 WP_REDIS_CONFIG 的 host/db/prefix 保持一致。
# 例如 WP_REDIS_CONFIG 里 database=5，则这里应为 redis://127.0.0.1:6379/5
# WP_OBJECT_CACHE_REDIS_URL=redis://127.0.0.1:6379/&lt;database&gt;
# 注意：当前定向清理实现依赖 prefix，建议在 WP_REDIS_CONFIG 中显式配置 'prefix' =&gt; 'zhxj'
# WP_OBJECT_CACHE_REDIS_PREFIX=zhxj
# WP_OBJECT_CACHE_BLOG_ID=0

# Baby IP Lookup：本机 lookup-ua 与静态资源公网域名（PNG/SVG 补全）
# UA_LOOKUP_UPSTREAM_BASE_URL=http://127.0.0.1:18765
# UA_LOOKUP_PUBLIC_ASSETS_BASE_URL=https://ip.zhongxiaojie.cn
# UA_LOOKUP_DEFAULT_METHOD=ip2location
# UA_LOOKUP_CACHE_TTL=604800

# WordPress database connection (MySQL/MariaDB)
WP_DB_NAME=wordpress
WP_DB_USER=root
WP_DB_PASSWORD=
WP_DB_HOST=127.0.0.1
WP_DB_PORT=3306

# WordPress table prefix, e.g. wp_ / wp123_
WP_TABLE_PREFIX=wp_

# 是否信任反代/CDN 转发头（CF-Connecting-IP / X-Real-IP / X-Forwarded-For），默认开启。
# - 生产推荐开启，并配置 TRUSTED_PROXY_IP_RANGES，只信任你的网关/CDN 回源 IP 段
# - 若 API 不会被公网直连，且 CDN 回源 IP 经常变：可保持开启并留空 TRUSTED_PROXY_IP_RANGES（有伪造风险）
TRUST_PROXY_HEADERS=1
# 反代终止 TLS（如 Nginx/Edge/CDN）时建议开启，配合 X-Forwarded-Proto 识别 https
SECURE_PROXY_SSL_HEADER_ENABLED=1

# 额外输出“真实 IP access log”（Daphne 的 access log 里显示的是 CDN 节点 IP）
# 打开后会在 stdout 输出形如：[realip] ip=... remote=... status=... GET /api/...
REAL_IP_ACCESS_LOG_ENABLED=0

# 受信任反向代理 / CDN 的 IP 段（CIDR，逗号分隔）。
# 仅当请求来源 REMOTE_ADDR 命中这些 IP 段时，后端才会信任 CF-Connecting-IP / X-Real-IP / X-Forwarded-For。
# - 本机 Nginx 反代：127.0.0.1/32,::1/128
# - 生产：把你的 Nginx/网关内网地址段、或 CDN 回源 IP 段加入这里
TRUSTED_PROXY_IP_RANGES=127.0.0.1/32,::1/128

# API 请求签名（HMAC + ts + nonce）——默认关闭
# 注意：这是“请求验签”，不是“返回加密”。建议仅在 HTTPS 下启用。
# API_SIGNING_ENABLED=1
# API_SIGNING_SECRET=change-me-long-random
# 允许客户端时间漂移（秒），超出即拒绝（防离线重放）
# API_SIGNING_TTL_SECONDS=60
# nonce 去重缓存 TTL（秒），建议 &gt;= API_SIGNING_TTL_SECONDS
# API_SIGNING_NONCE_TTL_SECONDS=300
# 需要签名的路径前缀（逗号分隔）
# API_SIGNING_REQUIRED_PREFIXES=/api/
# 免签路径（逗号分隔，严格 path 匹配），例如健康检查：
# API_SIGNING_EXEMPT_PATHS=/api/health/,/api/ping/

# SMTP / Email backend (Django)
# 不配置则不会真的发出邮件（除非你使用本地控制台邮件后端等）。
# EMAIL_BACKEND=django.core.mail.backends.smtp.EmailBackend
# EMAIL_HOST=smtp.example.com
# EMAIL_PORT=587
# EMAIL_USE_TLS=1
# EMAIL_HOST_USER=your-account@example.com
# EMAIL_HOST_PASSWORD=your-app-password
# DEFAULT_FROM_EMAIL="obaby &lt;no-reply@zhongxiaojie.cn&gt;"
#
# 评论回复邮件通知（前台回复他人评论时）
# COMMENT_REPLY_NOTIFICATION_ENABLED=1
# COMMENT_REPLY_EMAIL_FROM="obaby &lt;no-reply@zhongxiaojie.cn&gt;"
# COMMENT_REPLY_EMAIL_HEADER_IMAGE_URL=https://zhongxiaojie.com/wp-content/uploads/2026/01/uugai.com_1661691241113463.png
# COMMENT_REPLY_EMAIL_HEADER_IMAGE_WIDTH=520
# COMMENT_REPLY_EMAIL_HEADER_IMAGE_HEIGHT=180
# COMMENT_REPLY_EMAIL_HEADER_ALT=obaby 𝐢&#x200d;𝐧⃝ void
# COMMENT_REPLY_EMAIL_FOOTER_LINE1=obaby 𝐢&#x200d;𝐧⃝ void
# COMMENT_REPLY_EMAIL_FOOTER_LINK_TEXT=oba.by
#
# 与 WordPress CREN 插件退订链接校验一致（取自 wp-config.php）
# WORDPRESS_AUTH_KEY=
# WORDPRESS_AUTH_SALT=
# 与 WordPress 登录 Cookie（wordpress_logged_in_*）校验一致（同样取自 wp-config.php）
# 推荐配置 LOGGED_IN_KEY / LOGGED_IN_SALT；留空时后端会回退到 AUTH_KEY / AUTH_SALT
# WORDPRESS_LOGGED_IN_KEY=
# WORDPRESS_LOGGED_IN_SALT=

# 服务器状态小组件：统计磁盘路径（Linux "/"；Windows "C:\\")
# SERVER_PROBE_DISK_PATH=/

# <ul class='microblog-shortcode'>
<li> <img alt='' src='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=24&#038;d=initials&#038;r=pg&#038;initials=ro' srcset='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=48&#038;d=initials&#038;r=pg&#038;initials=ro 2x' class='avatar avatar-24 photo' height='24' width='24' /><span class='microblog-shortcode-post-title'> <a href='https://zhongxiaojie.com/microposts/%e5%90%8c%e6%97%b6%e6%8b%a5%e6%9c%89%e6%8d%b7%e8%b1%b9%e8%b7%9f%e5%a5%94%e9%a9%b0%ef%bc%88%e4%b8%89%e5%8f%89%e6%98%9f%e8%be%89%e7%85%a7%e4%ba%ae%e6%88%91%e7%9a%84%e8%b7%af%f0%9f%98%84%ef%bc%89/'>同时拥有捷豹跟奔驰（三叉星辉照亮我的路<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f604.png" alt="😄" class="wp-smiley" style="height: 1em; max-height: 1em;" />）</a> </span></br><span class='microblog-shortcode-post-content'></br><p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-scaled.jpg" data-lbwps-width="2560" data-lbwps-height="1440" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-scaled.jpg" data-lightbox="gal[1141]" data-lightbox="gal[1211]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1212" src="https://zhongxiaojie.cn/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-scaled.jpg" alt="" width="2560" height="1440" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-scaled.jpg?v=1778117306 2560w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-300x169.jpg?v=1778117306 300w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-1024x576.jpg?v=1778117306 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-150x84.jpg?v=1778117306 150w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-768x432.jpg?v=1778117306 768w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-1536x864.jpg?v=1778117306 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-2048x1152.jpg?v=1778117306 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-665x374.jpg?v=1778117306 665w, https://zhongxiaojie.com/wp-content/uploads/2026/05/0A5060797F349AC5DC427FF76B492C3C-462x260.jpg?v=1778117306 462w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /></a></p>
</span></br></br><span class='microblog-shortcode-commentlink'>  评论： <a href='https://zhongxiaojie.com/microposts/%e5%90%8c%e6%97%b6%e6%8b%a5%e6%9c%89%e6%8d%b7%e8%b1%b9%e8%b7%9f%e5%a5%94%e9%a9%b0%ef%bc%88%e4%b8%89%e5%8f%89%e6%98%9f%e8%be%89%e7%85%a7%e4%ba%ae%e6%88%91%e7%9a%84%e8%b7%af%f0%9f%98%84%ef%bc%89/'><img width='18' height='18' src='https://zhongxiaojie.com/wp-content/plugins/simple-microblogging/bubble-icon.png'>&times;0</a></span>
</li>
</br><hr></br>
<li> <img alt='' src='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=24&#038;d=initials&#038;r=pg&#038;initials=ro' srcset='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=48&#038;d=initials&#038;r=pg&#038;initials=ro 2x' class='avatar avatar-24 photo' height='24' width='24' /><span class='microblog-shortcode-post-title'> <a href='https://zhongxiaojie.com/microposts/%e7%9c%9f%e9%ba%bb%e4%ba%86%ef%bc%8c%e4%b8%80%e4%b8%aa%e5%8f%91%e7%89%88%e5%8f%91%e4%ba%86%e5%a5%bd%e5%87%a0%e4%b8%aa%e6%9c%88%ef%bc%81%e8%89%b9%ef%bc%81/'>真麻了，一个发版发了好几个月！艹！</a> </span></br><span class='microblog-shortcode-post-content'></br><p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-scaled.jpg" data-lbwps-width="2560" data-lbwps-height="1314" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-scaled.jpg" data-lightbox="gal[1141]" data-lightbox="gal[1132]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1134" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-scaled.jpg" alt="" width="2560" height="1314" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-scaled.jpg?v=1776930060 2560w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-300x154.jpg?v=1776930060 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-1024x526.jpg?v=1776930060 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-150x77.jpg?v=1776930060 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-768x394.jpg?v=1776930060 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-1536x789.jpg?v=1776930060 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-2048x1052.jpg?v=1776930060 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-665x341.jpg?v=1776930060 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/UserslingPictures截图Jietu20260423-153854@2x-506x260.jpg?v=1776930060 506w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /></a></p>
</span></br></br><span class='microblog-shortcode-commentlink'>  评论： <a href='https://zhongxiaojie.com/microposts/%e7%9c%9f%e9%ba%bb%e4%ba%86%ef%bc%8c%e4%b8%80%e4%b8%aa%e5%8f%91%e7%89%88%e5%8f%91%e4%ba%86%e5%a5%bd%e5%87%a0%e4%b8%aa%e6%9c%88%ef%bc%81%e8%89%b9%ef%bc%81/'><img width='18' height='18' src='https://zhongxiaojie.com/wp-content/plugins/simple-microblogging/bubble-icon.png'>&times;0</a></span>
</li>
</br><hr></br>
<li> <img alt='' src='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=24&#038;d=initials&#038;r=pg&#038;initials=ro' srcset='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=48&#038;d=initials&#038;r=pg&#038;initials=ro 2x' class='avatar avatar-24 photo' height='24' width='24' /><span class='microblog-shortcode-post-title'> <a href='https://zhongxiaojie.com/microposts/%e4%b8%80%e5%88%87%e9%83%bd%e6%98%af%e8%a1%a8%e8%b1%a1/'>一切都是表象</a> </span></br><span class='microblog-shortcode-post-content'></br><p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1.jpg" data-lbwps-width="960" data-lbwps-height="1084" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1.jpg" data-lightbox="gal[1141]" data-lightbox="gal[1128]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1129" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1.jpg" alt="" width="960" height="1084" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1.jpg?v=1776921108 960w, https://zhongxiaojie.com/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1-266x300.jpg?v=1776921108 266w, https://zhongxiaojie.com/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1-907x1024.jpg?v=1776921108 907w, https://zhongxiaojie.com/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1-133x150.jpg?v=1776921108 133w, https://zhongxiaojie.com/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1-768x867.jpg?v=1776921108 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1-665x751.jpg?v=1776921108 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/微信图片_20260420093014_39_62-1-230x260.jpg?v=1776921108 230w" sizes="auto, (max-width: 960px) 100vw, 960px" /></a></p>
</span></br></br><span class='microblog-shortcode-commentlink'>  评论： <a href='https://zhongxiaojie.com/microposts/%e4%b8%80%e5%88%87%e9%83%bd%e6%98%af%e8%a1%a8%e8%b1%a1/'><img width='18' height='18' src='https://zhongxiaojie.com/wp-content/plugins/simple-microblogging/bubble-icon.png'>&times;0</a></span>
</li>
</br><hr></br>
<li> <img alt='' src='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=24&#038;d=initials&#038;r=pg&#038;initials=ro' srcset='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=48&#038;d=initials&#038;r=pg&#038;initials=ro 2x' class='avatar avatar-24 photo' height='24' width='24' /><span class='microblog-shortcode-post-title'> <a href='https://zhongxiaojie.com/microposts/%e4%ba%8c%e6%ac%a1%e5%85%83%e8%b8%a2%e8%b8%8f%e8%88%9e/'>二次元踢踏舞</a> </span></br><span class='microblog-shortcode-post-content'></br><div style="width: 640px;" class="wp-video"><video class="wp-video-shortcode" id="video-790-1" width="640" height="360" preload="metadata" controls="controls"><source type="video/mp4" src="https://zhongxiaojie.cn/dance/R%EF%BC%81P%EF%BC%81G%EF%BC%81%E4%BA%8C%E6%AC%A1%E5%85%83%E8%B8%A2%E8%B8%8F%E8%88%9E.mp4?_=1" /><a href="https://zhongxiaojie.cn/dance/R%EF%BC%81P%EF%BC%81G%EF%BC%81%E4%BA%8C%E6%AC%A1%E5%85%83%E8%B8%A2%E8%B8%8F%E8%88%9E.mp4">https://zhongxiaojie.cn/dance/R%EF%BC%81P%EF%BC%81G%EF%BC%81%E4%BA%8C%E6%AC%A1%E5%85%83%E8%B8%A2%E8%B8%8F%E8%88%9E.mp4</a></video></div>
<p>&nbsp;</p>
</span></br></br><span class='microblog-shortcode-commentlink'>  评论： <a href='https://zhongxiaojie.com/microposts/%e4%ba%8c%e6%ac%a1%e5%85%83%e8%b8%a2%e8%b8%8f%e8%88%9e/'><img width='18' height='18' src='https://zhongxiaojie.com/wp-content/plugins/simple-microblogging/bubble-icon.png'>&times;0</a></span>
</li>
</br><hr></br>
<li> <img alt='' src='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=24&#038;d=initials&#038;r=pg&#038;initials=ro' srcset='https://gg.lang.bi/avatar/d6ebc088df916bcc9e8b94a09f9b0f604e57be54b04bd520c6db2492740fc563?s=48&#038;d=initials&#038;r=pg&#038;initials=ro 2x' class='avatar avatar-24 photo' height='24' width='24' /><span class='microblog-shortcode-post-title'> <a href='https://zhongxiaojie.com/microposts/%e8%b7%b3%e8%88%9e%ef%bc%9f%e4%b8%8d%e4%bc%9a%e5%95%8a/'>跳舞？不会啊</a> </span></br><span class='microblog-shortcode-post-content'></br><div style="width: 640px;" class="wp-video"><video class="wp-video-shortcode" id="video-787-2" width="640" height="360" preload="metadata" controls="controls"><source type="video/mp4" src="https://zhongxiaojie.cn/dance/haitunwu.mp4?_=2" /><a href="https://zhongxiaojie.cn/dance/haitunwu.mp4">https://zhongxiaojie.cn/dance/haitunwu.mp4</a></video></div>
</span></br></br><span class='microblog-shortcode-commentlink'>  评论： <a href='https://zhongxiaojie.com/microposts/%e8%b7%b3%e8%88%9e%ef%bc%9f%e4%b8%8d%e4%bc%9a%e5%95%8a/'><img width='18' height='18' src='https://zhongxiaojie.com/wp-content/plugins/simple-microblogging/bubble-icon.png'>&times;0</a></span>
</li>
</br><hr></br>
</ul><div id='paging' class='group'><span aria-current="page" class="page-numbers current">1</span>
<a class="page-numbers" href="https://zhongxiaojie.com/tag/vue/feed//page/2">2</a>
<a class="page-numbers" href="https://zhongxiaojie.com/tag/vue/feed//page/3">3</a>
<a class="next page-numbers" href="https://zhongxiaojie.com/tag/vue/feed//page/2">next »</a></div> 列表头像：Gravatar 兼容镜像根（路径同 /avatar/{md5}?s=&amp;d=），默认 gg.lang.bi
# GRAVATAR_AVATAR_BASE_URL=https://gg.lang.bi

# 侧边栏「近期文章」：正文无图时的缩略图回退地址
# SIDEBAR_RECENT_POST_FALLBACK_IMAGE_URL=https://zhongxiaojie.cn/wp-content/uploads/2026/01/...

# 评论反垃圾分类（可选；不配置则不调服务、新评论直接通过）
# BABY_ANTI_SPAM_CLASSIFY_URL=http://192.168.1.8:8765/v1/classify
# BABY_ANTI_SPAM_SECRET=change-me-long-random
# BABY_ANTI_SPAM_TIMEOUT=3

# 同一邮箱+IP 对同一篇文章连续提交的最短间隔（秒，0 关闭，最大 120）；依赖 Django cache
# COMMENT_SUBMIT_COOLDOWN_SECONDS=0

# 前台文章评论列表分页（GET /api/wp/posts/:id/comments/）：按一级评论（线程）分页，每页含该层全部回复；不传 page 时默认最后一页（最新线程）
# WP_COMMENTS_PER_PAGE=50
# 客户端 ?per_page= 的上限（不超过 500）
# WP_COMMENTS_MAX_PER_PAGE=200
# 顶层线程展示：desc=递减（最新在上，默认）；asc=递增（最新在下）
# WP_COMMENTS_ORDER=desc

# Nginx FastCGI 缓存：评论审核通过（comment_approved=1）后清理文章页、首页（可选分类页）
# 与 WordPress 插件「Nginx FastCGI Cache Purge on Comment」类似：HTTP GET {站点}/purge{路径}
# NGINX_CACHE_PURGE_ENABLED=1
# NGINX_PURGE_PUBLIC_BASE_URL=https://你的域名
# NGINX_PURGE_TIMEOUT=2
# NGINX_PURGE_SSL_VERIFY=1
# NGINX_PURGE_CATEGORIES=1
# NGINX_CACHE_FILES_PATH=/var/cache/nginx/allinone

# Kama WP Smile：评论表情包资源（给前端下发，避免硬编码域名）
# 若留空，前端会回退使用自身默认/环境变量配置。
# SMILE_PACK_BASE_URL=https://zhongxiaojie.cn/wp-content/plugins/kama-wp-smile-packs/qip_dark_all/
# SMILE_PACK_EXT=gif
# SMILE_PACK_TOKENS=smile,sad,laugh,rofl,blum,kiss,yes,no,good,bad,unknw,sorry,pardon,wacko,acute,boast,boredom,dash,search,crazy,yess,cool,air_kiss,angel,bb,beach,aggressive,blush,bomb,bravo,buba,bye,cry,curtsey,dance,dash2,declare,diablo,don-t_mention,drinks,focus,fool,friends,gamer,give_rose,heart,help,hi,laugh1,mail,mda,mosking,music,negative,ok,popcorm,punish,rtfm,sarcastic,secret,shock,shout,thank_you,vava,victory,beee,big_boss,wink,yu,cray2,dash3,girl_pinkglassesf,girl_prepare_fish,locomotive,lazy2,agree,feminist,fuk,fuck,jester,hunter,moil,offtopic,paladin,shablon_01,spam,vinsent,warning,yahoo,superman,girl_witch,fans,beta,butcher,elf,first_move,gamer2,girl_cray2,girl_cray,girl_blum,girl_dance,girl_crazy,girl_haha,heat,hysteric,nhl_crach,nhl_fight,pig_ball,aikido,angry2,banned,alcoholic,bb2,flood,gamer3,girl_devil,flirt,girl_cray3,girl_drink,girl_hide,girl_hospital,girl_impossible,girl_in_love,girl_mad,girl_sad,girl_sigh,girl_smile,girl_to_take_umbrage,girl_wacko,lazy1,nono,man_in_love,party,scenic,queen,paint,crazy_pilot,dwarf,hang1,haha,grin,good3</pre>
<p>好处呢，就是所有的系统配置基本都在这个配置文件中控制即可，无需去各种地方设置了，修改之后重启服务即可。</p>
<p>之所以说是玩具，其实我在wp之外添加了另外一个简单的管理后台，这也是为什么选了django 而没有直接用fastapi。</p>
<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-144020@2x-scaled.jpg" data-lbwps-width="2560" data-lbwps-height="1418" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-144020@2x-scaled.jpg" data-lightbox="gal[1141]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1146" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-144020@2x-scaled.jpg" alt="" width="2560" height="1418" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-scaled.jpg?v=1777012872 2560w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-300x166.jpg?v=1777012872 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-1024x567.jpg?v=1777012872 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-150x83.jpg?v=1777012872 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-768x425.jpg?v=1777012872 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-1536x851.jpg?v=1777012872 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-2048x1134.jpg?v=1777012872 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-665x368.jpg?v=1777012872 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-144020@2x-470x260.jpg?v=1777012872 470w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /></a></p>
<p>这个东西最初的目的也不是为了替换wp，所以很多功能也没必要再实现一遍了。基础的操作还是在wp的后台完成。</p>
<p>当然，做完折腾到零点多，补全了一些功能之后，最终还是上线了，这就是目前看到的页面效果，lighthouse测试：</p>
<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142212@2x-scaled.jpg" data-lbwps-width="2560" data-lbwps-height="1601" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142212@2x-scaled.jpg" data-lightbox="gal[1141]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1143" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142212@2x-scaled.jpg" alt="" width="2560" height="1601" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-scaled.jpg?v=1777012855 2560w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-300x188.jpg?v=1777012855 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-1024x640.jpg?v=1777012855 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-150x94.jpg?v=1777012855 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-768x480.jpg?v=1777012855 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-1536x961.jpg?v=1777012855 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-2048x1281.jpg?v=1777012855 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-665x416.jpg?v=1777012855 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142212@2x-416x260.jpg?v=1777012855 416w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /></a></p>
<p>ipv4测试：</p>
<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142256@2x-scaled.jpg" data-lbwps-width="2560" data-lbwps-height="1665" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142256@2x-scaled.jpg" data-lightbox="gal[1141]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1144" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142256@2x-scaled.jpg" alt="" width="2560" height="1665" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-scaled.jpg?v=1777012861 2560w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-300x195.jpg?v=1777012861 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-1024x666.jpg?v=1777012861 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-150x98.jpg?v=1777012861 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-768x500.jpg?v=1777012861 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-1536x999.jpg?v=1777012861 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-2048x1332.jpg?v=1777012861 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-665x433.jpg?v=1777012861 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142256@2x-400x260.jpg?v=1777012861 400w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /></a></p>
<p>ipv6测试：</p>
<p><a href="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142337@2x.jpg" data-lbwps-width="2534" data-lbwps-height="1598" data-lbwps-srcsmall="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142337@2x.jpg" data-lightbox="gal[1141]"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1145" src="https://zhongxiaojie.cn/wp-content/uploads/2026/04/Jietu20260424-142337@2x.jpg" alt="" width="2534" height="1598" srcset="https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x.jpg?v=1777012866 2534w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-300x189.jpg?v=1777012866 300w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-1024x646.jpg?v=1777012866 1024w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-150x95.jpg?v=1777012866 150w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-768x484.jpg?v=1777012866 768w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-1536x969.jpg?v=1777012866 1536w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-2048x1292.jpg?v=1777012866 2048w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-665x419.jpg?v=1777012866 665w, https://zhongxiaojie.com/wp-content/uploads/2026/04/Jietu20260424-142337@2x-412x260.jpg?v=1777012866 412w" sizes="auto, (max-width: 2534px) 100vw, 2534px" /></a></p>
<p>对于wp的主题，也修改了下页面宽度，与现在的vue的页面宽度基本一致了：</p>
<p><a href="http://zhongxiaojie.com" target="_blank" rel="noopener">http://zhongxiaojie.com</a></p>
<p>代码地址：</p>
<p><a href="https://gitee.com/obaby/baby-press-public" target="_blank" rel="noopener">https://gitee.com/obaby/baby-press-public</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://zhongxiaojie.com/2026/04/1141/feed/</wfw:commentRss>
			<slash:comments>86</slash:comments>
		
		
			</item>
	</channel>
</rss>
