<?xml version="1.0" encoding="UTF-8"?>
<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/"
    xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
    >
<channel>
    <title>&#x61B9;&#x4EBA;&#x61CC;&#x5922;</title>
    <atom:link href="https://joomaen.sol.build/rss.xml" rel="self" type="application/rss+xml" />
    <link>https://joomaen.sol.build/</link>
    <description><![CDATA[
    <p>Built with <a href="https://www.planetable.xyz/">Planet</a>.</p>

    ]]></description>
    
    
    <item>
        <title>&#x516C;&#x4F17;&#x53F7;&#x653E;&#x4F4E;&#x95E8;&#x69DB;&#x4E4B;&#x540E;&#xFF0C;&#x4F1A;&#x4E0D;&#x4F1A;&#x4E5F;&#x5931;&#x53BB;&#x5185;&#x5BB9;&#x8D28;&#x91CF;&#x7684;&#x9AD8;&#x5730;&#xFF1F;</title>
        <link>https://joomaen.sol.build/87E04B46-90BD-4E40-BF02-015F70937770/</link>
        <guid>https://joomaen.sol.build/87E04B46-90BD-4E40-BF02-015F70937770/</guid>
        <pubDate>Sun, 20 Apr 2025 20:06:06 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>前天晚上看见这个消息，「微信手机端支持个人公众号一键注册和发布内容」，当时还不信，直到昨天看见 IT 之家也发了，那应该就是真的了。</p> 
<p>我之前一直想注册一个公众号，毕竟依托于微信，不缺乏读者，只要好好宣传，肯定读者会越来越多。可是几年前注册相当繁琐，我也一直没有弄成。直到今年初，我才开通了个人公众号，可惜才发了 9 篇文章，还没什么人看，它就将门槛降低到这样了。</p> 
<p>对于一般人来说，或是没有注册过公众号的人来说无疑是一个好事，现在可以很方便的注册和发布内容了。但对于公众号整个生态来说不一定，因为引入更多新创作者的同时也会引入更多的低质量内容。我之前还说要对抗信息茧房和算法推荐，可以通过自己搜索来寻找感兴趣的内容或问题的答案。我当时还推荐去微信搜一搜，因为公众号这些年的积累，已经有了许多高质量的内容；而其他平台，百度自然很烂了，像知乎这样的平台也充斥着软广和小说。现在这样下去，公众号也要步入后尘了，中文互联网上很难再方便地找到优质内容了，只能在一堆无意义的、广告和 AI 生成内容中间寻找。</p> 
<p>或许微信这么做也是有它商业上的考量，这就像是从博客时代到微博时代，人们可以像发朋友圈一样随手发公众号。区别在于，朋友圈是自己的实名身份，而公众号会是另一重身份，更少拘束。</p> 
<p>当然这件事本身不是坏事，但是从其他互联网社区的发展来看，我是持悲观态度的。</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x6BCF;&#x4E2A;&#x4EBA;&#x90FD;&#x662F;&#x81EA;&#x5DF1;</title>
        <link>https://joomaen.sol.build/87110AEE-3067-4822-914F-5F70675F4437/</link>
        <guid>https://joomaen.sol.build/87110AEE-3067-4822-914F-5F70675F4437/</guid>
        <pubDate>Tue, 15 Apr 2025 19:53:58 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>从前看过一个很短的故事，好像是在某个杂志的角落。说一个人死后，接他的死神说：“又见面了。”然后送他去下一世。这个人问死神：“你还送其他人吗？”死神说：“没有，这里除了你没别人。”这个人又问：“那世界上的其他人死了会去哪里？”死神回答：“也是这里，不过，那些都是你。每个人都是你不同的转世。”</p> 
<p>我记得这故事最后一句是说这个世界上每个人都是自己，对他人友好就是对自己友好，放过他人就是放过自己。</p> 
<p>在我看来，这故事的设定是每个人的灵魂其实是同一个，就像被贬下凡间的神仙，不过他需要度过的不是一辈子，而是无休无止地做人。这似乎也像是一种酷刑了。不过每一世都不记得。因此这个人无论是好人还是坏人，他的最初设定都是一样的，无论人性本善还是人性本恶，这里只是说所有人是一样的。那么他一生中所呈现出来的善良或是邪恶，都是被后天塑造出的。</p> 
<p>如果收到他人对自己的善意帮助，那就是自己前世做了好事，帮助了别人。或者从那个帮助者的角度看，他今世行善，后辈子也会收到这份回报，有点像佛教所说的轮回了。</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x61B9;&#x61CC;&#x4E4B;&#x9593; Moments &#x914D;&#x7F6E;&#x5907;&#x4EFD;</title>
        <link>https://joomaen.sol.build/F8C35950-8477-493A-9D58-54313865B146/</link>
        <guid>https://joomaen.sol.build/F8C35950-8477-493A-9D58-54313865B146/</guid>
        <pubDate>Wed, 02 Apr 2025 20:19:56 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>自定义 js</p> 
<pre><code class="language-js">function changeFont() { 
  const link = document.createElement("link");
  link.rel = "stylesheet";
  link.type = "text/css";
  link.href = "https://cdn.jsdelivr.net/gh/urkbio/my-fonts@latest/fonts.css";
  document.head.append(link);
};
changeFont();

function loadUmami() {
    const script = document.createElement("script");
    script.defer = true;
    script.src = "https://umami.235421.xyz/script.js";
    script.dataset.websiteId = "2c527855-b5ed-4a12-948a-464ab14e5de9";
    document.head.append(script);
};

loadUmami();
</code></pre> 
<p>自定义css</p> 
<pre><code class="language-css"># 全局字体
*{font-family: "LXGW WenKai TC", sans-serif !important;}
# 取消首行缩进
.markdown-content p { text-indent: 0em; }
</code></pre> 
<p>favicon. <a href="https://media.235421.xyz/favicon.ico">https://media.235421.xyz/favicon.ico</a></p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5E95;&#x5C42;&#x4EBA;&#x7684;&#x77DB;&#x76FE;</title>
        <link>https://joomaen.sol.build/5D50681E-F6FF-4729-A410-CA196C580394/</link>
        <guid>https://joomaen.sol.build/5D50681E-F6FF-4729-A410-CA196C580394/</guid>
        <pubDate>Tue, 01 Apr 2025 10:54:23 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>今天和一个亲戚聊到考公务员，他说你笔试过了只是一个前提，后面能不能进还得找关系和花钱。我其实很鄙视这种行为，可是他说的都是身边的真实案例，这让我开始思考这个问题，难道现在真的一点规则都不讲了吗？我之前当然也知道会有这种事情发生，但我都以为是个例，毕竟也不是所有人都有这些关系和钱。我和他争辩说我不认可，他说我还是太年轻，社会上的事情知道得太少。但是我也不是个高中生了，当时我可是非常的死板，现在过了几年，我的思想也有了变化，但并不是妥协，而是更加从根本去思考某些行为的合理性。</p> 
<p>我又想到，是否我这样所谓“尊重规则”的做法才是那些当权者想看到的，他们在明面上构建了一个看似公平的规则，并通过教育让人们自发地遵守和维护这规则。于是，哪些受过教育的人，反而比较刻板，看不起靠人情关系和钱来办事的行为，因为在他们认知中，讲法律讲规则才是正常的，任何捷径都是不合理的应该被鄙视的。我现在就是这样的人，但我开始反思，如果顺从既往的教育、被灌输的认知，去遵守规则，那当然是当权者想看到的，但是这使得人的社会地位会相对固化，很难发生改变。如果钻法律和制度的空子，甚至偷偷违反法律，只需要金钱就能走捷径，自然路会好走得多。</p> 
<p>就像古代的儒家教育，通过道德上的管制使得人们（特别是知识分子）信服君臣父子的秩序和伦理，让人们成为“顺民”，不会对当权者和统治阶级进行反抗。现在则是用一套现代化的秩序规则来从小教育，让学生不认可走捷径，可是步入社会后这种事情又屡见不鲜，成为事实上的社会通行规则。那为什么学校不直接这样教呢？当然大家都遵守规则社会才好管理些，但是即使大家被教育的去遵守规则，却无法左右规则。规则是否合理，如何实施，这都是当权者决定的，当规则对普通人不再友好，那自然大家又去想着”走后门“了。</p> 
<p>我和 ChatGPT 聊这个问题，它的回答总是很客观正确，就是正确的废话。当然尊重规则对整个社会来说是好的，可是对于个人，底层的老百姓，大家都找关系走捷径，你不这样做怎么同人家竞争。说白了就是底层人民的恶性竞争了。ChatGPT 又说一个人的力量不够，可以团结起来，并通过媒体等手段促使一个更加公正透明的秩序出现。当然，如果所有人都不去这么做，那也没人逼着你这么做。但是底层人是很难团结起来的，他们想要的不是公平，而是自己的利益。正是由于底层人民的法律意识薄弱，加上监管的不到位，导致的恶性竞争。个人没办法与之对抗，或随波逐流，或穷且益坚。</p> 
<p><a href="https://www.joomaen.com/archives/The-contradictions-among-the-lower-classes.html">阅读原文</a></p> 
<hr /> 
<p>评论：</p> 
<ul> 
 <li> <p>规则是强者制定的，用来约束弱者。 —— <strong>Tom</strong> 于 <em>2025年3月27日</em> 发表。</p> </li> 
 <li> <p>人在思考这种问题的时候总是容易陷入困境，最后得出的结论要么太肤浅，要么太极端。可能是由于我们的生活太碎片了，所以没办法进行深入的思考，最后总是没有办法再向前想一步。</p> <p>就像上面这位仁兄，他得出的结论是极端的：规则是强者制定的，用来约束弱者。由于大多数人都是弱者（其实是“普通人”的同义词），那么我们自然就把自己带入进去，并且同意了这个观点，然后我们又向反建制的那一端走了一步。</p> <p>我本人最近似乎也有这样的倾向：如果遵守规则对我来说没有什么利益可得，那我为什么还要遵守规则，特别是规则又不是我订立的。我感觉我不太喜欢这样的自己。但是当一个庞然巨物横在我们面前，我们无法撼动它的时候，又能够怎么样呢，我一直也没有得出什么答案，可能只有用“美德”来让自己在面对它的时候更加自恰吧。 —— <strong>j</strong> 于 <em>2025年3月30日</em> 发表。</p> </li> 
 <li> <p><strong>回复给 j</strong> ：<br /> 这个事情看似是个矛盾，但事实上每个人都有不同的倾向。如果有两个极端的话，大多数人其实是在两点之间的某个位置，也会随着经历、阅历的增加而变化。</p> <p>你所谓“美德”无疑是很合适的，客观来讲也该是如此，只是当人生不如意时，或许会思考，曾经奉为真理和美德的东西，真的值得吗？或者说有必要吗，如果变通一些，是否会有不同呢？</p> <p>之前看到有人说起疫情时候，许多地方都要检查健康码什么的，出行各种受阻。但其实是上面要求的，命令这么做的，就是被制定出来的规则。但是基层的执行者其实并没有滥用那小小的权力去为难人，只要你能找出规则的漏洞，让执行者不担责然，那他也很乐意放你过去。 我不知道是真是假，但我愿意相信，无论是出于道德或是人与人之间的共情什么的，他都没有理由去为难你。不合理不人性化的是这个死板的规则，这时候大家肯定都不会去想着说唯命是从，而是共同在这规则之下苟且喘息着。 —— <strong>Joomaen [作者]</strong> 于 <em>2025年3月30日</em> 发表。</p> </li> 
</ul>
        ]]></description>
    </item>
    
    <item>
        <title>LibreWolf &#x6DF1;&#x5EA6;&#x4ECB;&#x7ECD;&#x2014;&#x2014;&#x4E00;&#x6B3E;&#x6CE8;&#x91CD;&#x9690;&#x79C1;&#x548C;&#x5B89;&#x5168;&#x7684;&#x6D4F;&#x89C8;&#x5668;</title>
        <link>https://joomaen.sol.build/AEA63AAF-C514-45A5-9F89-D227CB4D671F/</link>
        <guid>https://joomaen.sol.build/AEA63AAF-C514-45A5-9F89-D227CB4D671F/</guid>
        <pubDate>Mon, 31 Mar 2025 11:38:40 +0800</pubDate>
        
        
        <description><![CDATA[
            <h2><strong>一、前言</strong></h2> 
<p>在当今的互联网环境中，隐私保护越来越受到关注。大多数主流浏览器，如 Google Chrome、Microsoft Edge 和 Mozilla Firefox，或多或少都存在数据收集、遥测和跟踪的问题。这促使许多用户开始寻找更加自由、注重隐私的替代方案。</p> 
<p><strong>LibreWolf</strong> 就是在这样的背景下诞生的。它基于 Firefox，但去除了所有的遥测功能、广告推荐，并默认增强了隐私保护机制。对于那些希望在日常浏览中获得最大限度安全和隐私的人来说，LibreWolf 是一个值得尝试的浏览器。</p> 
<p>在这篇文章中，我们将详细介绍 LibreWolf 的特点、安装方法、使用体验，并与 Firefox 进行对比，帮助你判断它是否适合你的需求。</p> 
<hr /> 
<p><img src="https://b2.235421.xyz/pic/2025/03/2302d5cca359ebc345a0fb79dc11a74c.avif" alt="LibreWolf1.avif" /></p> 
<h2><strong>二、LibreWolf 的起源与理念</strong></h2> 
<h3><strong>1. LibreWolf 的诞生背景</strong></h3> 
<p>LibreWolf 是一个社区驱动的开源项目，它的目标是提供一个<strong>更自由、更安全、更注重隐私</strong>的浏览器。LibreWolf 基于 Mozilla Firefox，但进行了多项调整，以最大程度地减少用户被跟踪的可能性。</p> 
<p>由于 Firefox 近年来在隐私保护方面出现了一些妥协（如引入 Pocket 推荐、默认启用遥测等），一些开发者希望创建一个纯粹的 Firefox 分支，去除所有可能的隐私风险，同时优化安全性。LibreWolf 因此应运而生。</p> 
<h3><strong>2. 开发理念</strong></h3> 
<p>LibreWolf 的核心目标可以归结为以下几点：</p> 
<ul> 
 <li><strong>无遥测、无数据收集</strong>：去除 Firefox 内置的所有数据报告功能，避免浏览数据被收集。</li> 
 <li><strong>增强隐私保护</strong>：内置严格的防跟踪措施，默认启用多种隐私增强功能。</li> 
 <li><strong>强化安全性</strong>：使用更严格的安全设置，防止恶意网站攻击。</li> 
 <li><strong>无捆绑、无推荐</strong>：移除 Firefox 的各种内置推荐功能（如 Pocket、Mozilla 服务）。</li> 
 <li><strong>完全开源、社区维护</strong>：不同于商业浏览器，LibreWolf 由全球社区维护，代码透明。</li> 
</ul> 
<hr /> 
<p><img src="https://b2.235421.xyz/pic/2025/03/24559ec80d5d75d463a38aef4c6f4451.avif" alt="librewolf.avif" /></p> 
<h2><strong>三、LibreWolf 的核心特点</strong></h2> 
<p>LibreWolf 之所以受到隐私爱好者的青睐，主要是因为它的默认设置比 Firefox 更加严格，极大减少了用户数据泄露的风险。</p> 
<h3><strong>1. 无遥测 &amp; 无数据收集</strong></h3> 
<ul> 
 <li>默认<strong>禁用所有遥测</strong>，包括崩溃报告、使用数据收集等。</li> 
 <li>没有自动更新机制，用户可以<strong>完全控制</strong>浏览器的版本更新。</li> 
</ul> 
<h3><strong>2. 增强的隐私保护</strong></h3> 
<ul> 
 <li><strong>默认屏蔽广告和跟踪</strong>：内置 uBlock Origin，自动拦截所有主流跟踪器。</li> 
 <li><strong>禁用 WebRTC 泄露</strong>：防止 WebRTC 通过 IP 地址暴露用户身份。</li> 
 <li><strong>更强的 Cookie 隔离</strong>：采用“Total Cookie Protection”防止跨站跟踪。</li> 
 <li><strong>启用指纹保护（RFP）</strong>：减少浏览器指纹识别的可能性。</li> 
</ul> 
<h3><strong>3. 更强的安全性</strong></h3> 
<ul> 
 <li><strong>强制 HTTPS 连接</strong>（默认启用 HTTPS-Only Mode）。</li> 
 <li><strong>禁用 DRM（数字版权管理）</strong>：屏蔽 Netflix、Spotify 等流媒体的 DRM 组件。</li> 
 <li><strong>强化浏览器沙箱机制</strong>，降低恶意代码影响。</li> 
</ul> 
<h3><strong>4. 无捆绑、无广告、无推荐</strong></h3> 
<ul> 
 <li><strong>去除 Pocket、Firefox 推荐、广告服务</strong>，减少干扰。</li> 
 <li><strong>界面简洁清爽</strong>，没有多余的弹窗或提示。</li> 
</ul> 
<hr /> 
<h2><strong>四、LibreWolf 的安装与配置</strong></h2> 
<p>LibreWolf 目前支持 <strong>Windows、Linux 和 macOS</strong>，可以从官方网站或各大开源软件仓库下载。</p> 
<h3><strong>1. 安装方法</strong></h3> 
<ul> 
 <li> <p><strong>Windows</strong>：</p> 
  <ul> 
   <li> <p>直接从 <a href="https://librewolf.net/">LibreWolf 官网</a> 下载 EXE 安装包。</p> </li> 
   <li> <p>也可以使用 Winget：</p> <pre><code class="language-bash">winget install LibreWolf.LibreWolf
</code></pre> </li> 
  </ul> </li> 
 <li> <p><strong>Linux</strong>：</p> 
  <ul> 
   <li> <p>Arch Linux 用户可以使用 AUR：</p> <pre><code class="language-bash">yay -S librewolf-bin
</code></pre> </li> 
   <li> <p>Debian/Ubuntu 用户可以通过 PPA 安装：</p> <pre><code class="language-bash">sudo add-apt-repository ppa:librewolf-community/ppa
sudo apt update &amp;&amp; sudo apt install librewolf
</code></pre> </li> 
  </ul> </li> 
 <li> <p><strong>macOS</strong>：</p> 
  <ul> 
   <li> <p>使用 Homebrew 安装：</p> <pre><code class="language-bash">brew install --cask librewolf
</code></pre> </li> 
  </ul> </li> 
</ul> 
<h3><strong>2. 推荐配置</strong></h3> 
<ul> 
 <li><strong>调整默认搜索引擎</strong>（DuckDuckGo 或 Startpage）。</li> 
 <li><strong>同步书签和扩展</strong>（LibreWolf 不支持 Firefox Sync，但可以使用 Floccus）。</li> 
 <li><strong>定期检查更新</strong>（手动下载新版本）。</li> 
</ul> 
<hr /> 
<h2><strong>五、LibreWolf 与 Firefox 的对比</strong></h2> 
<table> 
 <thead> 
  <tr> 
   <th>特性</th> 
   <th>LibreWolf</th> 
   <th>Firefox</th> 
  </tr> 
 </thead> 
 <tbody> 
  <tr> 
   <td>遥测</td> 
   <td>❌ 无遥测</td> 
   <td>✅ 默认启用（可关闭）</td> 
  </tr> 
  <tr> 
   <td>广告 &amp; 跟踪</td> 
   <td>✅ 默认屏蔽</td> 
   <td>❌ 需要手动安装扩展</td> 
  </tr> 
  <tr> 
   <td>DRM 支持</td> 
   <td>❌ 无（更自由）</td> 
   <td>✅ 默认启用</td> 
  </tr> 
  <tr> 
   <td>自动更新</td> 
   <td>❌ 无（手动控制）</td> 
   <td>✅ 内置更新</td> 
  </tr> 
  <tr> 
   <td>插件兼容性</td> 
   <td>✅ 完全兼容 Firefox 扩展</td> 
   <td>✅</td> 
  </tr> 
  <tr> 
   <td>内置功能</td> 
   <td>🚀 轻量、精简</td> 
   <td>🏗️ 更多内置功能</td> 
  </tr> 
 </tbody> 
</table> 
<hr /> 
<h2><strong>六、LibreWolf 适合哪些用户？</strong></h2> 
<p>LibreWolf 非常适合：</p> 
<ul> 
 <li>关注<strong>隐私和安全</strong>的用户。</li> 
 <li>不喜欢<strong>遥测和数据收集</strong>的用户。</li> 
 <li>需要<strong>手动控制更新</strong>的用户。</li> 
 <li>喜欢 Firefox，但希望有更好隐私保护的用户。</li> 
</ul> 
<p>但如果你需要 Netflix、Spotify 等流媒体，或希望浏览器自动更新，LibreWolf 可能不太适合你。</p> 
<hr /> 
<h2><strong>七、局限性与可能的替代方案</strong></h2> 
<ul> 
 <li><strong>无法使用 DRM</strong>，影响流媒体播放。</li> 
 <li><strong>需要手动更新</strong>，不适合懒人用户。</li> 
 <li><strong>可能与某些网站不兼容</strong>（由于强指纹保护）。</li> 
</ul> 
<p><strong>替代方案：</strong></p> 
<ul> 
 <li><strong>Firefox + 手动优化</strong>（安装 uBlock Origin + 禁用遥测）。</li> 
 <li><strong>Tor Browser</strong>（适用于匿名浏览）。</li> 
 <li><strong>Brave Browser</strong>（更适合普通用户）。</li> 
</ul> 
<hr /> 
<h2><strong>八、总结与个人体验</strong></h2> 
<p>LibreWolf 是一个专注隐私和安全的浏览器，特别适合隐私敏感用户。如果你愿意手动管理更新，并愿意接受 DRM 相关的限制，那么 LibreWolf 是一个极好的选择。</p> 
<p><strong>你会考虑使用 LibreWolf 吗？欢迎在评论区分享你的看法！</strong></p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x4E3A;&#x535A;&#x5BA2;&#x6DFB;&#x52A0;onion&#x57DF;&#x540D;&#x652F;&#x6301;</title>
        <link>https://joomaen.sol.build/92414C80-0EC1-4DFB-B7B4-E6CC3652BFA4/</link>
        <guid>https://joomaen.sol.build/92414C80-0EC1-4DFB-B7B4-E6CC3652BFA4/</guid>
        <pubDate>Sun, 23 Mar 2025 20:12:48 +0800</pubDate>
        
        
        <description><![CDATA[
            <h3>安装 Tor</h3> 
<pre><code class="language-bash">sudo apt update
sudo apt install tor
</code></pre> 
<p>安装完成后，启动 Tor 服务</p> 
<pre><code class="language-bash">sudo systemctl start tor
sudo systemctl enable tor
</code></pre> 
<h3>配置 Tor</h3> 
<p>编辑配置文件torrc</p> 
<pre><code class="language-bash">vim /etc/tor/torrc
</code></pre> 
<p>添加或取消注释以下内容，注意端口要和Typecho运行端口匹配</p> 
<pre><code class="language-bash">HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:8080
</code></pre> 
<ul> 
 <li><code>HiddenServiceDir</code> 是存储 Tor 隐藏服务的密钥和配置的目录。</li> 
 <li><code>HiddenServicePort</code> 指定了 Tor 将 <code>.onion</code> 域名的请求转发到本地 <code>8080</code> 端口（也就是你 Nginx 反代 Typecho 服务的端口）。</li> 
</ul> 
<h3>保存并重启 Tor 服务以应用更改</h3> 
<pre><code class="language-bash">systemctl restart tor
</code></pre> 
<h3>获取 <code>.onion</code>域名</h3> 
<p>完成配置后，Tor 会在 <code>/var/lib/tor/hidden_service/hostname</code> 文件中生成 <code>.onion</code> 域名。<br /> 查看域名：</p> 
<pre><code class="language-bash">cat /var/lib/tor/hidden_service/hostname
</code></pre> 
<p>记录下来类似的内容：<code>xxxxxxxxxxxxxxxx.onion</code></p> 
<h3>将onion域名反代到Typecho</h3> 
<p>修改Nginx配置</p> 
<pre><code class="language-bash">vim /etc/nginx/sites-available/default
</code></pre> 
<p>配置 Nginx 监听 <code>.onion</code> 域名并反代到 Typecho：</p> 
<pre><code>server {
    listen 80;
    server_name xxxxxxxxxxxxxxx.onion;

    location / {
        proxy_pass http://127.0.0.1:8080;  # Typecho 运行的地址
        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_redirect off;
    }
}
</code></pre> 
<p>保存并退出</p> 
<p>检查 Nginx 配置是否正确：</p> 
<pre><code class="language-bash">nginx -t
</code></pre> 
<p>如果没有问题，重新加载 Nginx：</p> 
<pre><code class="language-bash">systemctl reload nginx
</code></pre> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>Firefox&#xFF1A;&#x6CE8;&#x91CD;&#x9690;&#x79C1;&#x4E0E;&#x53EF;&#x5B9A;&#x5236;&#x6027;&#x7684;&#x7ECF;&#x5178;&#x6D4F;&#x89C8;&#x5668;</title>
        <link>https://joomaen.sol.build/EF01D767-E4DC-4ED3-B954-18729E076B9D/</link>
        <guid>https://joomaen.sol.build/EF01D767-E4DC-4ED3-B954-18729E076B9D/</guid>
        <pubDate>Mon, 17 Mar 2025 10:08:49 +0800</pubDate>
        
        
        <description><![CDATA[
            <h3><strong>Firefox：注重隐私与可定制性的经典浏览器</strong></h3> 
<h4><strong>1. Firefox 介绍</strong></h4> 
<p>Firefox 是由 Mozilla 基金会开发的开源浏览器，首次发布于 2002 年。与基于 Chromium 内核的浏览器不同，Firefox 使用 Gecko 引擎，强调用户隐私保护、可定制性和开源精神。尽管市场份额较小，但它仍然凭借其强大的隐私功能和自由精神吸引着忠实用户。</p> 
<p>由于最近Chrome真的开始禁用Manifest V2的浏览器扩展了，因此我也在思考Firefox的份额有没有可能因此获得稍微的提升。在我了解的目前情况来看，近乎所有基于Chromium的浏览器都无法幸免，即便像<a href="https://brave.com/">Brave</a>浏览器这样说过会继续支持Manifest V2的厂商，也只是在设置中允许启用这四个常用的扩展。但我觉得当大多数浏览器不再支持时，扩展程序开发者或许也不会再维护Manifest V2版本，因此我对Chromium系浏览器持悲观态度。</p> 
<p>我又一次安装好了Firefox，我将分享它的特点以及我自己的使用体验。</p> 
<h4><strong>2. Firefox 的隐私保护特性</strong></h4> 
<p>Firefox 提供多项强大的隐私保护功能，包括默认阻止第三方追踪器、全面 Cookie 保护、加密的 DNS 请求（DNS over HTTPS）、以及容器标签页来隔离不同网站的数据。此外，它还具备防止指纹识别的功能，减少用户的浏览器特征泄露，确保用户在上网时的隐私和匿名性。</p> 
<p>其实在隐私保护方面自不用多说，人们不使用Firefox更多是因为它的兼容性差、速度慢、内存占用率高等缺点，但如果真正想要避免Chromium，那还得是Firefox。</p> 
<p>对我个人来说，我使用的是一个叫<a href="https://github.com/yokoffing/Betterfox">BetterFox</a>的<code>user.js</code>，这是一个配置档，将它放到当前<code>Profile</code>目录即可获得增强功能，据说<strong>比普通 Firefox 快 31% 🚀</strong>，更多说明去看它的GitHub页面。</p> 
<p>或者你可以尝试一些主打隐私保护的开源第三方版本，比如 <a href="https://icecatbrowser.org/">GNU icecat</a>和 <a href="https://librewolf.net/">LibreWolf</a>，当然第三方版本有非常多，有的不一定开源，有的是背后有公司在维护，我后面会提到。</p> 
<h4><strong>3. 可定制性与扩展生态</strong></h4> 
<p>如果你想自己手动配置，Firefox也完全满足你，它是有高度可定制性。如果你知道你在做什么，你可以在<code>about:config</code>中修改任何东西。</p> 
<p>当然作为一个浏览器，Firefox也支持浏览器扩展程序，一般常见的扩展都有Firefox和Chrome两个版本，而且Firefox支持Manifest V2和Manifest V3并存，因此你可以安装<code>uBlock Origin</code>。</p> 
<p>还有几个推荐的扩展：</p> 
<ul> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/violentmonkey/">暴力猴</a>: 脚本管理器，类似<a href="https://addons.mozilla.org/zh-CN/firefox/addon/tampermonkey/">Tampermonkey</a>。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/immersive-translate/">沉浸式翻译</a>: 非常强大的翻译扩展，支持多种翻译服务，还有AI翻译等等。主要是相比Chrome、Edge的内置翻译，用这个扩展可以同时显示原文和译文。而且Firefox好不容易才有了内置翻译，似乎中文支持还在测试。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/auto-tab-discard/">Auto Tab Discard</a>: 自动睡眠💤未使用标签页，降低内存占用。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/bitwarden-password-manager/">Bitwarden</a>: 密码管理工具，可以使用<a href="https://github.com/dani-garcia/vaultwarden">vaultwarden</a>自建服务端。</li> 
 <li><a href="https://addons.mozilla.org/en-US/firefox/addon/canvasblocker/">CanvasBlocker</a>: 指纹保护，减少浏览器特征泄露，提高匿名性。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/free-download-manager-addon/">Free Download Manager</a>: 接管浏览器下载到FDM下载器。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/zeroomega/">Zero Omega</a>: 代理插件，Proxy SwitchyOmega的Manifest V3版。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/ublock-origin/">uBlock Origin</a>: 无需多言，开源拦截工具，非常强大，默认规则其实也够用了。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/user-agent-string-switcher/">User-Agent Switcher and Manager</a>: 修改User Agent，可以模拟Chrome、Safari等其他浏览器，一定程度缓解不兼容。</li> 
 <li><a href="https://addons.mozilla.org/zh-CN/firefox/addon/multi-account-containers/">Firefox Multi-Account Containers</a>：官方扩展，允许在同一个网站同时登入多个账户，互相隔离。</li> 
</ul> 
<h4><strong>4. 性能与资源占用</strong></h4> 
<p>内存占用上，很久以前，是Firefox比Chrome更节省内存，那时大家都调侃Chrome是内存大户。之后到了前几年，大概在110版本左右的时候，Firefox的这个优势就已经没有了，甚至某些情况下比Chrome更吃内存。然而在我最近用下来发现，开的标签页较少时，Firefox更吃内存，开的标签页较多的情况下，比如20个以上时，就差不多了。加上我使用 Auto Tab Discard扩展来睡眠未使用的标签页，反正我日常开二三十个标签页，也不会用掉太多内存。</p> 
<h4><strong>5. 多平台与同步功能</strong></h4> 
<p>作为三大浏览器之一，Firefox当然也有多平台同步，只需一个账户即可进行标签页、书签、历史记录、密码同步。</p> 
<p>不过它的移动端比桌面端还难用，在Android上，它支持安装扩展，算得上一大特点。在我实际用下来，它的Android版非常卡，所以我一般使用<a href="https://github.com/fork-maintainers/iceraven-browser">Iceraven</a>这个第三方版本，功能上些许差异我也没在意，只是我觉得比官方版流畅一些，只不过还是没有基于Chromium的浏览器流畅。</p> 
<p>而在iOS上，由于系统限制，它几乎没有任何功能可言，唯一的用处就是同步书签了。我之前也一直执着于同步书签，但现在已经无所谓了，反正我安装了许多浏览器，也没有哪个是永远的主力，而且现在用iPhone，手机上基本是用Safari。</p> 
<p>说回Firefox，它还有个叫作 Firefox Focus 的隐私浏览器，iOS和Android都有，只有一个地址栏，很简洁。我觉得它就是像 DuckDuckGo 浏览器那样的，主打阅后即焚，不保留浏览记录。</p> 
<h4><strong>6. Firefox 的挑战与未来发展</strong></h4> 
<p>Firefox的份额这几年也是越来越低了，Mozilla基金会作为一个非营利组织，本身就很难和背靠Google的Chromium系battle，也有传言说Mozilla内部管理问题。反正Chromium似乎已经成为事实上的Web标准，开发者也更多以Chrome为准，甚至有的网站判断UA为Firefox系就不让访问，但是UA改为Chrome就可以了。</p> 
<p>Mozilla本来有新的内核Servo，原本计划替代目前的内核Gecko，测试了许久也最终没能问世，Mozilla 在 2020 年裁员所有 Servo 开发人员后，将项目交给了 Linux Foundation，随后于 2023 年移交至 Linux Foundation Europe，至今未见大规模应用。</p> 
<p>有趣的是，Mozilla 自 2004 年起与 Google 达成合作，使 Google 成为 Firefox 的默认搜索引擎。Mozilla 的主要收入来源除了捐赠，很大一部分来自这项合作。然而，Firefox 一方面坚持独立于 Chromium 生态，另一方面却依赖 Google 提供资金支持。近期，Google 正面临美国政府的反垄断调查，甚至可能被要求剥离 Chrome 浏览器相关业务。不过，目前尚不清楚 Google 是否会出售 Chrome，如果出售，会由谁接手，以及这对 Firefox 与 Google 之间的合作关系会产生怎样的影响。</p> 
<p>不过相比Chrome相对激进的策略，Firefox还是会同时支持Manifest V2和Manifest V3扩展，这或许能促使一部分用户迁移到Firefox，但是对Firefox整体的市场份额应该不会有太大波动。</p> 
<h4><strong>7. 一些第三方浏览器推荐</strong></h4> 
<table> 
 <thead> 
  <tr> 
   <th>第三方版本</th> 
   <th>主要特点</th> 
   <th>支持平台</th> 
   <th>官网链接</th> 
  </tr> 
 </thead> 
 <tbody> 
  <tr> 
   <td><strong>Waterfox</strong></td> 
   <td>基于 Firefox ESR，移除遥测</td> 
   <td>Windows, macOS, Linux</td> 
   <td><a href="https://www.waterfox.net/">waterfox.net</a></td> 
  </tr> 
  <tr> 
   <td><strong>Floorp</strong></td> 
   <td>以隐私和可定制性为主，深度优化 UI 体验</td> 
   <td>Windows, Linux</td> 
   <td><a href="https://floorp.app/">floorp.app</a></td> 
  </tr> 
  <tr> 
   <td><strong>LibreWolf</strong></td> 
   <td>移除所有遥测、广告和 Google 依赖，强化隐私保护</td> 
   <td>Windows, macOS, Linux</td> 
   <td><a href="https://librewolf.net/">librewolf.net</a></td> 
  </tr> 
  <tr> 
   <td><strong>IceCat</strong></td> 
   <td>GNU 维护的自由软件版本，移除非自由组件</td> 
   <td>Linux, Windows, macOS</td> 
   <td><a href="https://icecatbrowser.org/index.html">GNU Icecat</a></td> 
  </tr> 
  <tr> 
   <td><strong>Mull</strong></td> 
   <td>基于 Firefox for Android，增强隐私和安全性</td> 
   <td>Android</td> 
   <td><a href="https://gitlab.com/divested-mobile/mull">gitlab.com/divested-mobile/mull</a></td> 
  </tr> 
  <tr> 
   <td><strong>Fennec F-Droid</strong></td> 
   <td>去除 Google 依赖的 Firefox for Android 版本</td> 
   <td>Android</td> 
   <td><a href="https://f-droid.org/en/packages/org.mozilla.fennec_fdroid/">f-droid.org/en/packages/org.mozilla.fennec_fdroid</a></td> 
  </tr> 
  <tr> 
   <td><strong>Tor Browser</strong></td> 
   <td>以 Firefox ESR 为基础，集成 Tor 网络，实现匿名浏览</td> 
   <td>Windows, macOS, Linux, Android</td> 
   <td><a href="https://www.torproject.org/">torproject.org</a></td> 
  </tr> 
  <tr> 
   <td><strong>IronFox</strong></td> 
   <td>Mull的分支，LibreWolf推荐的Android版本</td> 
   <td>Android</td> 
   <td><a href="https://gitlab.com/ironfox-oss/IronFox/">IronFox</a></td> 
  </tr> 
  <tr> 
   <td><strong>奔跑的奶酪定制版</strong></td> 
   <td>优化、开箱即用的配置</td> 
   <td>Windows, macOS</td> 
   <td><a href="https://www.runningcheese.com/firefox">RunningCheese Firefox 136.0 正式版 </a> <a href="https://github.com/runningcheese/RunningCheese-Firefox">RunningCheese-Firefox </a></td> 
  </tr> 
  <tr> 
   <td><strong>tete009编译版</strong></td> 
   <td>编译优化</td> 
   <td>Windows</td> 
   <td><a href="https://tete009.pages.dev/en-US/software">Software</a></td> 
  </tr> 
  <tr> 
   <td><strong>Pale moon</strong></td> 
   <td>古老界面，使用旧版Firefox的Goanna渲染引擎</td> 
   <td>Windows, macOS, Linux, FreeBSD</td> 
   <td><a href="https://www.palemoon.org/">Pale moon</a></td> 
  </tr> 
  <tr> 
   <td><strong>Midori</strong></td> 
   <td>定制化，工作空间，隐私。似乎有商业公司运营并且卖VPN</td> 
   <td>Windows, macOS, Linux, Android</td> 
   <td><a href="https://astian.org/midori-browser/">Midori Browser</a></td> 
  </tr> 
  <tr> 
   <td><strong>mullvad</strong></td> 
   <td>用mullvad VPN代替Tor网络的Tor browser</td> 
   <td>Windows, macOS, Linux</td> 
   <td><a href="https://mullvad.net/en/browser">mullvad Browser</a></td> 
  </tr> 
  <tr> 
   <td><strong>Iceraven</strong></td> 
   <td>之前的特点是支持从商店安装扩展，不过现在官方版也支持了，这个更流畅</td> 
   <td>Android</td> 
   <td><a href="https://github.com/fork-maintainers/iceraven-browser">Iceraven</a></td> 
  </tr> 
  <tr> 
   <td><strong>Basilisk</strong></td> 
   <td>最初由 Pale Moon 团队开发，后来独立，定位为 Waterfox Classic 的替代品，支持 XUL/XPCOM 扩展，但不支持 WebExtensions。</td> 
   <td>Windows, macOS, Linux, FreeBSD</td> 
   <td><a href="https://www.basilisk-browser.org/">Basilisk</a></td> 
  </tr> 
  <tr> 
   <td><strong>SeaMonkey</strong></td> 
   <td>继承了 Mozilla Suite 的传统，包含浏览器、邮件客户端等功能，基于 Gecko 引擎。界面相当古老</td> 
   <td>Windows, macOS, Linux</td> 
   <td><a href="https://www.seamonkey-project.org/">The SeaMonkey® Project</a></td> 
  </tr> 
  <tr> 
   <td><strong>Zen Browser</strong></td> 
   <td>类似Floorp，外观像Arc，似乎更快？</td> 
   <td>Windows, macOS, Linux</td> 
   <td><a href="https://github.com/zen-browser/desktop">zen-browser</a></td> 
  </tr> 
 </tbody> 
</table> 
<p>如果发现了新的会再补充</p> 
<h4><strong>8.总结</strong></h4> 
<p>Firefox永远是一款值得推荐的浏览器，当然，你尝试过之后也许会觉得它速度慢、兼容性差、很难用、不够人性化，然后继续用Chromium系浏览器，但它应该作为一个备用浏览器被更多人看见和体验。</p> 
<p>当然我不会说因为Chromium垄断，直接推荐你完全迁移到Firefox，电脑上当然可以有不止一个浏览器。我尽管不喜欢同时开着多个浏览器一起用，但我会过一段时间就换一个来作为主力使用，同时会被它的问题所烦恼，然后换一个，周而复始。</p> 
<p>从体验上来说，Firefox绝对不是最好的，但在一般用户可能不在意的地方，比如强大的自定义、隐私保护、对Manifest V2扩展的继续支持等方面，Firefox做得确实不错。更深层次点，或许就因为它是为数不多的独立内核浏览器，它就注定会受到推崇。</p> 
<hr /> 
<p>参考：</p> 
<ul> 
 <li><a href="https://linuxfoundation.eu/newsroom/servo-web-rendering-engine-joins-linux-foundation-europe">Servo web rendering engine joins Linux Foundation Europe</a></li> 
 <li><a href="https://www.mozilla.org/en-US/firefox/">Firefox Browser</a></li> 
 <li><a href="https://blog.mozilla.org/en/products/firefox/firefox-manifest-v3-adblockers/">Mozilla’s approach to Manifest V3: What’s different and why it matters for extension users</a></li> 
 <li><a href="https://github.com/yokoffing/Betterfox">BetterFox</a></li> 
</ul> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>macOS&#x4E0A;&#x7684;Cloudflare Tunnel&#x57FA;&#x672C;&#x547D;&#x4EE4;</title>
        <link>https://joomaen.sol.build/B286A157-F7D2-4899-BEAC-91D93F39A66F/</link>
        <guid>https://joomaen.sol.build/B286A157-F7D2-4899-BEAC-91D93F39A66F/</guid>
        <pubDate>Thu, 13 Mar 2025 09:07:44 +0800</pubDate>
        
        
        <description><![CDATA[
            <h4>在Zero Trust中创建Tunnel并复制命令安装cloudflared和启动隧道。</h4> 
<pre><code class="language-shell">brew install cloudflared &amp;&amp; 

sudo cloudflared service install &lt;你的-token&gt;
</code></pre> 
<h4>查看Cloudflare Tunnel运行状态</h4> 
<pre><code class="language-shell">sudo launchctl list | grep cloudflared

</code></pre> 
<h4>卸载安装</h4> 
<pre><code class="language-shell">sudo cloudflared service uninstall

</code></pre> 
<h4>列出现有Tunnel</h4> 
<pre><code class="language-shell">cloudflared tunnel list

</code></pre> 
<hr /> 
<h4>更新</h4> 
<pre><code class="language-shell"># Update the `cloudflared` package:
brew upgrade cloudflared

# Restart the service:
sudo launchctl stop com.cloudflare.cloudflared
sudo launchctl unload /Library/LaunchDaemons/com.cloudflare.cloudflared.plist
sudo launchctl load /Library/LaunchDaemons/com.cloudflare.cloudflared.plist
sudo launchctl start com.cloudflare.cloudflared
</code></pre>
        ]]></description>
    </item>
    
    <item>
        <title>BlackBlaze B2&#x5B58;&#x50A8;&#x4F7F;&#x7528;Cloudflare Workers&#x4EE3;&#x7406;&#x5E76;&#x8BBE;&#x5B9A;&#x7F13;&#x5B58;</title>
        <link>https://joomaen.sol.build/1A4EF5CD-AB27-44DA-A6BB-30D1B39770E1/</link>
        <guid>https://joomaen.sol.build/1A4EF5CD-AB27-44DA-A6BB-30D1B39770E1/</guid>
        <pubDate>Fri, 07 Mar 2025 20:44:43 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>创建一个Cloudflare Worker，代码如下：</p> 
<pre><code>addEventListener("fetch", event =&gt; {
    event.respondWith(handleRequest(event.request))
  })
  
  async function handleRequest(request) {
    let url = new URL(request.url)
    let bucketName = "你的桶名"
    // 友好URl的域名
    let b2BaseUrl = `https://fxxx.backblazeb2.com/file/${bucketName}`
  
    // 拼接 B2 URL
    let newUrl = b2BaseUrl + url.pathname
  
    // 通过 fetch 代理请求到 B2
    let response = await fetch(newUrl, {
        headers: {
            "Origin": null
        }
    })
  
    // 复制原始响应的头信息
    let newHeaders = new Headers(response.headers)
  
    // 设置强制缓存
    newHeaders.set("Cache-Control", "public, max-age=31536000, immutable")
    newHeaders.set("Access-Control-Allow-Origin", "*")
  
    return new Response(response.body, {
        status: response.status,
        headers: newHeaders
    })
  }
  
</code></pre> 
<h4>为这个Worker绑定自定义域名</h4> 
<h4>设置缓存</h4> 
<p><img src="https://b2.235421.xyz/pic/2025/03/c9360b4497fb667d83510e5dc3079076.jpeg" alt="图片" />图片来自<a href="https://ldo.one/post/backblaze-yes/">Loudomian</a>，使用我自己图床</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x4F7F;&#x7528;Cloudflare Workers&#x642D;&#x5EFA;&#x53CD;&#x4EE3;Google DoH</title>
        <link>https://joomaen.sol.build/B100A8F3-342B-4275-A61E-93BF3A6F23D2/</link>
        <guid>https://joomaen.sol.build/B100A8F3-342B-4275-A61E-93BF3A6F23D2/</guid>
        <pubDate>Fri, 07 Mar 2025 20:43:01 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>转自<a href="https://www.nodeseek.com/post-282877-1">Nodeseek--使用Workers搭建反代加密DNS</a>，仅作备份</p> 
<p>代码如下</p> 
<pre><code>export default {
  async fetch(request) {
    let url = new URL(request.url);

    // 仅允许 /doh, /dns-query特征明显，换成别的
    if (url.pathname !== "/doh") {
      return new Response("Not Found", { status: 404 });
    }

    // 目标 DoH 服务器
    let targetURL = "https://dns.google/dns-query" + url.search;

    let modifiedRequest = new Request(targetURL, {
      method: request.method,
      headers: new Headers(request.headers),
      body: request.body,
      redirect: "follow"
    });

    // 设置正确的 Host 头，避免 Google 拒绝请求
    modifiedRequest.headers.set("Host", "dns.google");
    modifiedRequest.headers.set("Accept", "application/dns-message");

    let response = await fetch(modifiedRequest);

    let newHeaders = new Headers(response.headers);
    newHeaders.set("Access-Control-Allow-Origin", "*"); // 允许 CORS

    return new Response(response.body, {
      status: response.status,
      headers: newHeaders
    });
  }
}

</code></pre> 
<p>最好将默认路径<code>/dns-query</code>换成别的，或许更不容易被阻断</p> 
<p>部署之后绑定自定域名，使用<code>https://your.domain/doh</code>即可进行加密DNS查询</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>Ulaa&#x6D4F;&#x89C8;&#x5668;--&#x6CE8;&#x91CD;&#x9690;&#x79C1;&#x548C;&#x591A;&#x6A21;&#x5F0F;&#x9694;&#x79BB;</title>
        <link>https://joomaen.sol.build/84A437F3-1090-4F8B-B793-90129A760147/</link>
        <guid>https://joomaen.sol.build/84A437F3-1090-4F8B-B793-90129A760147/</guid>
        <pubDate>Fri, 28 Feb 2025 11:21:45 +0800</pubDate>
        
        
        <description><![CDATA[
            <h2>浏览器迷</h2> 
<p>作为一个浏览器爱好者，我喜欢尝试各种不同的浏览器，每个浏览器都有自己独特的功能和擅长的领域。比如在隐私、安全、功能丰富性、易用性、本地化、多平台同步等方面各有不同，当然我还没找到一个各方面完美的六边形战士，因此我也热衷于尝试不同的浏览器，试图找到最适合自己的。</p> 
<p>我打算将我自己对不同浏览器的使用体验，还有基本的功能、特点等，写一系列的博客文章，这个分类就叫作浏览器迷，希望能让读者快速了解到各个浏览器的不同之处。</p> 
<hr /> 
<h2><a href="https://ulaa.com/">Ula浏览器 --- Ulaa Browser</a></h2> 
<h3>官方介绍</h3> 
<p>Ulaa浏览器是Zoho公司于2023年5月推出的一款注重隐私保护的浏览器，基于Chromium引擎，同时支持Windows、macOS、Linux、iOS、Android。这是我最近在折腾Zoho Mail时才发现的，发布才不到两年，也相对小众。Ulaa浏览器应该是闭源的，至少我没找到它是否开源的相关信息。<br /> <img src="https://media.235421.xyz/2025/02/1740653617.avif" alt="截屏2025-02-27 17.54.04.avif" /></p> 
<p>根据官方介绍，它注重效率，可以<strong>最大限度地提高工作效率，并在更短的时间内完成更多工作</strong>。Ulaa浏览器与 Zoho 的 SSO 身份验证系统集成，可以无缝安全地登录任何 Zoho 应用程序，而无需每次都手动登录。确实在登录Zoho Mail时无须额外验证，比较方便。它还有一个模式切换功能，方便快速切换工作和私人模式，还有开发者和儿童模式。</p> 
<p>隐私保护方面，Ulaa浏览器宣称<strong>不会向第三方发送任何用户数据</strong>，以及无需第三方账户集成，没有内置跟踪器和分析功能，没有运动传感器，甚至没有相似URL建议功能，是为了保护隐私。它还禁止了DNS预取功能。</p> 
<h3>我的体验</h3> 
<h4>外观</h4> 
<p>打开桌面浏览器（我用的macOS版本），主页面和Chrome类似，不过右上角有一个内置的广告拦截器，一个Ulaa Notes按钮，还有一个胶囊形状的模式切换按钮。新标签页上有收藏夹和最近访问的快捷方式图标，右侧有两个面板，可以看使用时间以及隐私报告。<br /> <img src="https://media.235421.xyz/2025/02/1740653997.avif" alt="截屏2025-02-27 18.58.30.avif" /></p> 
<p><img src="https://media.235421.xyz/2025/02/1740653723.avif" alt="截屏2025-02-27 18.16.19.avif" /></p> 
<h4>广告拦截器</h4> 
<p>菜单栏上默认有一个内置的广告拦截器，点击图标，可以在访问网站时快速为此网站关闭拦截器。下面还有三个选项，点击Privacy Report会跳转到一个隐私报告页面，展示更详细的跟踪器拦截数据。点击Preferences会跳转到设置项的隐私和安全页面，可以选择标准保护和极端保护。点击Advanced可以更新拦截列表，但我没找到自定规则列表的地方，应该是只能用内置的。<br /> <img src="https://media.235421.xyz/2025/02/1740653741.avif" alt="截屏2025-02-27 18.17.09.avif" /></p> 
<p><img src="https://media.235421.xyz/2025/02/1740653777.avif" alt="截屏2025-02-27 18.19.01.avif" /></p> 
<h4>模式切换</h4> 
<p>点击右上角胶囊形状的模式切换器，可以快速在不同模式切换，不同的模式相互隔离。</p> 
<p>个人模式<br /> 个人模式可让您在不损害隐私和安全的情况下探索互联网世界。它专为您的休闲浏览活动而设计，例如浏览购物网站、社交媒体和个人电子邮件，有助于平衡职业和个人生活。<br /> 我最常用的就是个人模式，默认启用拦截器，且没有其他限制。</p> 
<p>儿童模式需要设定密码，然后进入和退出儿童模式都需要输入这个密码，默认屏蔽了不适当内容和网站，新标签页的快捷方式也是一些儿童学习网站以及小游戏。</p> 
<p>工作模式似乎和个人模式没什么区别，也没什么限制，只是将私人娱乐和工作内容隔离开。</p> 
<p>开放模式（Open Season Mode），完全没有跟踪器拦截，全开放模式，没有任何限制。</p> 
<p>开发者模式，首次进入会建议几个浏览器扩展，还有一个Quick Actions按钮，可以进行一些调试工作。<br /> <img src="https://media.235421.xyz/2025/02/1740653796.avif" alt="截屏2025-02-27 18.27.44.avif" /></p> 
<p><img src="https://media.235421.xyz/2025/02/1740653817.avif" alt="截屏2025-02-27 18.27.59.avif" /></p> 
<p>再还有一个无痕模式。</p> 
<h4>自动模式切换</h4> 
<p>前面的预设几个模式并不是什么很神奇的功能，毕竟像Chrome多开几个Profiles也可以实现，但是Ulaa有一个自动模式切换功能，在设置中可以为各个模式添加URL，然后当你访问这些网站时就会自动切换到对应的模式。我还没想到这个模式有什么使用场景，在其他浏览器上也没见过类似的功能，不过挺有趣的，有需求的人可以试试。<br /> <img src="https://media.235421.xyz/2025/02/1740653844.avif" alt="截屏2025-02-27 18.31.56.avif" /></p> 
<h4>多平台同步</h4> 
<p>我是在使用Zoho托管的域名邮箱，可以直接登录，使用Zoho账户实现多平台同步，基本上也是什么都能同步。你当然也可以使用现有的邮箱（比如outlook）注册一个Zoho账户来同步。<br /> <img src="https://media.235421.xyz/2025/02/1740653855.avif" alt="截屏2025-02-27 18.34.49.avif" /></p> 
<h4>扩展</h4> 
<p>基于Chromium，自然是可以安装任何Chrome Web Store上的扩展。目前版本是最新内核Chromium 133。对于Manifest V2版本的uBlock Origin，依旧可以通过Chrome商店安装，只是提醒很快将不再受支持。我还尝试下载下来本地安装，直接打开开发者模式拖进去，显示无法解压，不过加载已解压的扩展程序就可以，还是提示很快将不受支持。</p> 
<hr /> 
<h3>总结</h3> 
<p>总体来说，Ulaa浏览器算不上多出众，可以说是Zoho版的Chrome，并没添加太多繁琐和无用的功能。而且相比Chrome和edge，隐私保护上肯定是更胜一筹。它做了许多隐私方面的改进，不过对于用户来说没什么感觉，就是内置多模式以及动态切换是一个亮点。毕竟发布没多久，希望以后不要像edge一样塞进去很多功能，保持简单再加上隐私保护，对普通用户来说足够了。</p> 
<p>如果你在使用Chrome，但对Google服务不是很依赖的话，可以推荐切换到Ulaa；或者你需要多种场景隔离的话，也可以试试；或者想要隐私保护又不想搞得太复杂，不喜欢火狐的用户也可以一试。</p> 
<hr /> 
<p>参考：<br /> <a href="https://ulaa.com/">Ulaa Browser</a><br /> <a href="https://ulaabrowser.zohodesk.com/portal/en/kb/articles/modes-in-ulaa#Personal_Mode">Modes</a><br /> <a href="https://ulaabrowser.zohodesk.com/portal/en/kb/faq">FAQ Knowledge Base</a><br /> <a href="https://ulaa.com/third-party-trackers.html">Keep third-party trackers at bay in Ulaa</a></p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x4ECE;&#x57DF;&#x540D;&#x90AE;&#x7BB1;&#x60F3;&#x5230;&#x90A3;&#x4E9B;&#x7B14;&#x53CB;&#x65F6;&#x5149;</title>
        <link>https://joomaen.sol.build/AEE7F517-8889-4461-A435-6C33A7F8E2D8/</link>
        <guid>https://joomaen.sol.build/AEE7F517-8889-4461-A435-6C33A7F8E2D8/</guid>
        <pubDate>Tue, 25 Feb 2025 12:09:54 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>最近用我自己的域名放在 zoho mail 国际版搞了一个域名邮箱，便想多用用邮件通信，一是属于自己的邮箱地址，还有体验一下这种稍微复古的感觉。</p> 
<p>当然在我认识的人之中是没有人使用邮件和我沟通的，他们或许出于工作原因会使用到电子邮件，但应该不会闲到配合我来进行这刻意的行为。</p> 
<p>我一开始就是给自己的不同邮箱地址发，互相发，给小号抄送。听说经常发发可以提高送达率，也就是更不容易进垃圾箱，就像互联网平台养号一样。我还用 <a href="https://www.mail-tester.com/">mail tester</a> 检测了下邮件得分，一开始是 10/10，可当我配置好 DKIM 记录之后就变成了 8点几分了，可能是我发的内容太简单了。</p> 
<hr /> 
<h3>以下为回忆</h3> 
<p>今晚突发奇想想找个笔友，不过用电邮通信，这应该会很有意思。我在网上搜了一下，有专门的这种网站或 APP，还有找外国笔友的，不过这些平台都要注册，就没进去看。只有一个网站能看到一些人发的帖子，都是寻找笔友的，内容是说自己的爱好、性格等，也不乏找对象的。看了一圈也没几个能看到邮箱地址，我也就作罢了。</p> 
<p>想来我也是有过笔友的，还是外国的。在高中时候，我就非常热衷于和外国人交流，当时借着朋友发给我的用来看黄片的免费 VPN，也是注册了推特和 Facebook ，不过我发许多次打招呼都没人理我。还记得那时候特朗普还在推特上发帖，我还关注了他，尽管当时也不懂他在搞什么。</p> 
<p>之后我找到了几个长期聊天的人，大多数是异性。有一个非洲的黑人女生，我看过她的相片，用蹩脚英语和翻译软件有一搭没一搭的聊着，到某一天就突然不回消息了，然后再也没联系到。还有一个越南妹，喜欢中国的某个小鲜肉明星，忘记是谁了，反正她当时还问我怎么下载微博。这个也就是日常聊聊，她还给我推荐了几首越南语流行歌，还不错，毕竟在这之前我只知道牙套妹。</p> 
<p>印象最深的就是一个来自波兰的女生，小我一岁吧。她喜欢画漫画，还很高产，我忘记是在哪里添加到她的，反正我给她说想用她的画做头像，她也允许了。我还跟她讨论过涂鸦和画画的区别，因为在波兰语和英语中，这都是两个词，但当时我用谷歌翻译她发的一句话，把这俩都翻译成了画画。这个倒是没有失联，不过不怎么联系了，也不知道为什么，总感觉很奇怪。当时聊的火热的时候仿佛好朋友一般，但其实不过是陌生人。现在突然联系也会很奇怪吧。我还是很感谢她，当年我读高中，恰逢疫情让我在家上网课，每天还都有早读，但我起不来，于是我半夜才睡，提前拍好早读的视频，到六点钟直接点一下发送到钉钉就行了，那段时间就是和她聊的很开心的时候，或许是在家上课太过无聊了，她也算是陪我度过一段特殊的时期吧。</p> 
<p>在之后我上了大学，学会了国际联网的技巧，但是却没有那般和外国人聊天的热情了，或许没了神秘感吧。我后来加了两个外国人微信，一个泰国的女生和一个柬埔寨的男生。这个女生和我同岁，她学的中文专业，以后或许会来中国，我和她聊天最多的话题就是她的作业题目中的中文语法问题，后来她找我问问题少了，也就不联系了。柬埔寨的男生比我小，但在我刚上大一的时候，他说他已经开始上班了，他的工作是在柬埔寨当地做汉语翻译，我和他也是汉语沟通的。</p> 
<p>基于以上这些亲身经历，我感觉我还是不要找笔友了吧，大概就会是一开始的热情寒暄到杳无音讯，现在网络这么厉害都没能找到志同道合的人，还想走捷径交友吗？</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x53BB;&#x4E2D;&#x5FC3;&#x5316;&#x793E;&#x4EA4;&#x5E73;&#x53F0;&#x5BF9;&#x6BD4;</title>
        <link>https://joomaen.sol.build/2B99AC9D-164B-4BA4-8C3A-4B81FCE31987/</link>
        <guid>https://joomaen.sol.build/2B99AC9D-164B-4BA4-8C3A-4B81FCE31987/</guid>
        <pubDate>Tue, 25 Feb 2025 12:07:53 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>我看来 Activity Pub 尽管去中心化较弱，但是用户有选择实例的自由，也可自托管，能连接到联邦宇宙。或者他们选择自己信任的管理员建立的实例，并不能说不去中心化。唯一缺点是用户迁移不便，而且@name@domain无法复用。</p> 
<p>Nostr 现在用户体验不是很好，但还在快速发展中，有许多新的提案出来，也有被废弃的，将来或许成熟之后，就是最去中心化的一个。目前已经有开发者尝试让管理员可以管理 Relay，而不是任何人都可以读写。</p> 
<p>Lens Protocal 和 Farcaster 有点类似，一个是 Polygon 另一个是以太坊，当然区块链上成本比较高，但是链下存储又失去了区块链的特点，目前保持观望，不知道将来如何发展。</p> 
<p>我之前一段时间都在使用 Nostr，我自己也托管了 nip96 的媒体托管服务以及中继器。我遇到的问题是尽管用户可以添加多个 Relay，但是在用户更换 Relay 时，之前的内容无法同步到新中继器，导致帖子有概率丢失，这是由于中继器之前没有相互通讯的原因。还有客户端体验参差不齐，总体不如 web2 传统平台。</p> 
<p>后来我转向 Activity Pub，我选择了最轻量的 GoToSocial，可是 GTS 还不成熟，目前 beta 版有一些 bug，而且我作为非专业 web 管理员，尽管只托管我自己的账号，我也不能确定它能一直运行下去，而 Mastodon 占用太多，服务器成本高。</p> 
<p>如果我不使用 GTS 了，那我的数据即使备份出来，也只是个 sqlite 而已，可读性差而且也不能导入其他平台。</p> 
<p>我最近在使用 Lens 和 Farcaster，我尽管不是 web3 狂热粉丝，但我也想提前来到未来。</p> 
<p>至于 AT Protocol ，许多人说它比 Nostr 更好，前景更好，可我目前只看见 Bluesky 自己的官方实例和客户端，自托管也不方便。</p> 
<p>似乎 AT Protocol 支持账户迁移，怪不得许多人如此看好它，那我也用起来吧，或许以后自己部署一个。</p> 
<p>尝试在 Bluesky 上发帖，这玩意竟然限制字数，不适合发长文。</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>Blog</title>
        <link>https://joomaen.sol.build/7CF1473F-3BB1-47E1-AF0E-B6E89EAC99A8/</link>
        <guid>https://joomaen.sol.build/7CF1473F-3BB1-47E1-AF0E-B6E89EAC99A8/</guid>
        <pubDate>Thu, 13 Feb 2025 19:54:08 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>this page for redirect to my main blog site.</p>
        ]]></description>
    </item>
    
    <item>
        <title>Typecho&#x5B57;&#x4F53;&#x8BBE;&#x7F6E;&#x548C;&#x52A0;&#x5165;&#x5E7F;&#x544A;</title>
        <link>https://joomaen.sol.build/0F2BCA83-D177-4D16-93F6-2F90AD5632AB/</link>
        <guid>https://joomaen.sol.build/0F2BCA83-D177-4D16-93F6-2F90AD5632AB/</guid>
        <pubDate>Thu, 13 Feb 2025 19:43:38 +0800</pubDate>
        
        
        <description><![CDATA[
            <h3>字体设置</h3> 
<p>尝试过两个Typecho插件，可以修改但不能完美使用，没法改标题的字体。<br /> <a href="https://qninq.cn/archives/zfonts.html">Typecho字体插件ZFonts已开源 - 倾城于你</a><br /> <a href="https://github.com/xxhzm/FontLibs">xxhzm/FontLibs: typecho插件FontLibs，后台可以更换字体</a></p> 
<p>因为我用的这个<a href="https://gitee.com/stsiao/millennium-style">Millennium-style主题</a>对标题部分有单独设置字体，所以只能手动修改主题代码，在主题目录新增一个<code>fonts</code>目录，里面是一个<code>fonts.css</code>以及字体文件，我使用的<code>woff2</code>格式的霞鹜文楷TC旧字形。</p> 
<p><img src="https://media.joomaen.top/2025/02/1739418482.avif" alt="截屏2025-02-13 11.23.59.avif" /></p> 
<pre><code># fonts.css

/* 自定义字体定义 */
@font-face {
font-family: 'LXGW WenKai TC';
src: url('LXGWWenKaiTC-Regular.woff2') format('woff2');
font-display: swap;
}

/* 定义 Bold 字体 */
@font-face {
font-family: 'LXGW WenKai TC';
src: url('LXGWWenKaiTC-Medium.woff2') format('woff2');
font-weight: bold;
font-style: normal;
}
</code></pre> 
<p>在<code>style.css</code>中引用这个<code>fonts.css</code>，然后编辑<code>style.css</code>，修改对应的<code>font-family</code>部分，添加你的字体名称到第一个，要单独设置标题<code>h1-h6</code>的字体和站点标题<code>logo</code>的字体，可以设为粗体(bold)。</p> 
<p><img src="https://media.joomaen.top/2025/02/1739418547.avif" alt="截屏2025-02-13 11.27.40.avif" /></p> 
<p><img src="https://media.joomaen.top/2025/02/1739418610.avif" alt="截屏2025-02-13 11.28.49.avif" /></p> 
<p><img src="https://media.joomaen.top/2025/02/1739418629.avif" alt="截屏2025-02-13 11.29.39.avif" /></p> 
<p><img src="https://media.joomaen.top/2025/02/1739418663.avif" alt="截屏2025-02-13 10.31.12.avif" /></p> 
<p>修改后，为了立即生效，在<code>header.php</code>中引用<code>style.css</code>的部分，添加<code>?v=1.2</code>，每次修改都需要变更这个代号。</p> 
<p><img src="https://media.joomaen.top/2025/02/1739418696.avif" alt="截屏2025-02-13 11.30.32.avif" /></p> 
<hr /> 
<h3>加入广告</h3> 
<p>我是用<a href="https://monetag.com">Monetag</a>的广告，这个相比Google AdSense来说不用审核，对新手比较友好，新网站也能加入。</p> 
<p>首先在Monetag官网注册登录，添加你的网站，需要进行验证，就是在网站根目录添加一个它提供的<code>sw.js</code>文件，添加后点击检测，如果不生效可能是有缓存，使用Cloudflare CDN的话建议在Cache设置中清除缓存，再检测应该就可以了。</p> 
<p><img src="https://media.joomaen.top/2025/02/1739418733.avif" alt="截屏2025-02-13 11.32.02.avif" /></p> 
<p>然后选择一个广告形式，它有提供多种广告形式，还有一个多合一的，只需一行代码就可以使用所有广告，不过实测用户体验很差。我推荐使用 In-Page-Push 这个，只是在上方显示一个推送横幅广告，没有弹窗和跳转，也可以点击关闭。</p> 
<p><img src="https://media.joomaen.top/2025/02/1739418774.avif" alt="截屏2025-02-13 11.32.37.avif" /></p> 
<p>选中 In-Page-Push 这个 Zone ，它默认是让你添加含有<code>Anti-AdBlock</code>的代码，这能增加广告收益，我没开这个，因为我希望屏蔽广告的人也能看见我的内容。如果关闭掉<code>Anti-AdBlock</code>开关，下面有一个代码。复制这串代码添加到Typecho中你使用的主题目录中的<code>header.php</code>文件，具体应该在<code>&lt;head&gt;</code>标签中的<code>&lt;meta&gt;</code>下面。</p> 
<p><img src="https://media.joomaen.top/2025/02/1739418808.avif" alt="截屏2025-02-13 11.36.57.avif" /></p> 
<p>添加后点击检测，通过了就完成了，如果检测不到尝试清除缓存。</p> 
<p>现在访问你的网站，就会有横幅广告了。每1000次不到1美元，而且iOS系统访问的话，CPM会更高。</p> 
<p><img src="https://media.joomaen.top/2025/02/1739418842.avif" alt="截屏2025-02-13 11.37.31.avif" /></p> 
<hr /> 
<h3>搜索引擎提交</h3> 
<p>安装<a href="https://github.com/typecho-fans/plugins/tree/master/Sitemap">Sitemap</a>插件，会在<code>https://yourdomain.com/sitemap.xml</code>生成一个Sitemap，将此链接提交到<a href="https://search.google.com/search-console">Google Search Console</a>，让Google搜索引擎收录你的网站。</p> 
<p>我还编写一个<code>robots.txt</code>文件，放在网站根目录，禁止搜索引擎抓取<code>/feed/</code>部分。</p> 
<pre><code># robots.txt

User-agent: *
Disallow: /feed/

Sitemap: https://www.joomaen.com/sitemap.xml
</code></pre> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x7AD9;&#x70B9;&#x5206;&#x7C7B;</title>
        <link>https://joomaen.sol.build/01283867-BA54-488E-B97E-1C6C5CB133E3/</link>
        <guid>https://joomaen.sol.build/01283867-BA54-488E-B97E-1C6C5CB133E3/</guid>
        <pubDate>Mon, 10 Feb 2025 20:59:15 +0800</pubDate>
        
        
        <description><![CDATA[
            <h3>Typecho</h3> 
<p><a href="http://www.joomaen.com">www.joomaen.com</a></p> 
<p>别名:</p> 
<p>blog.joomaen.top</p> 
<hr /> 
<h3>Planet</h3> 
<p>joomaen.sol.build<br /> joomaen.bit.site<br /> joomaen.zyg.im</p> 
<hr /> 
<h4>Planet blab</h4> 
<p>blab.joomaen.sol.build<br /> blab.joomaen.top<br /> blab.zyg.im</p> 
<hr /> 
<h3>WP blog</h3> 
<p>wpblog.joomaen.top<br /> wp.zyg.im</p> 
<hr /> 
<h3>静态博客 GitHub</h3> 
<p>chiu.joomaen.top<br /> stc.zyg.im</p> 
<hr /> 
<p>joomaen.com 被重定向到 <a href="http://www.joomaen.com">www.joomaen.com</a></p> 
<p>为了让v2ex的VXNA收录，我也将原来的主博客域名 blog.joomaen.top 重定向到了 <a href="http://www.joomaen.com">www.joomaen.com</a></p> 
<p>*.zyg.im域名都是部署在4everland上的作为备份，内容一样但不是指向同一个地方。</p>
        ]]></description>
    </item>
    
    <item>
        <title>Typecho&#x7B80;&#x5355;&#x914D;&#x7F6E;</title>
        <link>https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/</link>
        <guid>https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/</guid>
        <pubDate>Mon, 10 Feb 2025 00:47:07 +0800</pubDate>
        
        <itunes:image href="https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/%E6%88%AA%E5%B1%8F2025-02-10%2013.28.13.png" />    
        
        
        <description><![CDATA[
            <h3>记录typecho 插件</h3> 
<img width="1256" alt="截屏2025-02-10 13.45.19" src="https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/截屏2025-02-10 13.45.19.png" /> 
<p>AdsAndStats: Google analytics<br /> <a href="https://typecho.work/archives/AdsAndStats.html">https://typecho.work/archives/AdsAndStats.html</a><br /> <a href="https://github.com/flyhunterl/AdsAndStats">https://github.com/flyhunterl/AdsAndStats</a></p> 
<p>CommentNotifier: 评论邮件通知<br /> <a href="https://github.com/typecho-fans/plugins/tree/master/CommentNotifier">https://github.com/typecho-fans/plugins/tree/master/CommentNotifier</a></p> 
<p>TePostViews: 主题推荐，统计查看次数<br /> <a href="https://typecho.work/archives/TePostViews.html">https://typecho.work/archives/TePostViews.html</a></p> 
<p>Sitemap: 生成Google引索的站点地图<br /> <a href="https://github.com/typecho-fans/plugins/tree/master/Sitemap">https://github.com/typecho-fans/plugins/tree/master/Sitemap</a></p> 
<p>RunTime: 显示网站运行时间<br /> <a href="https://github.com/ponycool/typecho-plugins/tree/master/RunTime">https://github.com/ponycool/typecho-plugins/tree/master/RunTime</a></p> 
<p>PageViews: 显示网站总访问量<br /> <a href="https://github.com/ponycool/typecho-plugins/tree/master/PageViews">https://github.com/ponycool/typecho-plugins/tree/master/PageViews</a></p> 
<p>TagsList: 后台编辑文章时增加标签选择列表<br /> <a href="https://github.com/ponycool/typecho-plugins/tree/master/TagsList">https://github.com/ponycool/typecho-plugins/tree/master/TagsList</a></p> 
<hr /> 
<p>主题使用飞蚊话的千禧年主题<br /> <a href="https://www.bwsl.wang/csother/140.html">https://www.bwsl.wang/csother/140.html</a></p> 
<h3>自用修改</h3> 
<ol> 
 <li>修改了<code>header.php</code>，<code>&lt;head&gt;</code>中<strong>16</strong>行左右添加了一行代码用来显示favicon。</li> 
</ol> 
<img width="798" alt="截屏2025-02-10 13.47.01" src="https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/截屏2025-02-10 13.47.01.png" /> 
<pre><code>    &lt;link rel="shortcut icon" href="https://media.joomaen.top/favicon.ico" type="image/x-icon" /&gt;
</code></pre> 
<ol start="2"> 
 <li>在<code>footer.php</code>中的<code>&lt;footer&gt;</code>部分底部添加以下代码调用RunTime和PageViews</li> 
</ol> 
<img width="781" alt="截屏2025-02-10 12.57.49" src="https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/截屏2025-02-10 12.57.49.png" /> 
<pre><code>    &lt;?php PageViews_Plugin::showPageViews(); ?&gt;
    &lt;?php RunTime_Plugin::show(); ?&gt;
</code></pre> 
<ol start="3"> 
 <li>调整字体大小<br /> 在<code>style.css</code>的<strong>17</strong>行的<code>font-size</code>设为<code>92.5%</code>，这个是电脑端文字大小；<strong>435</strong>行调整手机端文字大小同理:</li> 
</ol> 
<img width="760" alt="截屏2025-02-10 13.28.13" src="https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/截屏2025-02-10 13.28.13.png" /> 
<img width="286" alt="截屏2025-02-10 13.30.48" src="https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/截屏2025-02-10 13.30.48.png" /> 
<pre><code># 17行左右
body {
  background-color: #FFF;
  color: #444;
  /*font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;*/
  font-family: "Droid Serif", Georgia, "Times New Roman", "PingFang SC", "Hiragino Sans GB", "Source Han Sans CN", "WenQuanYi Micro Hei","Microsoft Yahei", serif;
  font-size: 92.5%;
}

# 435行左右
@media (max-width: 767px) {
  body {
    font-size: 92.5%;
  }
  #nav-menu a {
    float: none;
    display: inline-block;
    margin: 0 -2px;
  }
}
</code></pre> 
<p><strong>还有一种更简单粗暴的方法就是注释掉这两个地方的<code>font-size</code>设置，也会变得比较大</strong></p> 
<p><strong>为了立刻生效，可以在<code>header.php</code>中将引用<code>style.css</code>代码后面加上<code>?v=1.1</code>，每次修改CSS文件后换一个代号即可直接刷新。</strong> 像这样:</p> 
<img width="750" alt="截屏2025-02-10 13.27.51" src="https://joomaen.sol.build/0A20661A-9E87-48D2-8136-93C91A7488DD/截屏2025-02-10 13.27.51.png" /> 
<pre><code>    &lt;link rel="stylesheet" href="&lt;?php $this-&gt;options-&gt;themeUrl('style.css?v=1.1'); ?&gt;"&gt;
</code></pre> 
<ol start="4"> 
 <li>主题配置<br /> 我关掉了 <code>首页展示最新文章</code> 和 <code>文章归档</code> 选项，我有一个专门的归档页。</li> 
</ol> 
<p>这是在 <code>设置外观-联系我</code> 中填入，<a href="https://www.bwsl.wang/csother/140.html">主题页面</a>有详细解释。</p> 
<pre><code>憹人懌夢,https://blog.joomaen.top,,憹人懌夢
RSS,/feed,fa fa-rss,RSS
</code></pre> 
<hr /> 
<h3>标签页面</h3> 
<p>这是我让AI结合网上的模板写的一个页面模板，新建一个页面作为标签页，应用这个模板就行。<br /> 下载php文件放在主题根目录即可。<br /> <a href="https://media.joomaen.top/Typecho/tags.php">https://media.joomaen.top/Typecho/tags.php</a></p> 
<hr /> 
<h3>归档页面</h3> 
<p>也是AI生成，和标签页面外观一致。<br /> 不过原主题中已有<code>archive.php</code>文件了，所以我命名为<code>archive-zyg.php</code>。<br /> <a href="https://media.joomaen.top/Typecho/archive-zyg.php">https://media.joomaen.top/Typecho/archive-zyg.php</a></p>
        ]]></description>
    </item>
    
    <item>
        <title>GoToSocial &#x642D;&#x5EFA;&#x6B65;&#x9AA4;</title>
        <link>https://joomaen.sol.build/3A1A2845-66A3-46F9-9FCD-808A218996D0/</link>
        <guid>https://joomaen.sol.build/3A1A2845-66A3-46F9-9FCD-808A218996D0/</guid>
        <pubDate>Sat, 08 Feb 2025 18:56:50 +0800</pubDate>
        
        <itunes:image href="https://joomaen.sol.build/3A1A2845-66A3-46F9-9FCD-808A218996D0/%E6%88%AA%E5%B1%8F2025-02-08%2019.02.56.png" />    
        
        
        <description><![CDATA[
            <img width="1486" alt="截屏2025-02-08 19.02.56" src="https://joomaen.sol.build/3A1A2845-66A3-46F9-9FCD-808A218996D0/截屏2025-02-08 19.02.56.png" /> 
<p><a href="https://gotosocial.org/">GoToSocial</a> 是一个轻量级、资源占用低的 ActivityPub 社交网络服务器，兼容 Mastodon，可用于自建去中心化社交平台。</p> 
<h3>背景</h3> 
<p>我之前自建过一次，不过使用较少，现在给它换了一个短的域名，直接用二级域名<code>zyg.im</code>，(之前是一个子域<code>gts.joomaen.top</code>)。</p> 
<p>按照ChatGPT的回答，GoToSocial是可以换域名的，不过我看官方文档的描述好像不行，反正我是直接重新搞了一个，这次想一直用下去，请关注我: <code>@i@zyg.im</code></p> 
<h3>前期准备</h3> 
<ul> 
 <li>一个VPS并且安装Docker和Docker Compose</li> 
 <li>一个域名(子域也可以)</li> 
 <li>一个反向代理服务器(Nginx、Caddy等，我用的是1Panel上的OpenResty)</li> 
</ul> 
<p>我是使用Docker Compose来搭建的，这样更加灵活，随便找一个目录就行，挂载目录就是在它的子目录中，方便迁移和备份。</p> 
<h3>搭建步骤</h3> 
<ol> 
 <li>在VPS上你喜欢的地方新建一个文件夹作为工作目录，用来存放docker-compose 文件，以及一个目录来存储 GoToSocial 的数据。我是在<code>/opt</code>下，进入这个目录：</li> 
</ol> 
<pre><code>mkdir -p /opt/gotosocial/data

cd /opt/gotosocial
</code></pre> 
<ol start="2"> 
 <li>使用<code>wget</code>获取最新的 <code>docker-compose.yaml</code></li> 
</ol> 
<pre><code>wget https://raw.githubusercontent.com/superseriousbusiness/gotosocial/main/example/docker-compose/docker-compose.yaml
</code></pre> 
<ol start="3"> 
 <li>按需修改<code>docker-compose.yaml</code>，用你习惯的编辑器打开</li> 
</ol> 
<pre><code>vim docker-compose.yaml
</code></pre> 
<pre><code>1. 更改 GTS_HOST 环境变量为你运行 GoToSocial 的域名。
2. 取消时区注释，改为 TZ: Asia/Shanghai
3. 用户，默认情况下，Docker 化的 GoToSocial 以 Linux 用户/组 1000:1000 运行，但我测试不行，于是我改成了root用户的 user: 0:0
4. 端口方面只保留 - "8080:8080" ，我改成了8280，因为我使用反代，不用在这里配置LetsEncrypt证书。
</code></pre> 
<ol start="4"> 
 <li>这是我的<code>docker-compose.yml</code></li> 
</ol> 
<pre><code>version: "3.3"

services:
  gotosocial:
    image: superseriousbusiness/gotosocial:latest
    container_name: gotosocial
    user: 0:0
    networks:
      - gotosocial
    environment:
      # Change this to your actual host value.
      GTS_HOST: zyg.im
      GTS_DB_TYPE: sqlite
      # Path in the GtS Docker container where
      # the sqlite.db file will be stored.
      GTS_DB_ADDRESS: /gotosocial/storage/sqlite.db
      # Change this to true if you're not running
      # GoToSocial behind a reverse proxy.
      GTS_LETSENCRYPT_ENABLED: "false"
      # Set your email address here if you
      # want to receive letsencrypt notices.
      GTS_LETSENCRYPT_EMAIL_ADDRESS: ""
      # Path in the GtS Docker container where the
      # Wazero compilation cache will be stored.
      GTS_WAZERO_COMPILATION_CACHE: /gotosocial/.cache
      ## For reverse proxy setups:
      GTS_TRUSTED_PROXIES: "172.26.0.1/16"
      ## Set the timezone of your server:
      TZ: Asia/Shanghai
    ports:
      - "8280:8080"
      ## For letsencrypt:
      #- "80:80"
      ## For reverse proxy setups:
      #- "127.0.0.1:8280:8080"
    volumes:
      # Your data volume, for your
      # sqlite.db file and media files.
      - ./data:/gotosocial/storage
      # OPTIONAL: To mount volume for the WAZERO
      # compilation cache, for speedier restart
      # times, uncomment the below line:
      - ./.cache:/gotosocial/.cache
    restart: "always"

networks:
  gotosocial:
    ipam:
      driver: default
</code></pre> 
<ol start="5"> 
 <li>启动GoToSocial</li> 
</ol> 
<pre><code>docker-compose up -d
</code></pre> 
<ol start="6"> 
 <li>创建用户</li> 
</ol> 
<pre><code># 将以下命令改为自己的用户名、邮箱、强密码

docker exec -it gotosocial /gotosocial/gotosocial admin account create --username YOUR_USERNAME --email YOUR@EMAIL.COM --password 'SOME_VERY_GOOD_PASSWD'

# 以下命令将用户设为管理员

docker exec -it gotosocial /gotosocial/gotosocial admin account promote --username YOUR_USERNAME
</code></pre> 
<ol start="7"> 
 <li>反代端口，配置证书。我是用到1Panel，可以很方便的配置，你也可以使用<a href="https://github.com/acmesh-official/acme.sh">acme.sh</a>。如果使用1Panel的OpenResty，需要把<code>HTTPS</code>中的<code>HTTP选项</code>设为<code>HTTP可直接访问</code>，如果是默认的<code>访问HTTP自动跳转到HTTPS</code>则会遇到循环重定向的问题。</li> 
 <li>现在可以访问你的域名，能看到GoToSocial的界面就说明搭建成功了。</li> 
</ol> 
<h3>使用</h3> 
<p>GoToSocial默认没有Web界面，只提供后端服务，这也是为什么它相比Mastodon占用资源更小。GoToSocial可以兼容Mastodon的客户端，我习惯用网页版，推荐<a href="https://elk.zone/">鹿鸣 Elk</a>输入你的域名，然后用邮箱和密码授权登录即可。<br /> 手机端可以使用Mastodon官方以及第三方程序。</p> 
<h3>小结</h3> 
<p>自建一个可以联通ActivityPub的程序很有趣，也是很有必要的尝试，数据完全在自己手中。我之前一直以为ActivityPub并不是完全去中心化，因为它是由多个实例构成的联邦，兼容的程序有Mastodon、Pleroma、Misskey等，就连最低占用的Pleroma都不能让普通人轻松搭建，那大家想用就只能去其他人的服务器，大型实例无疑又是另一个中心化的微博，小型实例又有随时关闭的风险，毕竟不是付费使用。有一个自托管的实例就显得很重要了，当然更极端一些，VPS商家也可能倒闭，最理想的情况是每人在自己家的电脑上运行属于自己的实例，这样数据全在本地。倒是可以通过Cloudflare Tunnel来实现随处访问。</p> 
<p>我最近也在了解IPFS等去中心化存储，并将我的博客放在IPFS上，多重备份，多个域名，可这个只能放静态网站。</p> 
<p>自建GoToSocial有一个问题，就是只有自己一个用户，无法直接发现其他用户，只能手动搜索之后，等待服务器和其他用户的服务器连接并获取到内容，前期得自己找人关注，后面顺着关注列表可以再关注其他人的关注，就多起来了。</p> 
<p>之前一段时间我在使用Nostr，可我发现它也有一些问题，我在查看我发过的帖子时，有许多找不到了，我想是因为我前期有频繁换中继器，导致帖子被存在不同的Relay上，有点Relay我现在没有添加，所以获取不到记录。我后来也有自己搭建一个Nostr Relay，这个问题就好了很多。</p> 
<p>我想将这个GoToSocial实例作为自己发帖的地方，Nostr就和网友们聊天好了，这样用个几年，回去翻看也会是很有趣的事情。</p> 
<hr /> 
<p>参考：</p> 
<ol> 
 <li><a href="https://docs.gotosocial.org/zh-cn/latest/getting_started/installation/container/">容器 - GoToSocial 文档</a></li> 
 <li><a href="https://docs.gotosocial.org/zh-cn/latest/getting_started/user_creation/">创建用户 - GoToSocial 文档</a></li> 
 <li><a href="https://notes.51sec.org/article/9e13a554-bb32-4b90-b420-aebfafa369a8">自建 Gotosocial | 一个 ActivityPub 联邦社交网络程序 - 独立世界 | Effective Notes</a></li> 
</ol> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>Planet&#x81EA;&#x5B9A;&#x4E49;CSS&#x6362;&#x5B57;&#x4F53;</title>
        <link>https://joomaen.sol.build/D26B8C47-10AC-446A-A6B8-09DF6E520E11/</link>
        <guid>https://joomaen.sol.build/D26B8C47-10AC-446A-A6B8-09DF6E520E11/</guid>
        <pubDate>Wed, 05 Feb 2025 13:37:20 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>在head标签里</p> 
<pre><code>&lt;link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/lxgw-wenkai-tc-webfont@1.0.0/style.css" /&gt;
&lt;style&gt;
  body {    
    /* TC version */
    font-family: "LXGW WenKai TC", sans-serif;
  }
&lt;/style&gt;
</code></pre> 
<hr /> 
<p><strong>这样标题无法完全适配</strong><br /> 或许是因为在线获取到css中的字体不全？</p> 
<p>我是将<a href="https://github.com/lxgw/LxgwWenkaiTC">LXGW Wenkai TC</a>下载到本地，复制到<code>/Users/joomaen/Library/Fonts</code>路径<br /> 然后只在Planet的自定义代码中写入<code>&lt;style&gt;</code>部分即可。</p> 
<pre><code>&lt;style&gt;
  body {    
    /* TC version */
    font-family: "LXGW WenKai TC", sans-serif;
  }
&lt;/style&gt;
</code></pre> 
<hr /> 
<p><em>上述方法还是有问题，只能在本地显示，浏览器上无法正常显示。忘记考虑到这一点，毕竟没有把字体文件上传。</em></p> 
<p>于是我在AI的帮助下，自建了一个GitHub仓库用来存放字体，我用的是LXGW Wenkai TC 霞鹜文楷旧字形版。</p> 
<ol> 
 <li>将字体文件上传到仓库中<code>fonts</code>文件夹</li> 
 <li>在仓库根目录新建一个<code>fonts.css</code>文件，内容如下：</li> 
</ol> 
<pre><code>/* 定义 Regular 字体 */
@font-face {
    font-family: 'LXGW WenKai TC';
    src: url('https://raw.githubusercontent.com/urkbio/my-fonts/main/fonts/LXGWWenKaiMonoTC-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* 定义 Bold 字体 */
@font-face {
    font-family: 'LXGW WenKai TC';
    src: url('https://raw.githubusercontent.com/urkbio/my-fonts/main/fonts/LXGWWenKaiMonoTC-Medium.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}
</code></pre> 
<p>我这里只用了一种，你可以设置多种粗细。</p> 
<ol start="3"> 
 <li>在Planet自定义CSS中引用，添加到<code>&lt;head&gt;</code>,代码如下：</li> 
</ol> 
<pre><code>&lt;link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/urkbio/my-fonts@latest/fonts.css" /&gt;
&lt;style&gt;
  body {    
    /* TC version */
    font-family: "LXGW WenKai TC", sans-serif;
  }
&lt;/style&gt;
</code></pre> 
<p>在使用jsDelivr时用<code>@latest</code>以获取最新内容！</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5C06;Telegram&#x9891;&#x9053;&#x663E;&#x793A;&#x4E3A;&#x4E00;&#x4E2A;&#x7F51;&#x9875;</title>
        <link>https://joomaen.sol.build/C37B2CD2-E12C-4956-BF85-6260F07164EE/</link>
        <guid>https://joomaen.sol.build/C37B2CD2-E12C-4956-BF85-6260F07164EE/</guid>
        <pubDate>Tue, 04 Feb 2025 16:30:29 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>我目前在使用Planet作为博客，它可以管理多个站点，于是我又建了一个作为日常便签使用。唯一不足是Planet iOS端只能通过API连接到电脑上进行发布，所以即便能通过手机发布内容，电脑还得一直开着。</p> 
<p>macOS有一个功能“唤醒以供网络访问”，就是在休眠情况下也能使用网络唤醒。可我实践中发现，这样只是有概率能连上，而把电脑设为不休眠就可以稳定连接。我使用Cloudflare Tunnel以实现外部访问，但这样还是有点折腾。</p> 
<p>我前几天就发现了一个将Telegram频道作为网页发布的项目，当我昨天创建好频道时却找不到了，忘记是在哪里看见的了。 而且我还发现，和xLog一起的有一个xSync服务，可以将一些平台的内容同步到crossbell链上，我尝试了即刻，可是认证过程中需要改个性签名，但是即刻不让改。我就绑定了我的Telegram频道，这需要将频道设为公开。但是我绑定之后始终无法同步上去，手动和自动都不行，我也不知道是什么原因。</p> 
<p>于是我让ChatGPT给我建议，它说可以用RSShub+rss2json来实现。我让它写了一个HTML，能用但是不好用，首先RSShub官方实例缓存时间是1小时，也就是1小时之后才能同步新的内容，而且rss2json有一个跨域请求问题。最终我让AI改了几次，去掉了rss2json，而是直接读取RSS内容。为了修改缓存时间，我自己搭建了一个自用的RSShub，缓存时间设为300秒。这样就完美了。最终的代码在这里: <a href="https://github.com/urkbio/rss2web">https://github.com/urkbio/rss2web</a></p> 
<p>我本来想直接托管到GitHub Pages上，但是发现Planet有一个发布文件夹功能，就尝试了一下，果然可以用。这样的话，就能保证原始版本在本地电脑上，修改也方便。</p> 
<p>我又想起了4everland，我将生成的IPNS添加到4ever部署，并绑定域名，现在它可以被访问了: <a href="https://chnl.zyg.im">https://chnl.zyg.im</a> 。由于这是每次访问自动从RSS源拿数据，HTML代码也不会变，所以一旦部署好就能用了，不会被4ever的更新延迟影响。</p> 
<p>既然用了IPFS，那也是可以绑定web3域名的，我将我的sol域名添加了一个子域，并将<code>ipns://</code> 内容添加到record，就可以实现用公共网关 <code>sol.build</code> 访问了。<br /> <a href="https://chnl.joomaen.sol.build">https://chnl.joomaen.sol.build</a></p> 
<p>公共网关默认不能解析子域，我当时在v2ex评论询问过，Livid大佬帮我手动添加了。</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>Blab</title>
        <link>https://joomaen.sol.build/1C2111D8-F73B-4B79-970B-1A31879FD9E5/</link>
        <guid>https://joomaen.sol.build/1C2111D8-F73B-4B79-970B-1A31879FD9E5/</guid>
        <pubDate>Tue, 04 Feb 2025 14:11:38 +0800</pubDate>
        
        
        <description><![CDATA[
            
        ]]></description>
    </item>
    
    <item>
        <title>&#x4ECE;WordPress&#x8FC1;&#x79FB;&#x5230;Planet</title>
        <link>https://joomaen.sol.build/609A3854-CBAC-48A8-A097-DF4F49599E12/</link>
        <guid>https://joomaen.sol.build/609A3854-CBAC-48A8-A097-DF4F49599E12/</guid>
        <pubDate>Tue, 04 Feb 2025 11:38:18 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>多亏了4everland让我把之前的WordPress导出静态文件并托管在上面，现在我把这个域名 <code>blog.joomaen.top</code> 给了Planet博客。而VPS上的WordPress就可以删掉了。</p> 
<p>导出为静态只是搜索和评论用不了，没啥影响。</p> 
<p>现在这个Planet博客我配置了多种访问方式，除了可以用上述域名之外，还有一个 <code>blog.zyg.im</code> ，也可以通过web3域名搭配公共网关访问，抑或是直接用IPNS访问。这些可以在我的<a href="https://blog.joomaen.top/about/">关于页面</a>查看。</p> 
<p>我还把 <code>/feed</code> 重定向到了 <code>/rss.xml</code> ，这样VXNA还是能收录到我的内容。</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5DEE;&#x70B9;&#x88AB;&#x9A97;</title>
        <link>https://joomaen.sol.build/39E9A744-F00C-4D89-B361-8CC34BECCD98/</link>
        <guid>https://joomaen.sol.build/39E9A744-F00C-4D89-B361-8CC34BECCD98/</guid>
        <pubDate>Wed, 29 Jan 2025 18:51:32 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>今天准备购买<code>.sol</code>域名的时候，一直显示网络问题无法购买。</p> 
<p>我到官方tg群中询问，客服说可以私聊，刚好有个头像一样的人主动私聊我，要了我到钱包地址，还说内部正在解决，要我点一个网站进去修复账户，我差点就点进去了。这时候群里的管理员又在群里叫我把出问题的截图给他，我才发现不对劲，点开头像一看，私聊的这个人果真不是群中的管理员。还好我看不懂英文，没有在他的网站上操作。不过我给了他钱包地址，不知道会不会有什么事情。</p> 
<p>后来私聊真的管理员，说是因为价格波动，我到SOL不够，再充了点，就买好了。</p> 
<p>他妈的从交易所提到钱包真的是贵，我还提了两次，想想都难受。</p> 
<p>虽然我钱包里没几块钱，但还是感到恶心，诈骗竟离我如此近。</p> 
<p>教训是：</p> 
<ol> 
 <li>警惕主动私聊你的人，特别是在tg，过了几小时后他把聊天记录删掉了，痕迹都没有。</li> 
 <li>更不要点他发的奇怪链接，从聊天界面看去它的链接好像是<code>sns.sol</code>这种的官方链接，但实际上点进去就是其他的了。</li> 
</ol> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>IPFS&#x5B58;&#x50A8;&#x670D;&#x52A1;</title>
        <link>https://joomaen.sol.build/1A6F8434-C822-41DA-BCBE-91633E433B83/</link>
        <guid>https://joomaen.sol.build/1A6F8434-C822-41DA-BCBE-91633E433B83/</guid>
        <pubDate>Wed, 29 Jan 2025 18:28:01 +0800</pubDate>
        
        
        <description><![CDATA[
            <p><a href="https://dashboard.4everland.org/">4EVERLAND</a> 5 GB of free storage.<br /> <a href="https://web3.storage/">web3.storage</a> 5 GB of free storage.<br /> <a href="https://filebase.com/">filebase</a> 5 GB of free storage.</p> 
<hr /> 
<p>注册后即可使用免费服务，也有付费版提供更多存储空间。</p> 
<p>会生成<code>CID</code> 和分享链接，不同服务的分享链接不同，一般都是使用它自己的公共网关提供服务。</p> 
<p>4EVERLAND 提供多种服务，不过我尝试上传一个2.23MB的MP3音乐文件，上传有点慢，不知道是我自己网络问题还是它的问题。</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>AI&#x4E8E;&#x8001;&#x7237;&#x5B50;(&#x56FE;&#x7247;&#x4E0A;&#x4F20;&#x6D4B;&#x8BD5;)</title>
        <link>https://joomaen.sol.build/C9E120DC-05EF-4304-BF07-8F9E04FA941C/</link>
        <guid>https://joomaen.sol.build/C9E120DC-05EF-4304-BF07-8F9E04FA941C/</guid>
        <pubDate>Wed, 29 Jan 2025 11:02:42 +0800</pubDate>
        
        <itunes:image href="https://joomaen.sol.build/C9E120DC-05EF-4304-BF07-8F9E04FA941C/%E4%BA%8E%E8%80%81%E7%88%B7%E5%AD%90.jpg" />    
        
        
        <description><![CDATA[
            <img width="1024" alt="于老爷子" src="https://joomaen.sol.build/C9E120DC-05EF-4304-BF07-8F9E04FA941C/于老爷子.jpg" /> 
<img width="1024" alt="于老爷子1" src="https://joomaen.sol.build/C9E120DC-05EF-4304-BF07-8F9E04FA941C/于老爷子1.jpg" /> 
<img width="1024" alt="于老爷子2" src="https://joomaen.sol.build/C9E120DC-05EF-4304-BF07-8F9E04FA941C/于老爷子2.jpg" /> 
<img width="1024" alt="于老爷子3" src="https://joomaen.sol.build/C9E120DC-05EF-4304-BF07-8F9E04FA941C/于老爷子3.jpg" />
        ]]></description>
    </item>
    
    <item>
        <title>Planet&#x535A;&#x5BA2;&#x8BBE;&#x7F6E;</title>
        <link>https://joomaen.sol.build/134E0FC6-0B2C-48BC-B2B6-8037E7C4D07A/</link>
        <guid>https://joomaen.sol.build/134E0FC6-0B2C-48BC-B2B6-8037E7C4D07A/</guid>
        <pubDate>Tue, 28 Jan 2025 22:31:42 +0800</pubDate>
        
        
        <description><![CDATA[
            <h2>添加评论功能</h2> 
<p>使用<a href="https://giscus.app/">Giscus</a>为Planet添加评论功能。</p> 
<p>按要求建立公开仓库，安装 Giscus App，将仓库名 填入，之后会生成一个下面这种代码，将它添加到文章末尾即可，Planet 可以自动渲染出来。</p> 
<pre><code># 不要复制我的，仅作参考，Giscus网页会生成自己的
&lt;script src="https://giscus.app/client.js"
        data-repo="用户名/仓库名"
        data-repo-id="R_kgDONv0EQg"
        data-category="Announcements"
        data-category-id="DIC_kwDONv0EQs4CmW3b"
        data-mapping="pathname"
        data-strict="0"
        data-reactions-enabled="1"
        data-emit-metadata="0"
        data-input-position="bottom"
        data-theme="preferred_color_scheme"
        data-lang="zh-CN"
        crossorigin="anonymous"
        async&gt;
&lt;/script&gt;
</code></pre> 
<hr /> 
<h2>修改模板代码添加Google Analytics分析</h2> 
<p><a href="https://analytics.google.com">Google Analytics</a> 用 Google 账号登录建立账户，再建立一个资源，获取 Google Analytics 统计代码，他会提供一串代码。类似这样：</p> 
<pre><code># 参考
&lt;!-- Google tag (gtag.js) --&gt; 
&lt;script async src="https://www.googletagmanager.com/gtag/js?id=G-代码"&gt;&lt;/script&gt; 
&lt;script&gt; 
  window.dataLayer = window.dataLayer || []; 
  function gtag(){dataLayer.push(arguments);} 
  gtag('js', new Date()); 
  
  gtag('config', 'G-代码'); 
&lt;/script&gt;
</code></pre> 
<p>在 Planet 中打开左上菜单中的 工具-模板浏览器，选择你正在使用的模板，在文件夹中打开即可查看HTML模板文件。编辑模板文件中的<code>templates/base.html</code>，用 VScode 或其他工具，将获取到的统计代码插入到<code>&lt;head&gt;</code>下方，点击 工具-重新载入网站，重新生成静态页面即可。</p> 
<p>在配置Google Analytics时需要有对应域名，所以使用公共网关或者本地IPFS节点访问的话似乎无法被GA追踪到。我的<a href="https://joomaen.bit.site/privacy/">Privacy</a>页面也有介绍。</p> 
<hr /> 
<h2>域名</h2> 
<p>注册一个区块链域名，<code>.eth</code> <code>.bit</code> <code>.sol</code> 都可以绑定IPNS，然后通过相应的公网访问。</p> 
<p>我目前有一个<code>.bit</code>域名，在后台绑定IPNS后，可以通过<code>.bit.site</code>这个公共节点访问，它为<code>.bit</code>域名提供免费的IPFS PIN服务，绑定后它会存储Planet中的静态内容，这样也就不怕电脑关闭就无法访问了。</p> 
<p>目前比较推荐<code>.sol</code>域名，<code>.eth</code>太贵了，<code>.bit</code>不太贵，不过需要按年付费，而<code>.sol</code>是永久的，一次付费即可，基于Solana链，我正准备搞一个。</p> 
<hr /> 
<h2>IPFS托管</h2> 
<p>我还使用<a href="https://dashboard.4everland.org/">4EVERLAND</a>来对IPFS文件进行托管，进入官网连接加密钱包，之后需存入1美元等值的对应加密货币，就可以使用它提供的服务。可以托管IPNS、IPFS、连接GitHub仓库等等。还提供S3对象存储。当然我只使用了IPNS托管。从Planet中复制出IPNS，在4EVERLAND中新建Hosting项目，选择IPNS并填入。它给提供2个子域名来访问，你也可以绑定自己域名。记得在设定中开启自动重新部署IPNS，这样它每天18:00会自动进行同步，如果需要即时同步可以手动操作。我只是把它作为一个PIN服务和作为备份，所以就让它自动同步好了。<br /> <img src="https://media.joomaen.top/2025/01/1738074288.png" alt="截屏2025-01-28 22.24.31.png" /></p> 
<hr /> 
<h3>小结</h3> 
<p>这一番操作下来，使得Planet这个静态IPFS博客更加可靠和方便访问，也有了评论支持。当然RSS也是支持的，任意一个网关或域名访问<code>/rss.xml</code>即可订阅。</p> 
<p>这样看来，似乎WordPress也不是很必要了。</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>Privacy</title>
        <link>https://joomaen.sol.build/3B4E9BCD-616D-4AED-86EC-A09AD7ED2D00/</link>
        <guid>https://joomaen.sol.build/3B4E9BCD-616D-4AED-86EC-A09AD7ED2D00/</guid>
        <pubDate>Mon, 27 Jan 2025 22:13:50 +0800</pubDate>
        
        
        <description><![CDATA[
            <h1>隐私政策</h1> 
<p>欢迎访问我的博客！在这里，我十分重视您的隐私，并希望透明地说明网站的相关数据收集方式。以下是关于 Umami 分析以及如何避免被追踪的详细说明。</p> 
<hr /> 
<h2>数据收集与分析</h2> 
<p>本博客启用了自托管的 Umami，用于统计网站的访问量和流量来源，以便更好地了解用户的阅读习惯，优化博客内容。</p> 
<h3>数据追踪说明</h3> 
<ul> 
 <li><strong>收集数据的范围</strong>：包括访客的IP归属国家、访问页面的数量、页面停留时间、设备类型、浏览器信息等。</li> 
 <li><strong>数据的用途</strong>：这些数据仅用于博客内容优化，不会用于广告或与第三方共享。</li> 
</ul> 
<hr /> 
<h2>如何避免被追踪？</h2> 
<p>您可以使用以下浏览器扩展程序来禁止跟踪。</p> 
<ol> 
 <li>Privacy Badger</li> 
 <li>Ghostery</li> 
 <li>uBlock Origin</li> 
</ol> 
<h2>域名解析与内容保障</h2> 
<p>为了保障内容的持续可访问性，我已将博客内容备份到了<code>4everland</code>: <a href="https://joomaen.sol.vg">https://joomaen.sol.vg</a> ，您都可以通过该域名访问备份的博客内容，可能更新不够及时。</p> 
<hr /> 
<h2>数据透明性</h2> 
<p>为了保护您的隐私，我不会主动收集任何个人身份信息。Umami 仅统计匿名化数据，不包含您的真实身份信息。</p> 
<p>如果您有任何疑问，或者希望进一步了解隐私相关内容，可以随时通过博客上的留言功能与我联系。</p> 
<hr /> 
<p>感谢您的理解与支持！</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x8BC8;&#x9A97;&#x90AE;&#x4EF6;</title>
        <link>https://joomaen.sol.build/64CE36DD-326E-4571-8D86-A71AA4047439/</link>
        <guid>https://joomaen.sol.build/64CE36DD-326E-4571-8D86-A71AA4047439/</guid>
        <pubDate>Sun, 26 Jan 2025 19:43:19 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>前几天将我的旧笔记本给了妹妹，也帮她注册了一个 Microsoft 账号，她平时也不用邮箱，我就让她新创建了一个 outlook 邮箱作为微软账户。</p> 
<p>今天下午查看邮箱验证码时偶然发现垃圾邮件中有一封邮件，是很长的英文。我就复制到翻译软件，它是说你的账户被黑客攻击，说他已经完全控制了我的设备几个月，有敏感的视频，如果不给他 48 小时内发一千多的某加密货币的话，他会公布到网上。</p> 
<p>但我的电脑在给妹妹时重装了下系统，而且邮箱也是几天前才创建的，怎么可能被他监控了几个月？而且我登录微软账户页面查看登录日志已经安全相关，没有任何异常。这时我已经认定这就是一个诈骗邮件，但很好奇他怎么做到用自己邮箱地址发给自己（看起来是这样）。</p> 
<p>我将邮件内容复制给 deepseek，告诉他我的困惑，他说这是一种伪装技术，通过邮件服务的漏洞来伪装发件人邮箱地址。我问怎么查看真实的发件信息，它说到 outlook 页面查看邮件源，我将很长串的邮件源复制给它，AI 就给我解释了它的真实发信 IP 地址，并说此 IP 在垃圾邮件库中就有，这也是为什么 outlook 会默认拦截掉这封邮件。</p> 
<p>附上原邮件</p> 
<hr /> 
<p>Hello pervert, I've sent this messаge from your Microsoft аccount.</p> 
<p>Wv4a3XVueI8Itd7H du6HuF327EqiPVE</p> 
<p>I wаnt to inform you аbout а very bаd situаtion for you. However, you cаn benefit from it, if you will аct wisеly.</p> 
<p>J6aZ4l52p5H1tDan 9w3Cod5vaK3M6Ko</p> 
<p>Hаve you heаrd of Pegаsus? This is а spywаre progrаm thаt instаlls on computers аnd smаrtphones аnd аllows hаckers to monitor the аctivity of device owners. It provides аccess to your webcаm, messengers, emаils, cаll records, etc. It works well on Android, iOS, mаcOS аnd Windows. I guess, you аlreаdy figured out where I’m getting аt.</p> 
<p>04j0qrmF2B8w3lP3 N6qezLMBTk1aU2xP</p> 
<p>It’s been а few months since I instаlled it on аll your dеviсеs becаuse you were not quite choosy аbout whаt links to click on the intеrnеt. During this period, I’ve leаrned аbout аll аspects of your privаte life, but оnе is of speciаl significаnce to me.</p> 
<p>cWWF73XA06Px323 yymgA4oIBA7W90A</p> 
<p>I’ve recorded mаny videos of you jerking off to highly controversiаl роrn videos. Given thаt the “questionаble” genre is аlmost аlwаys the sаme, I cаn conclude thаt you hаve sick реrvеrsiоn.</p> 
<p>Hq1WwZksif9Dv98 1VTol9cnrhsI27c8<br /> I doubt you’d wаnt your friends, fаmily аnd co-workers to know аbout it. However, I cаn do it in а few clicks.</p> 
<p>DeUu4DEi5YO2PoBb ekX4Ys7qFh3pr6fr</p> 
<p>Every number in your contаct Iist will suddenly receive these vidеоs – on WhаtsApp, on Telegrаm, on Instаgrаm, on Fаcebook, on emаil – everywhere. It is going to be а tsunаmi thаt will sweep аwаy everything in its pаth, аnd first of аll, your fоrmеr life.</p> 
<p>rS5cx4VsCw7g8PEx 8rMJd78cyDx8Wtmu<br /> Don’t think of yourself аs аn innocent victim. No one knows where your реrvеrsiоn might leаd in the future, so consider this а kind of deserved рunishmеnt to stop you.</p> 
<p>r00FiTBjNde0ySE 4rXi4sdR3z436L3</p> 
<p>I’m some kind of God who sees everything. However, don’t pаnic. As we know, God is merciful аnd forgiving,  аnd so do I. But my mеrсy is not free.</p> 
<p>bWZuYMmWWVj3cY0 NTR2NdAiH0vw7W7</p> 
<p>Trаnsfer 1550$ to my Litecoin (LTC) wаllet: ltc1qsymzadpe63se7vuylz4pgltw3uef0rzclmhngh</p> 
<p>JlxuqSsVDrtbvuW Z3udWpc8G356m8BW</p> 
<p>Once I receive confirmаtion of the trаnsаction, I will реrmаnently delete аll videos compromising you, uninstаll Pegаsus from аll of your devices, аnd disаppeаr from your life. You cаn be sure – my benefit is only money. Otherwise, I wouldn’t be writing to you, but destroy your life without а word in а second.</p> 
<p>ijX7dJ1V5sm3gyJ F0DgH0ue0w82KkV</p> 
<p>I’ll be notified when you open my emаil, аnd from thаt moment you hаve exаctly 48 hours to send the money. If cryptocurrencies аre unchаrtered wаters for you, don’t worry, it’s very simple. Just google "crypto exchange" or "buy Litecoin" аnd then it will be no hаrder thаn buying some useless stuff on Amаzon.</p> 
<p>RtKceMNdr0MLO5w7 evy2Wbw4mCTyNi2</p> 
<p>I strongly wаrn you аgаinst the following:&gt;* Do not reply to this emаil. I've sent it from your Microsoft аccount.</p> 
<ul> 
 <li> <p>Do not contаct the police. I hаve аccess to аll your dеviсеs, аnd аs soon аs I find out you rаn to the cops, videos will be published.</p> </li> 
 <li> <p>Don’t try to reset or destroy your dеviсеs. As I mentioned аbove: I’m monitoring аll your аctivity, so you either аgree to my terms or the vidеоs аre рublished.</p> </li> 
</ul> 
<p>sDUW5J81P6aNocj sM8dCWZwP2Jrgn0B</p> 
<p>Also, don’t forget thаt cryptocurrencies аre аnonymous, so it’s impossible to identify me using the provided аddrеss.</p> 
<p>YbRxFeiJ22XyTN0 h1wSKgKFTdt7hm7</p> 
<p>Good luck, my perverted friend. I hope this is the lаst time we heаr from eаch other.</p> 
<p>And some friendly аdvice: from now on, don’t be so cаreless аbout your online security.</p> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x535A;&#x5BA2;+1&#xFF0C;&#x5C1D;&#x8BD5; xlog</title>
        <link>https://joomaen.sol.build/377AED65-717A-4627-A935-7F58759D2520/</link>
        <guid>https://joomaen.sol.build/377AED65-717A-4627-A935-7F58759D2520/</guid>
        <pubDate>Sun, 26 Jan 2025 11:20:45 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>我尝试过传统自托管博客，像 WordPress, Halo 这种，都搭建过，目前还运行着一个 <a href="https://blog.joomaen.top">WordPress 站点</a>。</p> 
<p>当然还有静态博客，可以托管到 GitHub Pages，优点是不用自备服务器，维护成本低了，但是配置就比较麻烦了。之前体验过 hexo，搞主题、评论什么的有点复杂，也就没怎么用。后来了解了 Cursor 之类的 AI 代码工具，让 AI 用 Python 写了一个简单的<a href="https://chiu.joomaen.top">静态博客</a>，放在 GitHub Pages，我偶尔发一些上去，就是写好的 markdown 复制进去，生成网页，push 到 GitHub 仓库，自动构建。也有点麻烦。</p> 
<p>在最近我换了 Mac mini 之后，又知道了 Planet 这个 macOS 上的软件，可以生成静态页面自动发布到 IPFS ，并使用 IPNS 进行访问。我再搭配 Cloudflare Tunnel，把 Planet 内置的 IPFS 端口和 Planet 的 API 映射到公网，可以从手机写文章并发布，好像也可以在服务器上搭建 IPFS 服务，将生成的 CID pin 上，就可以在本地电脑离线时亦能访问。我觉得有趣，这是我的 <a href="https://eth.sucks/ipns/ipns.joomaen.top/">Planet 博客</a>。</p> 
<p>在今天又知道了 xlog 这个链上的博客工具，其实使用它的网站看到过好多次。这个看起来好像功能全面，而且我觉得区块链是即将到达的未来的东西，最近也在逐渐了解 web3 这些。这是我的<a href="https://xlog.joomaen.top">xlog博客</a>网站。</p> 
<p>其实我并不能写出什么深刻的文章，大都是流水账和碎碎念，但是折腾博客的本身，也成了我博客的内容，也是我生活的内容，从最开 Android 玩机，到自己搭建各种 DNS 服务，后来研究 Mastodon 和 Nostr，以及尝试本地 AI，最近也是搞了许多个不同类型的博客。</p> 
<p>我也喜欢探索各种别人的博客，看看自己感兴趣的话题，感觉这是难得的网上漫游，总会有意想不到的惊喜。博客内容也都很真实，不像大型社交媒体，大家都维护着体面的形象，抒发着各种情绪，却不够真实。</p>
        ]]></description>
    </item>
    
    <item>
        <title>About</title>
        <link>https://joomaen.sol.build/D84C437D-413D-4C29-83B5-5FF4940B5394/</link>
        <guid>https://joomaen.sol.build/D84C437D-413D-4C29-83B5-5FF4940B5394/</guid>
        <pubDate>Sat, 25 Jan 2025 12:58:13 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>此网站使用macOS 上的原生应用 <a href="https://github.com/Planetable/Planet">Planet</a>，它包括了静态网站生成器、两栏的 Markdown 编辑器、模版管理、以及内置的 IPFS 网关节点。使用 Planet 构建的网站，可以直接发布成一个 IPFS 网络上可以被访问的名称 IPNS。</p> 
<p>当使用这种方式构建博客网站时，不需要申请域名或者购买服务器，也不需要在任何平台上注册用户名，只需要启动 Planet，然后保持 Planet 运行，就可以在 IPFS 的 P2P 网络上发布网站。</p> 
<h3>MacOS安装：</h3> 
<pre><code>brew install --cask planet
</code></pre> 
<p>进入软件创建一个网站，就可以使用markdown编辑，一键发布。</p> 
<h3>公共网关地址：</h3> 
<p><a href="https://k51qzi5uqu5dhq0lkygl20cz63xzy524sflaydloc7la9ziz68wfl79vi7by1t.eth.sucks/">https://k51qzi5uqu5dhq0lkygl20cz63xzy524sflaydloc7la9ziz68wfl79vi7by1t.eth.sucks/</a></p> 
<p>如果你在本地电脑上安装了 IPFS Desktop 或者 Planet（内置了 IPFS 节点），那么你甚至可以通过 localhost 来打开这个地址（假设你本地的 IPFS gateway 端口是 18181）：</p> 
<p><a href="http://127.0.0.1:18181/ipns/k51qzi5uqu5dhq0lkygl20cz63xzy524sflaydloc7la9ziz68wfl79vi7by1t/">http://127.0.0.1:18181/ipns/k51qzi5uqu5dhq0lkygl20cz63xzy524sflaydloc7la9ziz68wfl79vi7by1t/</a></p> 
<h3>使用区块链域名</h3> 
<p>我搞了个区块链域名，可以很方便的将IPNS Key绑定到<code>.bit</code>域名上，不过普通浏览器无法直接访问，可以使用<code>.bit</code>的公共网关地址，也就是在域名背后加上 <code>.ink</code>，现在你可以用一个较短的域名来访问此博客。我还买了一个<code>.sol</code>域名，它的公共网关地址是<code>.sol.build</code>。</p> 
<p><a href="https://joomaen.eth.sucks">https://joomaen.eth.sucks</a><br /> <a href="https://joomaen.eth.limo">https://joomaen.eth.limo</a><br /> <a href="https://joomaen.eth.link">https://joomaen.eth.link</a><br /> <a href="https://joomaen.bit.ink">https://joomaen.bit.ink</a><br /> <a href="https://joomaen.sol.build">https://joomaen.sol.build</a></p> 
<p>这三个区块链域名都可以搭配相应的公共网关访问我的博客，<code>.eth</code>有多个公共网关可用。SNS 的<code>.sol</code>是永久的，不用每年续费，因此它会一直可以访问。<code>.eth</code>是最火的区块链名称系统 ENS 的，使用场景比较广泛，我开始买了3年，后续应该会续费。<code>.bit</code>不一定，请先以前两个为准。</p> 
<hr /> 
<ul> 
 <li>部分引用自<a href="https://blog.v2ex.com/vxna/">V2EX站长博客</a></li> 
 <li>评论部分来自V2EX站长推荐的<a href="https://giscus.app/">Giscus</a></li> 
</ul> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>(&#x66F4;&#x65B0;)&#x5728;&#x4E00;&#x6761;Cloudflare Tunnel&#x4E2D;&#x8BBE;&#x5B9A;&#x591A;&#x4E2A;&#x5B50;&#x57DF;&#x540D;&#x548C;&#x7AEF;&#x53E3;</title>
        <link>https://joomaen.sol.build/8840132A-7921-4127-B881-D85EED876C91/</link>
        <guid>https://joomaen.sol.build/8840132A-7921-4127-B881-D85EED876C91/</guid>
        <pubDate>Sat, 25 Jan 2025 12:53:09 +0800</pubDate>
        
        
        <description><![CDATA[
            <h4>接上条: <a href="https://joomaen.bit.site/7543BAF7-4520-4865-8C5E-BB9030E4677C/">尝试Cloudflare Tunnel使本地的IPNS公网访问 – 封闭脑袋</a></h4> 
<h4>为一条隧道绑定多个域名</h4> 
<pre><code>cloudflared tunnel route dns [名字或者 UUID] [想要绑定到的域名或其二级域名] 

# 例如： 

cloudflare tunnel route dns my-tunnel doh3.us.kg

cloudflare tunnel route dns my-tunnel p.doh3.us.kg


# 目标域名必须没有设定相关DNS解析记录
</code></pre> 
<p><strong>执行命令会自动设定对应的CNAME解析记录</strong><br /> <img src="https://media.joomaen.top/2025/01/1737779777.png" alt="截屏2025-01-25 12.35.37.png" /></p> 
<h4>创建 <code>~/.cloudflared/config.yml</code>，在ingress中写入多个(子)域名和对应本机端口</h4> 
<h4>这是我的配置文件</h4> 
<pre><code>tunnel: my-tunnel
credentials-file: /Users/joomaen/.cloudflared/8ccec36b-9bf8-4c6c-a397-b1f7b3dede65.json

ingress:
  - hostname: doh3.us.kg
    service: http://localhost:18181
  - hostname: p.doh3.us.kg
    service: http://localhost:8086
  - service: http_status:404

</code></pre> 
<h4>使用配置文件启动Cloudflare Tunnel</h4> 
<pre><code>cloudflared tunnel --config /path/to/your/custom-config.yml run

# 在macOS上
cloudflared tunnel --config ~/.cloudflared/config.yml run
</code></pre> 
<hr /> 
<script src="https://giscus.app/client.js" data-repo="urkbio/giscus" data-repo-id="R_kgDONv0EQg" data-category="Announcements" data-category-id="DIC_kwDONv0EQs4CmW3b" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="preferred_color_scheme" data-lang="zh-CN" crossorigin="anonymous" async>
</script>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5C1D;&#x8BD5;Cloudflare Tunnel&#x4F7F;&#x672C;&#x5730;&#x7684;IPNS&#x516C;&#x7F51;&#x8BBF;&#x95EE;</title>
        <link>https://joomaen.sol.build/7543BAF7-4520-4865-8C5E-BB9030E4677C/</link>
        <guid>https://joomaen.sol.build/7543BAF7-4520-4865-8C5E-BB9030E4677C/</guid>
        <pubDate>Thu, 23 Jan 2025 17:45:17 +0800</pubDate>
        
        
        <description><![CDATA[
            <h3>安装cloudflared:</h3> 
<pre><code>brew install cloudflare/cloudflare/cloudflared
</code></pre> 
<h3>验证登录并授权一个域名(先在浏览器上登录Cloudflare，再运行命令):</h3> 
<pre><code>cloudflared login
</code></pre> 
<h3>绑定自己域名 (可选)</h3> 
<ol> 
 <li>创建隧道 (前提已经登录并授权一个域名)</li> 
</ol> 
<pre><code>cloudflared tunnel create
</code></pre> 
<p>你的家目录中会出现 <code>~/.cloudflared/[一长串UUID].json</code>，里面保存这运行这条隧道所需要的授权信息。</p> 
<ol start="2"> 
 <li>配置路由<br /> 创建了隧道之后，我们还需要让它可以被访问。Cloudflare 支持将其部署到负载均衡器后端，或者通过 DNS 直接访问。这里只介绍后者的使用方法。</li> 
</ol> 
<pre><code>cloudflared tunnel route dns [名字或者 UUID] [想要绑定到的域名或其二级域名]

# 例如：
 cloudflare tunnel route dns my-tunnel domain.example.com
# 目标域名必须没有设定相关DNS解析记录
</code></pre> 
<h3>使用Cloudflare随机域名启动</h3> 
<p>修改为自己的端口，运行命令之后出现一个随记域名<code>https://random-name.trycloudflare.com</code>:</p> 
<pre><code>cloudflared tunnel --url http://localhost:8080
</code></pre> 
<h3>使用自己配置好的域名启动</h3> 
<pre><code>cloudflared tunnel --name [隧道名称] --url http://[站点地址]

# 例如:
cloudflared tunnel --name my-tunnel --url http://127.0.0.1:18181
</code></pre> 
<hr /> 
<p>参考:</p> 
<ul> 
 <li><a href="https://blog.outv.im/2021/cloudflared-tunnel">用 Cloudflare Tunnel 进行内网穿透</a></li> 
 <li><a href="https://blog.logto.io/zh-TW/painless-local-debugging">無痛本地調試：使用 Cloudflare Tunnel 實現 HTTPS 和自定義主機名</a></li> 
 <li><a href="https://sspai.com/post/79278">CloudFlare Tunnel 免费内网穿透的简明教程</a></li> 
</ul>
        ]]></description>
    </item>
    
    <item>
        <title>macOS&#x4E0B;&#x5220;&#x9664;nix&#x5305;&#x7BA1;&#x7406;&#x5668;&#x521B;&#x5EFA;&#x7684;&#x7528;&#x6237;</title>
        <link>https://joomaen.sol.build/B72334B0-4F8A-4FBC-9040-75A88FF3EF2C/</link>
        <guid>https://joomaen.sol.build/B72334B0-4F8A-4FBC-9040-75A88FF3EF2C/</guid>
        <pubDate>Wed, 22 Jan 2025 20:46:35 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>尝试在macOS上安装nix包管理器，但是遇到好多问题，我不太会用，于是删除了。但是它在系统中创建了许多用户。</p> 
<blockquote> 
 <p>nix 通常用于管理软件包和环境，它会创建多个用户（如 <code>_nixbld1</code> 到 <code>_nixbld32</code> 等）来隔离构建过程。如果你不再使用 nix，可以安全删除这些用户。</p> 
</blockquote> 
<ul> 
 <li>查看用户: <code>dscl . list /Users</code>应该能看见 <code>_nixbld1</code> 这样的</li> 
 <li>删除用户: <code>sudo dscl . -delete /Users/_nixbld1</code></li> 
 <li>如果你确定要删除所有以 <code>_nixbld</code> 开头的用户，可以使用以下命令：</li> 
</ul> 
<pre><code>for user in $(dscl . list /Users | grep '^_nixbld'); do
    sudo dscl . -delete /Users/$user
done
</code></pre>
        ]]></description>
    </item>
    
    <item>
        <title>I2P</title>
        <link>https://joomaen.sol.build/7C5CA137-1582-4B4B-B481-694AA02BB456/</link>
        <guid>https://joomaen.sol.build/7C5CA137-1582-4B4B-B481-694AA02BB456/</guid>
        <pubDate>Wed, 22 Jan 2025 12:10:11 +0800</pubDate>
        
        
        <description><![CDATA[
            <h3>启动I2P</h3> 
<p><code>/opt/homebrew/Cellar/i2p/2.7.0/libexec/runplain.sh</code><br /> 启动之后会显示PID<br /> 关闭的话就用<code>kill -9 {PID}</code></p> 
<h3>用代理参数启动Chrome</h3> 
<p><code>open -a "Google Chrome" --args --proxy-server="http=127.0.0.1:4444;socks5=127.0.0.1:4447" </code></p> 
<h3>I2P 控制台</h3> 
<p><code>http://127.0.0.1:7657</code></p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x7B80;&#x5355;&#x642D;&#x5EFA;Snell&#x670D;&#x52A1;</title>
        <link>https://joomaen.sol.build/52364F04-EDFE-4AE3-B46B-00600F309612/</link>
        <guid>https://joomaen.sol.build/52364F04-EDFE-4AE3-B46B-00600F309612/</guid>
        <pubDate>Wed, 22 Jan 2025 10:57:29 +0800</pubDate>
        
        
        <description><![CDATA[
            <h1>简单搭建Snell服务（转载自<a href="https://github.com/getsomecat/GetSomeCats/blob/Surge/%E7%AE%80%E5%8D%95%E6%90%AD%E5%BB%BASnell%E6%9C%8D%E5%8A%A1.md">getsomecat</a>,仅作为备份）</h1> 
<h1>如果系统没有预装可能需要先下载安装 vim，wget 及 unzip</h1> 
<h1>APT</h1> 
<pre><code>sudo apt update &amp;&amp; sudo apt install wget unzip
</code></pre> 
<h1>DNF</h1> 
<h1>这一步ubuntu和Debian系统似乎不用。</h1> 
<pre><code>sudo dnf install unzip
</code></pre> 
<h1>安装vim</h1> 
<pre><code>apt install vim
</code></pre> 
<h1>下载 Snell Server</h1> 
<h1>如果你的服务器是其它版本的去官网<a href="https://manual.nssurge.com/others/snell.html">Snell Protocol · GitBook</a>下载相应服务器版本。这里以linux-amd64为例</h1> 
<pre><code>wget https://dl.nssurge.com/snell/snell-server-v4.0.1-linux-amd64.zip
</code></pre> 
<p>如果ARM的机器：</p> 
<pre><code>wget https://dl.nssurge.com/snell/snell-server-v4.0.1-linux-aarch64.zip

</code></pre> 
<h1>解压 Snell Server 到指定目录</h1> 
<p>AMD</p> 
<pre><code>sudo unzip snell-server-v4.0.1-linux-amd64.zip -d /usr/local/bin
</code></pre> 
<p>ARM</p> 
<pre><code>sudo unzip snell-server-v4.0.1-linux-aarch64.zip -d /usr/local/bin
</code></pre> 
<h1>赋予服务器权限</h1> 
<h1>花姐的教程里面没有这一步。但是我结合自己之前弄TUIC的经验，觉得应该还是要加上</h1> 
<pre><code>chmod +x /usr/local/bin/snell-server
</code></pre> 
<h1>编写配置文件：</h1> 
<h1>先执行新建文件夹操作</h1> 
<pre><code>sudo mkdir /etc/snell

</code></pre> 
<h1>执行完建立文件夹操作后再进行写入配置</h1> 
<h1>可以使用 Snell 的 wizard 生成一个配置文件</h1> 
<pre><code>sudo snell-server --wizard -c /etc/snell/snell-server.conf
</code></pre> 
<h1>参数说明：</h1> 
<p>listen：监听地址及端口；<br /> psk：密钥；<br /> ipv6：如果需要 IPv6 支持将值为 – true；</p> 
<h1>然后配置 Systemd 服务文件：</h1> 
<pre><code>sudo vim /lib/systemd/system/snell.service
</code></pre> 
<h2>将下面的复制粘贴进去，按esc 后输入“：wq”保存退出</h2> 
<pre><code>[Unit]
Description=Snell Proxy Service
After=network.target

[Service]
Type=simple
User=nobody
Group=nogroup
LimitNOFILE=32768
ExecStart=/usr/local/bin/snell-server -c /etc/snell/snell-server.conf
AmbientCapabilities=CAP_NET_BIND_SERVICE
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=snell-server

[Install]
WantedBy=multi-user.target
</code></pre> 
<p>⚠️ 注意：在一些 Linux 发行版 (CentOS7) 中并无 nogroup 群组，但可以尝试修改成 Group=nobody 解决。如果需要使用特权端口，可以在 [Service] 增加一条：AmbientCapabilities=CAP_NET_BIND_SERVICE 以解决权限不足不能绑定的问题；</p> 
<p>然后使用命令：</p> 
<h1>重载服务</h1> 
<pre><code>sudo systemctl daemon-reload
</code></pre> 
<h1>开机运行 Snell</h1> 
<pre><code>sudo systemctl enable snell
</code></pre> 
<h1>开启 Snell</h1> 
<pre><code>sudo systemctl start snell
</code></pre> 
<h1>关闭 Snell</h1> 
<pre><code>sudo systemctl stop snell
</code></pre> 
<h2>查看 Snell 状态</h2> 
<pre><code>sudo systemctl status snell
</code></pre> 
<h1>Tips:运行查看服务器状态后按“q”键退出</h1> 
<p>如果要查看自己Snell配置：</p> 
<pre><code>cat /etc/snell/snell-server.conf
</code></pre> 
<p>查看后将相应的配置输出到surge里面：</p> 
<p>格式如下：（XXX.XXX.XXX.XXX换成你自己的vps IP，端口和psk也是自己改成自己设置的snell-server.conf里面相应数据。）</p> 
<pre><code>AWS-EC2-SG = snell, XXX.XXX.XXX.XXX, 11807, psk=AijHCeos15IvqDZTb1cJMX5GcgZzIVE, version=4, tfo=true
</code></pre> 
<p>中午我是自己在 AWS -EC2 上按照这个步骤自己来了一遍并通了的。</p> 
<p>如果你看完教程觉得好麻烦啊我不想动手搞，那么这个一键脚本应该可以帮到你</p> 
<pre><code>wget -O snell.sh --no-check-certificate https://raw.githubusercontent.com/getsomecat/Snell/master/snell_new.sh &amp;&amp; chmod +x snell.sh &amp;&amp; ./snell.sh
 
</code></pre>
        ]]></description>
    </item>
    
    <item>
        <title>&#x53C8;&#x60F3;&#x6362;&#x5230;WordPress&#x4E86;</title>
        <link>https://joomaen.sol.build/45A8F23C-8B5B-4BC4-B2F2-3F37C55017D7/</link>
        <guid>https://joomaen.sol.build/45A8F23C-8B5B-4BC4-B2F2-3F37C55017D7/</guid>
        <pubDate>Mon, 20 Jan 2025 22:38:37 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>目前有许多个地方可以发博客文章，包括Planet这个IPNS工具，还有用AI写的一个简陋的静态博客工具，还有blogspot这种。当然我用最多的是自托管的halo，用着没啥问题，有点无聊了，又想回到WordPress的怀抱，我看其他人写自己的博客折腾过程最终都是回归WordPress。但我又找不到一个合适的工具来迁移，最后也是作罢了。或许真的不爱折腾了。等到halo内存不够用时再下决心切换吧。WordPress尽管不快，但内存占用还是比halo小的。</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x672C;&#x5730;IPFS&#x8BBF;&#x95EE;</title>
        <link>https://joomaen.sol.build/1A391B9E-759A-4BBA-843D-B6552CD885A0/</link>
        <guid>https://joomaen.sol.build/1A391B9E-759A-4BBA-843D-B6552CD885A0/</guid>
        <pubDate>Mon, 13 Jan 2025 21:05:41 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>安装IPFS Desktop客户端，本地IPFS Gateway在8080端口上。</p> 
<p>可以使用以下方法来访问</p> 
<pre><code># IPFS
http://{CID}.ipfs.localhost:8080

# IPNS
http://{IPNS Key}.ipns.localhost:8080
</code></pre> 
<p>或者</p> 
<pre><code># IPFS
http://127.0.0.1:8080/ipfs/{CID}

# IPNS
http://127.0.0.1:8080/ipns/{IPNS Key}
</code></pre>
        ]]></description>
    </item>
    
    <item>
        <title>&#x6211;&#x7684;&#x7F51;&#x540D;</title>
        <link>https://joomaen.sol.build/3CBFA697-D422-4E3F-B6F7-C6D67CD1EF9E/</link>
        <guid>https://joomaen.sol.build/3CBFA697-D422-4E3F-B6F7-C6D67CD1EF9E/</guid>
        <pubDate>Wed, 08 Jan 2025 14:34:38 +0800</pubDate>
        
        
        <description><![CDATA[
            <p><em>我最常用的网名有几个，主要是一些无意义的英文字母组合，属于是自创的。还有一些取自我喜欢的歌词、小说等。</em></p> 
<h3>英文</h3> 
<p>其实也不算英文，就是几个拉丁字母的组合</p> 
<ol> 
 <li>joomaen，自己起的英文名，也不知道怎么读，就只在网上用。最初是我在了解北欧语言时候发现了几个特殊字母，便用这些组合了一个名字：<strong>jømæn</strong>，不过后续一些地方不允许输入特殊字母，采用oo代替了<strong>ø</strong>，用ae代替了<strong>æ</strong>。</li> 
 <li>urkbio，这是我在第n次注册Google账户时想到的，本来就是想看起来尽可能的短，随手输了个结果可以注册，这个就是我主要使用的Google账户的前缀了。后续我还再注册了一个Google账户，使用的<strong>orkbiu</strong>，改了下顺序依然可以。</li> 
 <li>zyg，这是我中文名字首字母缩写，有时候也会写成<strong>uniquezyg</strong>或<strong>iccczyg</strong></li> 
</ol> 
<h3>中文</h3> 
<ol> 
 <li>马铃薯芽，来自奥尔加 托卡尔丘克的小说中的句子，大概是“我就像生活在阴暗地窖里的马铃薯芽”。</li> 
 <li>轉化天道，来自闪灵Chthonic的歌词。</li> 
</ol>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5173;&#x4E8E;&#x56FD;&#x65CF;&#x8BA4;&#x540C;&#x7684;&#x4E00;&#x4E9B;&#x60F3;&#x6CD5;</title>
        <link>https://joomaen.sol.build/6F6D6E69-336D-4FC6-BF44-9C80C438A8B1/</link>
        <guid>https://joomaen.sol.build/6F6D6E69-336D-4FC6-BF44-9C80C438A8B1/</guid>
        <pubDate>Wed, 10 Apr 2024 14:35:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>闪灵乐队的音乐，大都是以台湾人的视角，反抗一切的殖民，既反中也反日。有人不喜欢这点，就像台湾的绿营都喜欢去中华化，注重本岛叙事。当然也有蓝营的大中华思想，不过是中华民国。</p> 
<p>但我对这点是无所谓的。因为塑造一个本国族的认同是大多数国家都在做的事情，对于两岸来说更加明显。对台湾地区，大陆肯定是想让民众们都认同中国，先不说一中各表，起码对中华文化历史都认同，会说自己是个中国人，全称是什么不重要。但如果台湾人都认为自己只是台湾人，和中国是邻国关系，只不过恰好讲中文而已，那肯定是大陆不希望的。</p> 
<p>就算说大陆，那也是有一个虚空的中华民族概念，而淡化了汉族，以此来促成民族团结。某些方面来说这当然是好事，不过客观的来看，一个强加的标签化的身份认同本身就是荒谬的。我不知道新疆西藏的少数民族人是更认同中华民族还是本民族，也不知道台湾原住民是否认同中华民国。不过这又有什么关系呢？官方只是塑造一个概念放在那，并且不停宣传。但是真正对这个方面有思考的人，自然会自行选择自己的国族认同，所以各个派系不同颜色的阵营都会有支持者，在中国肯定也有不认同中华民族大一统叙事的人，比如皇汉。此外，有蒙东人的地域认同是东北人，他也可以随便讲，因为这没有政治上的价值，中国是大一统集权国家，又不是联邦或邦联。</p> 
<p>所以我对中国人以及台湾人的身份地域国族认同都无所谓，但这只是对现实的无奈。最理想的是没有国家，就算有也只是按地理划分的，民族什么的有点太抽象。当然也有不少民族有很强的身份认同，这表现在文化上还比较合理，因为从小接触本民族的文化和历史并以此为荣当然是好的。我反对的只是对虚幻概念的强行植入。</p> 
<p>尽管我表示无所谓，但是肯定有许多人会跟着执政者宣传的叙事走，几代人过后就成了自己的认同了。当然这也是历史层面的，好比中原人大都认同中华文化，但边境的人在比例上肯定少一些。</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x518D;&#x5199;&#x4E00;&#x70B9;&#x6211;&#x5BF9;&#x89C4;&#x5219;&#x7684;&#x770B;&#x6CD5;</title>
        <link>https://joomaen.sol.build/59ABF50F-5D05-4468-90FC-D20D17FE7AE6/</link>
        <guid>https://joomaen.sol.build/59ABF50F-5D05-4468-90FC-D20D17FE7AE6/</guid>
        <pubDate>Wed, 28 Feb 2024 14:40:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>之前讲我是个喜欢讲规则的人，任何事情都白纸黑字写明白，遵守就行了。当然从小就是这么被教育的。这并不意味着盲目的遵守一切无论是否合理的规则。所以我也或许明白为何如今的社会并不是那么地讲规则了。</p> 
<p>其实如今社会已经是无法干什么事都完全按规矩办了，因为规矩太死板，不人性化。而且问责制度不够完善，导致许多有权力的人或机构不作为，无法及时调整许多流程和制度，甚至有的事情都找不见是谁负责，到处踢皮球。这样的社会，貌似处处离了关系是不行，办事容易碰壁，甚至找不到门路。所以我是理解那些我不愿比肩的人的，可我呢？</p> 
<p>我真的会和他们一样吗？还是说每个人都会经历这样一个转变，只是我开窍晚？我现在看高中时候写的一些文字，无论是想法还是情绪，都与现在的我相去甚远，是不是再过几年，我彻底的成为了我所不齿的那类人，再回看时，怕是会笑现在的自己幼稚吧！</p> 
<p>人是会变得，或许那个悖论是对的：人最终会变成自己讨厌的人。但目前，我还不想打我自己的脸。可我，又无法改变社会，又无法融入这个复杂的社会。或许错的并不是我，而是这个世界，可我可以做出让步，难道要我退回原点？</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x7B97;&#x662F;&#x56DE;&#x6751;&#x611F;&#x60F3;&#x5427;</title>
        <link>https://joomaen.sol.build/FDAD8015-DCB1-498F-A057-4B31037768B4/</link>
        <guid>https://joomaen.sol.build/FDAD8015-DCB1-498F-A057-4B31037768B4/</guid>
        <pubDate>Sat, 24 Feb 2024 14:42:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>今天是过年的最后一天，明天就去学校了，所以今天和妈妈去外婆家了。其实我是一直叫外婆外公爷爷奶奶的，我从小就在那长大的。 我的小姨也在那，她和我姨夫还有她两个孩子要去县里面，听说是给较大那个孩子转校到县里边去上学，村里学校只有十几个人，说是要让孩子去一个有竞争的地方，找了许多关系才勉强让转学，他们还有一个袋子装了一瓶白酒和一些特产，也是要送给帮她孩子上学的人。 小姨年纪比我大不了多少，我从小在外婆家，所以我跟她关系比较好，我上幼儿园时候她也才开始上初中，后来辍学了，离过一次婚，现在这个姨夫是个厨师，开过面馆不过又关了，现在在县里上班。我小姨则是在家看孩子，她的脾气很奇怪，在我看来总是没事找事那种，她总给小孩子喂各种吃的，吃饭时又嫌孩子吃不完。听说她在她的大孩子作业写不好时会用针扎孩子，我想应该只是一种惩罚，不过确实很吓人，我相信她能干出来这事。 去过她家几次，她总是不让孩子吃过年时候做的凉菜，说孩子胃不好，这我也能理解。她不让孩子看手机，尽管是寒假，甚至孩子凑在别人身边看一会她都要说。在我看来，她的教育方式，她的态度是有问题的。看得出来她大女儿非常怕她妈，唉，现在被接到她身边去上学，还不是住宿，又得挨不少骂。 不过我担心这个也过于杞人忧天了，她虽然有点离谱但是没那么离谱，也没到家暴这种程度。回想一下我不也是这么过来的吗？我爸爸没打过我，但他的脾气巨差，看什么都不顺眼，有一段时间看我在家里给我找各种事，擦窗台扫地这些。其实单纯干家务都没啥，只是他以一种不容反抗的强硬态度命令我去做，而且稍微有一点没弄干净他就生气，他不是骂，而是一把夺过扫帚，说：要你干啥啊，连个地都扫不了。我从没反驳过他，只是不说话，或许我现在孤僻的性格也与此有关吧，毕竟我上小学时在外婆家都挺开朗的。</p> 
<hr /> 
<p>现在一走亲戚就有人问我在哪上学之类的事情，之前我也不反感，只是一遍又一遍地重复学校和专业的名字。不过今年由于要毕业了，所以他们的话题多了个找工作。我签了一家离家较远的公司，他们说不好，但也有亲戚说好，我自己也不清楚，不过我也觉得有点不靠谱，就说打算另外找一个。 姨夫说上班了好好干，干几年争取往上爬。这我当然知道他说的是为我好的话，可是后来又说了许多求人办事，送礼之类的话。那我是有点反感的，我或许是个理想主义者，认死理，许多人说我不懂人情，家人也这么说。我觉得我这几年已经有所变化了，我承认人情社会的客观存在，也认可人脉广有好处之类的，不过说送礼，求人办事这种我还是坚持保持不屑。我想的是，假如我有个教师朋友，我把孩子给他教很正常，我或许也会说一些让他多关注下我的孩子之类的话，但这是基于我俩的朋友关系而已，我或许也会请他吃饭，给他寄点特产什么的。但是这和我求他办事不一样，我如果孩子没在他的班我也会干这些，这并不是我在低声下气巴结他，我俩是平等的朋友关系。而且假如我没有做教师的朋友，那我的孩子上学就按照正常流程走，也不需要求人走后门。 我一直认为这种行为是会令人唾弃的不齿行径，可是许多亲戚和村里人都表示羡慕，我不理解但又理解了，就像许多人看待皇上不是反对而是羡慕一样，羡慕为什么自己没有够硬的关系。 我和外公和姨夫聊了许多，我一直坚持我的观点，不做这种事情。外公谈到贪官被抓，谈到共产主义无法实现等等，姨夫说了入党才能做官之类的话。看来我们的观念间隔的蛮远的。我现在不打算说服谁，现实中哪有对错，都是作为人，只不过想在自己认知中最好的境遇过完这一生罢了。所以观念之争也不过是路线之争，无论是走什么路，终能了却此生，只要落个临了不后悔便是。</p> 
<hr /> 
<p>但我在回家的路上也开始反思，我内心深处觉得自己是在所谓对的道路上，可是我又无比认同这世界没有绝对的对错，是我太偏执了？还是我姨夫那个事情，因为政策上是要求按照户口就近上学，所以如果按我想的按规矩办的话，孩子只能在人数少得可怜的村小学读书，亦或是转移到自己所属的镇子上，规矩是这样的。我小时候读过的乡初中由于人少，也在几年前关闭了，许多同学去了镇上。但姨夫的理由是：我在县里上班，县里有租的房子，在镇上就没人照看了。听着有道理，我竟无法反驳。姨夫说过许多遍说我没到社会上经历这些事情，我想难道我也会成为这样的人吗？低声下气的求人办事，甚至不惜花钱贿赂，然后步步高升，从孙子摇身一变成了爷。这都是成功案例，许多人花了钱也办不了事，在我看来是傻逼，瞎折腾。现在想来，或许他们也是想用这一点钱财抄个近路，赌一把，万一成了便是众人的爷，走在路上都会被高看几眼，可是他没成，就成了人们口中的反面教材：有的人有钱但是找不到够硬的关系都没用！不过人们不唾弃他，反而同情起他来，想必如果他成了，众人便是嫉妒了。</p> 
<hr /> 
<p>在和外公的讨论中，他先是说我们社会要向共产主义社会发展，甚至全世界都要。我一口否决，说人是有欲望的，除非每个人都像圣人那般，如今民智未开，共产社会不可能实现。外公后面也说别说100年，就算1000年也不能实现，说是社会变坏了，你不想同流合污你就许多事情不好办。可是他说美国有好几个党，却没一个能拿住事情，能说了算的。我说人家是选举的，他却说不如中国XX党，有话语权说了算。我说它权力大，没人敢不听他的，外公说确实没人敢不听他的，但是是因为他是正确的。至此我觉得没有必要再说下去了，我也不跟他聊这些，毕竟我们不能左右什么。</p> 
<p>开车离开之前，我在手机备忘录写下，民智未开，是被逼无奈还是本性如此？</p> 
<hr /> 
<p>我不喜欢走后门，走捷径。是因为我是一个喜欢将规矩的人，而且所有条条框框都白纸黑字写下，办事自然明白。我也向往一个法律健全的法治社会，不断修正和完善法律。就像我姨夫孩子上学的事情，这都是制度上可以再完善的，比如对进城农民工的一些政策，因为这也是留守儿童和空巢老人问题的一个特例。我不是要求法律要随便改，我理想的是，立法应顺应社会发展不断修改和完善，尽量没有含糊不清的条目，但是在执法上要严格按照法律来执行，不能有变通的机会。但是现在正相反，许多模糊的罪名，被称为口袋罪的寻衅滋事等，立法不严格就放纵了执法上的尺度，这是建设法治社会应该避免的。</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5173;&#x4E8E;&#x591A;&#x5DF4;&#x80FA;--&#x63A5;&#x4E0A;&#x7BC7;</title>
        <link>https://joomaen.sol.build/D6BFD657-1857-42AC-9BDC-E40ECFF13677/</link>
        <guid>https://joomaen.sol.build/D6BFD657-1857-42AC-9BDC-E40ECFF13677/</guid>
        <pubDate>Tue, 02 Jan 2024 14:47:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>我最近也看了许多人的视频，他们分享了一些经验，现在我比较认可的是：性和任何可以使人上瘾的东西一样，可以把它看作是毒品，轻视它只会成为他的奴隶。现代的脑神经学的研究也证明，性或任何可以使人上瘾的东西一样，都会促使大脑中的某个区域分泌多巴胺，这会让人感觉到快乐。但是多巴胺的神奇之处不仅如此，它是基于预期的满足而分泌的，如果只看一部色情片，肯定很多人都会腻的吧。但是现在的网络可以让人看到无数多的不同的色情内容，有本书里说：现代人一个小时看到的异性比爷爷一辈子看到的都多。就是这种时刻保持新鲜感的情况才会促使大脑不断分泌多巴胺，大脑是从远古时代进化来的，但人类进化的速度和科技发展的速度不是一个量级的，所有人脑还在用远古时期的模式来应对现代生活。就是当你在看片的时候，大脑以为你在性交，大脑必须分泌大量多巴胺来使你获得快感，从而顺利交配以达到繁殖后代延续基因的目的。而当你在浏览大量的片时，大脑以为你在和多位异性交配，于是分泌更多多巴胺。总的来说，对性/手淫（或者说色情内容）成瘾就是这些多巴胺在作祟，而且它是永不会被满足的，一旦满足，多巴胺那种基于预期的满足就失效了，这时你想继续获得多巴胺的分泌就得有新的刺激，让它重新获得预期。这也许就是为什么即使有很漂亮的老婆的人也会出轨，以及为什么看片越看口味越重的原因所在。当然或许也是人性贪婪和欲望永不会被满足的原因。</p> 
<p>上一段中的性可以换成任何使人成瘾的东西或行为。许多人有各种各样的成瘾问题或许是一种精神疾病，也可能是生理结构上或基因上的差异加之后天环境的影响造成的。但是不能因为这是生物本能就不去戒，因为成瘾会在大脑中形成永久的突触回路，现今科学还没法在人身上解除这种回路，但是解除可以形成其他的回路，从而使成瘾的回路不再是主要的。</p> 
<p>与多巴胺对应的物质：内啡肽、催产素、血清素等，本应是在大脑中有一个平衡的内稳态，维持着快乐-痛苦天平，但是由于不良的行为以及成瘾物质的摄入，打破了这种稳态，于是在多巴胺分泌期间天平会大幅度向快乐方倾斜，当多巴胺不再大量分泌时，天平又同样大幅度的倒向另一边，这就是快乐过后的空虚感。</p> 
<p>今天还看到一个视频，说流传在贴吧的各种戒xx吧里的方法都没效果（当然我自己认为是有一定效果的，只是指标不治本），即是：</p> 
<ul> 
 <li>坚持打卡</li> 
 <li>每天读有前人经验的文章</li> 
 <li>经常复盘、反省</li> 
 <li>中医食疗</li> 
 <li>运动健身</li> 
 <li>学佛</li> 
</ul> 
<p>这些效果不明显，除非意志力超强的人，我自然不行。这个博主的建议是找到适合自己性格，准确说是人格力量的方向，做自己喜欢的事情，而做这些事情的成就感是更加满足更加高级的，自然就不去想廉价的获得多巴胺的手段了。博主给了一个测试，可不可信不好评价，就当个参考吧。</p> 
<p>链接在这 <a href="https://types.yuzeli.com/survey/via240">https://types.yuzeli.com/survey/via240</a></p> 
<p>这是我的结果，我还得再研究下该如何去做，毕竟他只给了个思路。（原贴图已丢失）</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5173;&#x4E8E;&#x6212;&#x70DF;</title>
        <link>https://joomaen.sol.build/B0317B8B-0E9F-4843-B8BE-EA1FE3854C03/</link>
        <guid>https://joomaen.sol.build/B0317B8B-0E9F-4843-B8BE-EA1FE3854C03/</guid>
        <pubDate>Tue, 02 Jan 2024 14:44:00 +0800</pubDate>
        
        <itunes:image href="https://joomaen.sol.build/B0317B8B-0E9F-4843-B8BE-EA1FE3854C03/2023-12-22_19-38.avif" />    
        
        
        <description><![CDATA[
            <pre><code>半个月前，我尝试戒烟。我读了那本《这本书能让你戒烟》，之后坚决地戒了两周多时间。之后是五一假期，我去找了朋友，在他那待了一晚后，破戒了。但我本想这是一次假期消遣，应该不会再犯。但后来我又在心烦意乱时，亦或是夜不能寐时，又点上了烟。又抽了几周。
我反省一下为什么会这样，原因应该是我戒烟的初衷，我只是不想花太多钱在这个不良嗜好上，况且我很拮据。就是说我并没有真正认识到抽烟的危害和戒烟的必要性。我读那本书也并不是我多么认同它的理念，只是我想戒烟，它也让我戒烟，很多人说读了这本书都戒了。所以那几周戒烟的时间我的心里的依赖是这本书本身而非它所传递的观点。
刚才看了看钱包，又想戒烟了。当然我的初衷还是省钱，但我也体会到了戒烟那段时间的舒适。可以早睡早起，食欲变好等等。
我现在要将自己戒烟的过程记录下来，以及每次想抽烟时的心理和想法。立帖为证，希望看到的陌生人可以支持我，和我互动。这样可能会让我感觉我不是一个人。祝我成功。
</code></pre> 
<hr /> 
<p>今天是2023年12月22日，今天冬至，可惜我昨天吃了饺子而今天没吃，这应该不太重要吧。</p> 
<p>最新生活的很糟糕，每天都在重复，但又什么都没做。作息时间倒是算得上“规律“，五六点睡，下午两三点起来。之前我还烦恼一起床就吃了下午饭，要不要吃晚饭的事情，到现在也已经习惯这种颠倒黑白的作息了。</p> 
<p>令我烦恼的点并不是什么大的挫折或是困难，真的，我觉得是自己太闲了。我对自己很不满意。本来想写写最近的想法，算是一个日记，输出一下自己的负面情绪。可是我打开博客管理页面，发现了一个在5月20日保存的草稿，本来是想写戒烟的，但当时才刚开始戒，打算等小有成果之后再接着写，可是一搁置就到了现在。时间过得确实很快，我浑浑噩噩地过了这么些天，甚是惭愧。</p> 
<img width="224" alt="2023-12-22_19-38" src="https://joomaen.sol.build/B0317B8B-0E9F-4843-B8BE-EA1FE3854C03/2023-12-22_19-38.avif" /> 
<p>之所以接着戒烟这篇来写，因为我最近也在苦恼一些关于上瘾的事情。我抽烟、撸管、熬夜、不运动、不学习，总之这些看起来只是小小坏习惯对我内心打击很大，我很讨厌自己有时候。</p> 
<p>先说戒烟，早在5月20日读了那本神奇的书之后的确是戒了两星期，之后随着我逐渐闲下来，戒的动力逐渐消散，而且处在有人吸烟的环境中，从一开始尝试抽一根来看看自己是否还对吸烟有兴趣（当然这是糊弄自己的借口，有许多案例表明戒掉之后再复吸就是从“一根”开始的，何况我的自制力很差），之后就逐渐增多了。一开始我内心深处还是不想承认自己戒烟失败，我不自己买烟而是偶尔抽舍友的，我以为这样会阻止我，可是他的烟就放在那里，有时候就情不自禁地拿起来抽了，但我又怕经常抽他的不太好，所以自己还是偶尔会买烟，这是要说服自己的。除了5月开始戒的两周外，我还在国庆节时候戒了一个月，当时我朋友把烟塞我嘴里我都不抽，可是复吸也和之前一样，到目前为止我还没戒掉。当然在失败后我会试图为自己辩解，说“即使失败了，不也还是有那么几周几个月没抽吗，这也是好事，在这期间省了钱。”但是这说服不了我自己，我会觉得自己很失败。我有记账习惯一年多了，算了下一年买烟要花1000元以上，每月100左右。但最近保持在每月60左右，我还是不太满意。</p> 
<p>还有就是撸管，说来惭愧，我在这方面开窍比较早，初中就有色情的想法经常出现在脑子里，还有两三天撸管一次，当时觉得没啥，现在身体感觉虚了很多，我现在还很年轻，或许是诸多坏习惯加长期坚持共同作用的结果。戒这个我也行动过很多次，说是屡戒屡破，屡破屡戒。许多专业人士说适当撸管可以保持精子活性啦，有益身心啦，缓解压力啦等等我都相信，可他们说的有个前提，是适度。性这种写在基因里的东西，要完全戒掉是很难的。但是这种很容易获得快感的东西是极易上瘾的，所以适度对我来说是个伪概念。许多人在网上问到底一周几次合适，答案五花八门，有的是按年龄的不同次数不同，有的是说一周5次以内都行。但我比较认可的是“频率因人而异，只要事后不觉得身体疲劳，头昏眼花就行，但最好一周不要超过两次“。或许我的困扰也是许多人的困扰，但是没有一个万全之策可以一劳永逸。</p> 
<p>至于熬夜、不锻炼身体、不学习，都可以归咎于我自控力很差，所以我在没有外部约束的情况下很容易放纵，没得办法，我现在想逐渐调整回正常作息，尽量出去运动，尽量学习。</p> 
<p>就是这么些不是事的破事，写出来罗列出来好像也并不是很大的问题。继续沿用这个标题是为了对这个事情做个了结，不过没法了结，等我调整好情绪和心情，马上开戒，下次再写。</p> 
<p>2023年快过去了，希望2024更加健康（这是必需的），更快乐。</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x7545;&#x60F3;&#x6C11;&#x4E3B; </title>
        <link>https://joomaen.sol.build/C26CB1B1-C0DC-4623-9FBF-7A9C7184EDC4/</link>
        <guid>https://joomaen.sol.build/C26CB1B1-C0DC-4623-9FBF-7A9C7184EDC4/</guid>
        <pubDate>Fri, 01 Dec 2023 16:48:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>有时候看到一些美国的科幻电影，在许多年之后，人类和机器合体，或是人类可以永生，但好像那时候的社会都是贫富差距巨大，少量的富人占据极大部分本就不多的资源。我会想：难道民主的世界也会这样吗？</p> 
<p>现在发达国家，特别是北欧的国家，社会福利非常好，甚至不用上班也可以过的不错。其他国家也都在往这个方向努力，那是在科技快速发展，生产力不断提高的时代。或许到了几百年以后，科技已经非常发达，但是遇到了瓶颈，还有地球自然资源的逐渐枯竭，政府已经无法支撑给每个人很高的福利了，极端点或许全球经济也会崩溃，那时候尽管不会整个地球统一管理，但也趋于一体化了。</p> 
<p>由于资源匮乏，掌权者开始将能获取到的优先向自己手里收紧，这开始肯定会在掌权者内部收到反对，不过随着环境一再恶化，其中善良的少部分会被排挤出去，之后民主逐渐崩溃，开始向威权甚至集权转移。但是底层民众疾苦不堪，从游行抗议到暴力夺权，不过他们怎么能赢，许多杀伤力可怖的武器都在掌权者手中。他们甚至可以悄悄转移至安全区之后用核武器杀死大部分“暴民”。剩下的平民知道无力反抗，或是奉承谄媚，或是拼命为上层人卖命以求一口饭吃。我相信那时候科技的发达也超乎我们想象，可能有贪婪的科学家天价出售不死药水，但少有人买得起；亦或是穷人中有小钱的去用机械改造自己。但这终归是少数，更多是被生活压倒的绝望的人，他们不在生育后代，或是自杀。人越来越少，人均的资源也不那么紧张了。当然他们可以用机器人来干活而不需要普通人。于是只有极少数的有权势的富人生活在世界上。</p> 
<p>民主很容易崩溃，这只是一个极端的例子。但是宗教、文化、经济和许多其他领域都有可能导致民主的崩溃。当然集权和威权更容易崩溃，但是总是从一个权力机构转向另一个。这显得现有的民主尤为珍贵。虽说一个世纪以来有许多民主转型成功或逐渐成功的例子。但是也有民主崩溃的例子。民主既简单又复杂，看上去好像就是投票，少数服从多数，可以发表不满。但这只是很简单很片面的看法。好的民主不能局限在“少数服从多数”，而是要综合考虑国家宗教文化等的矛盾，逐渐摸索出最合适的模式和规则，也要与时俱进，宪法神圣但不能死板。还要注重协商，用温和的方式解决问题，抗议会是个好的表达不满的方法，但是最好不要极端和暴力。</p> 
<h4>珍惜来之不易的民主吧！</h4>
        ]]></description>
    </item>
    
    <item>
        <title>&#x56DE;&#x5FC6;&#x6216;&#x662F;&#x5E7B;&#x60F3;</title>
        <link>https://joomaen.sol.build/0A828002-09F6-4DD9-BE38-35AD41028A40/</link>
        <guid>https://joomaen.sol.build/0A828002-09F6-4DD9-BE38-35AD41028A40/</guid>
        <pubDate>Tue, 01 Nov 2022 09:51:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>我是在2018年的夏天认识她的，那时候她还小，我还不太成熟。</p> 
<p>现在已经是2021年3月7日了，回想起来，时间是很快的，我都搞不懂它是怎么从我们身边悄悄溜走，顺便带走了关于我们的一切。近三年的时间，流逝的毫无感触，只是在最近开始想起，想起那段往事，那些藏在脑海中最深处的画面。尽管都像是被清扫过一样，但仍然能从中搜索出些许蛛丝马迹。</p> 
<p>众所周知的是，人都是健忘的，总是不能记起生活中的点滴，但我开始发现，其实那些所谓被遗忘的，只是藏在某个平时触及不到的地方，等待着再次被发掘，被开启，就像古墓中的文物一般，时隔很久，也依然期待着被挖掘，期待着重见天日。他们仿佛是有生命的一般，希望被记起，又像被冷落的妃子，期盼着再次被宠幸。</p> 
<p>关于她，我能记得大概的几次交谈，但开始的情景和后来的淡然，我却无法得到答案。我开始埋怨自己，怪自己没能留住这个心灵相通的知己。</p> 
<p>她是个开朗的人，尽管我无法用具体的事件来说明，但我那模糊的印象让我知晓。和她交谈甚是快乐，经常会因兴起而忘却时间。她也很简单，简单的生活，没有其他人那样工于心计。</p> 
<p>她总是早起，用劳动开始新的一天。我记得有一次，我被迫起床学习，正在和自己的困意挣扎，她打来电话，说她今天和父亲去公园的墓地除草，她说父亲教她开除草机，她已经完成了一大片。</p> 
<p>她是个很平常的人，长相很平常，也没有什么过人的优点。我之所以对她怀念，是因为她是我心目中想成为的那种人。说她没有优点，只能说明她没有都什么特长，就是个普普通通的小女生。但她对待每一件事都很认真，不会因为自己不擅长就去逃避。对于困难的事，她总是跃跃欲试，结果也不会很差。</p> 
<p>有一次见面，她给我看她编的一条手链，很复杂。她说这叫友谊链，还教我英文的叫法。可我总学不会。后来她带走了那条手链，她说她还要再编一条，这条有点丑。到现在我也没看到她的新作品。</p> 
<p>她是个混血，妈妈是中国人，爸爸是美国人。第一次见她就被她流利的英文发音震撼，小小的年纪，近似母语的发音。后来一直和她用中文讲话，她也偶尔教我些冷门的美国俚语，我后来都忘了。</p> 
<p>她小我两岁，却和我聊得很对路。没有什么固定的话题，但什么都能聊得起来。我告诉她我在看《了不起的盖茨比》这本书，没想到她也很喜欢，我们聊了很多关于这个，仿佛我们是从小就认识一样。</p> 
<p>后来，也就是她离开中国，返回美国后，我们再也没见过，唯一的联系仅是在刚巧我们都空闲时打个电话，依旧是没什么刻意的话题，很开心的聊天。</p> 
<p>一个人的生活中突然消失了某个人，开始会不习惯，但经过那时间的软磨硬泡，终究才发现，没有了那个人生活还是一样，自然会有其他人来取代，取代那个人在生活中的位置，但心里的位置，怎能轻易被取代？</p> 
<p>时过境迁，往事也逐渐蜕变，我也渐渐沉迷在现实中，和她的记忆，逐渐被埋藏起来，像是有一个技艺高超的小偷将这段回忆偷走，但他并没走远，只是待在身边某个角落看着你，仿佛在搞一个无聊的恶作剧一般看你是否会发现并去寻找。</p> 
<p>我是那种比较“懒”的人，并不喜欢一路狂奔，而是会不时回头，看看自己有没有在路途中丢失什么。所以我时不时还会想起她，就像我想起小时候夏天在外婆家躺在炕边吹着屋外自然刮进来的风那样，回想我和她相遇时发生过的点滴小事，甚至会不自觉泛起笑意。</p> 
<p>这两三年来，我想起过她很多次，但都没有去联系她（其实我换了手机后没了她的电话，用微信联系过她一次，没有等到回音），可能是我内心深处已经认为我们两个是不同世界的人，没有我她的生活也很快乐，去主动联系她反而是对她的一种打扰。因此我想起很多次也不过是自己回忆一下当时场景，毕竟往日两位少年已不再，只剩今日那位少年，不知远方的你能否记得起我，还能否忆起当时的欢乐呢？</p> 
<p>今年三月，我在被困在琐事的烦恼之中无法摆脱，不觉又回忆起来那模糊的身影，我又一次打开了微信，她从没有发过朋友圈，在一年多之前我发的消息没收到回复后，都几乎打消了这个念头，以为这辈子不可能再有交集，但我还是往这个账号发了消息，我自己知道肯定没人回复，发这个不过是自己一种自作多情罢了。</p> 
<p>打了个hello，再发了一句＂还记得我吗？＂就关了手机，之后又为琐事忙来忙去，忘掉了这件事。晚上熬到很晚，一点才准备睡觉，刚放下手机，它又亮了起来，我还纳闷谁这么晚还会给我发消息，我一想不可能啊，就睡了过去。</p> 
<p>第二天早上要上课，不得已早起，洗完脸想起昨晚的消息，看了看我吃了一惊，她回复我了，仅仅一个HELLO，便足以让回忆泛起波澜。我急忙回复她：</p> 
<p>“还记得我吗？”</p> 
<p>无回复。</p> 
<p>过了两天，她又发来信息：“你是谁啊，不好意思不记得了。“</p> 
<p>“我记得你啊，你曾告诉我你是个混血儿，有一半中国血统。“</p> 
<p>她这次回复很快：“啊？“</p> 
<p>“我说的对吗？“</p> 
<p>“不完全对，或许只是对了一半。”</p> 
<p>我有点莫名其秒，难道我认错人了，但这头像是她没错啊。</p> 
<p>她接着说：“我不是混血，我是中国人，我的养父母是美国人，我五六岁就被带到了美国。”</p> 
<p>我听着有点不可思议，觉得那可能是她以前就骗了我。我问她：“那你在几年前就是那样告诉我的呀。”</p> 
<p>“是吗，我都不记得你.”她又一次重复她并不认识我，不像是在骗人。</p> 
<p>难道是我的记忆出了问题，或许是什么原因导致她失忆了，说不定是我。不，我好好的，除了这件事，其他我都记得，而且是正确的。那就是她的问题，但她好像很无辜的样子，好像真的不记得我了。</p> 
<p>我就像陌生人那样跟她聊了几句，结束了这场对话。现在比起和她聊天更加吸引我的是这件事本身以及她这个人，仿佛我曾经清晰记得的美好记忆刚被发掘出来就模糊了，仿佛是不能见到阳光的珍贵文物，重见天日后反而遭到破坏。</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x522B;&#x4EBA;&#x7684;&#x53E3;&#x662F;&#x5FC3;&#x975E;&#x4E0E;&#x6211;&#x65E0;&#x5173;</title>
        <link>https://joomaen.sol.build/3538804B-65F8-40C5-9947-D205A2509E48/</link>
        <guid>https://joomaen.sol.build/3538804B-65F8-40C5-9947-D205A2509E48/</guid>
        <pubDate>Fri, 01 Apr 2022 09:52:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>有个朋友很是口是心非，他高中时喜欢过一个女生，很是痴情，表白好几次，女生没有直接同意，但也没有狠心拒绝，就这么尴尬的相处着，当时在同个班，抬头低头都能见到。这个朋友也没有明确的态度，依旧会给女生带她爱吃的黄焖鸡米饭，厚着脸皮跟她有一句没一句的聊天。当时我们都觉得这样下去不是个办法，得帮帮他。</p> 
<p>有人说追女生就要直接上手，不能拐弯磨脚，他信了。在最后一节晚自习下课后在教学楼下堵她，强行的要她跟他去小树林散步，当时很年少，大家喜欢一起行动，就四五个男生过去追着那女生，是帮兄弟得到爱情。那女生和她闺蜜一起走着，很无助的样子。</p> 
<p>他追到了，但只是追到了，女生很不情愿的被他抱了起来，我们在那围观。他把女生报下了楼，女生在反抗，他一直不停的对女生说她是真的喜欢她，终于女生挣脱了，跑回了宿舍。</p> 
<p>这样追女生当然是不行的，只会让女生反感，我只觉得按当时那个场景，好像大型犯罪现场。</p> 
<p>最终他没有追到哪个女生，他放弃了，他又不甘心。</p> 
<p>他开始让我们都删掉那个女生QQ，说这样的女生不好，我没删，我不太了解她，但我觉得他说的有点极端了。以后的很长一段时间里，他还会时不时的谈起她，我真心觉得他还没有放下那个女生，他对谁都说那女生不好，但他自己却会偷偷观察她，看她有没有和其他人谈恋爱。</p> 
<p>没多久，那女生和一个低我们一级的男生恋爱了，我朋友看不下去了，他说想把那男生打一顿，我问他你为什么会这样想，他说和他没什么关系了，但他就是看着不爽。</p> 
<p>我终于明了，他始终没有放下她，尽管知道这是段不可能有结果的感情，但在他心里也已生长了很久，就算连根拔起，那个位置留下的空洞不会消失。</p> 
<p>说他口是心非一点也不假，但这完全没有嘲笑或者看不起他，我是同情他放不下，不想他一直在这痛苦中走不出来。他不让我们加那个女生，但他自己却是加了又删，好几次了。他说他只是想听听她会说些什么，我笑了，我直接一句“你就是想加她”让他没话可说。</p> 
<p>我想有些事自己知道就好，毕竟他想干嘛也只有他自己知道，尽管我所看到的就是这样，那也没必要说的清楚。旁观者自清，但不是当居者，又怎能体会那份复杂与苦涩呢？</p> 
<p>多一点理解，留一点尊严，才会是最好的结局吧。</p> 
<p>有个朋友很是口是心非，他高中时喜欢过一个女生，很是痴情，表白好几次，女生没有直接同意，但也没有狠心拒绝，就这么尴尬的相处着，当时在同个班，抬头低头都能见到。这个朋友也没有明确的态度，依旧会给女生带她爱吃的黄焖鸡米饭，厚着脸皮跟她有一句没一句的聊天。当时我们都觉得这样下去不是个办法，得帮帮他。</p> 
<p>有人说追女生就要直接上手，不能拐弯磨脚，他信了。在最后一节晚自习下课后在教学楼下堵她，强行的要她跟他去小树林散步，当时很年少，大家喜欢一起行动，就四五个男生过去追着那女生，是帮兄弟得到爱情。那女生和她闺蜜一起走着，很无助的样子。</p> 
<p>他追到了，但只是追到了，女生很不情愿的被他抱了起来，我们在那围观。他把女生报下了楼，女生在反抗，他一直不停的对女生说她是真的喜欢她，终于女生挣脱了，跑回了宿舍。</p> 
<p>这样追女生当然是不行的，只会让女生反感，我只觉得按当时那个场景，好像大型犯罪现场。</p> 
<p>最终他没有追到哪个女生，他放弃了，他又不甘心。</p> 
<p>他开始让我们都删掉那个女生QQ，说这样的女生不好，我没删，我不太了解她，但我觉得他说的有点极端了。以后的很长一段时间里，他还会时不时的谈起她，我真心觉得他还没有放下那个女生，他对谁都说那女生不好，但他自己却会偷偷观察她，看她有没有和其他人谈恋爱。</p> 
<p>没多久，那女生和一个低我们一级的男生恋爱了，我朋友看不下去了，他说想把那男生打一顿，我问他你为什么会这样想，他说和他没什么关系了，但他就是看着不爽。</p> 
<p>我终于明了，他始终没有放下她，尽管知道这是段不可能有结果的感情，但在他心里也已生长了很久，就算连根拔起，那个位置留下的空洞不会消失。</p> 
<p>说他口是心非一点也不假，但这完全没有嘲笑或者看不起他，我是同情他放不下，不想他一直在这痛苦中走不出来。他不让我们加那个女生，但他自己却是加了又删，好几次了。他说他只是想听听她会说些什么，我笑了，我直接一句“你就是想加她”让他没话可说。</p> 
<p>我想有些事自己知道就好，毕竟他想干嘛也只有他自己知道，尽管我所看到的就是这样，那也没必要说的清楚。旁观者自清，但不是当居者，又怎能体会那份复杂与苦涩呢？</p> 
<p>多一点理解，留一点尊严，才会是最好的结局吧。</p>
        ]]></description>
    </item>
    
    <item>
        <title>&#x5E7B;&#x68A6;</title>
        <link>https://joomaen.sol.build/1DF08ED7-6746-4265-A669-463D0BA516E5/</link>
        <guid>https://joomaen.sol.build/1DF08ED7-6746-4265-A669-463D0BA516E5/</guid>
        <pubDate>Thu, 31 Mar 2022 11:46:00 +0800</pubDate>
        
        
        <description><![CDATA[
            <p>文/joomaen</p> 
<p>收录在<a href="https://www.elanp.com/article/191284.html">倚栏轩 记忆故事（精选20篇）</a></p> 
<p>我是基民，一个失败的大学生。再剩下两天我就要经历一个重要的考试，有多重要，大概就是如果挂科了就会留级，这简直不能接受。我狠心复习，但没有学会何谈复习？我悲痛、烦恼、苦闷，一堆负面情绪在我脑子里面起冲突，我还怎能好好学习？</p> 
<p>就在昨晚，我做了个梦，也可能不是梦，或许是我的幻想。那是个漫长且复杂的梦，我梦到自己穿越了，在考试的前两天，充满焦虑的我突然带着记忆回到了初中，准确说是初一。因为我初中曾转过三个学校，这是第一个。</p> 
<p>我印象中的好友都还在，奥林还是那么喜欢欺负别人，创还是不帅且自恋，若寒依旧帅。我这时候可能还不认识若寒，他和我不是同一个小学毕业，记忆中和他之后成了朋友，这个时间可能还不熟。这一切和我记忆中完全一样，我悄悄掐了自己大腿一下，这是真的（也不知道为什么梦中还会有痛觉）。</p> 
<p>我依旧和他们玩耍，但在学习上，我很会。就算有的遗忘也稍微听下思考下就明白。在这个小小的只有两个班的七年级排名第一，家人很高兴。我和朋友们也玩的很正常，我比他们知道的多很多，经常给他们讲些奇奇怪怪知识，人缘相当好。至此还没人发觉我有异常，我也不说出来，他们肯定不会信的。</p> 
<p>其实说实话我还有点后悔，虽然一切都可以重来，但我的记忆还在，那些麻烦的痛苦的事情都还得再经历一次，这次我想尽可能避免。</p> 
<p>很快，快一年过去了，要到初二了。记忆中我是要离开外婆家，回到妈妈身边，去那个更小的初中读书。可这次不同的是，我成绩很好，妈妈也给了我选择的权力—其实之前也可以选，我喜新厌旧选了转学—在记忆中对比一番，我选择不转学。可只有我知道，这个初中也只能再上一年了。</p> 
<p>初二时，开始和记忆中有了区别，这也是我想看到的改变。由于继续再这所学校读书，老师自然是没换。成功让这个班主任教了我两年。而且初二我的一位好朋友也转了回来，他本是我小学同学，初一去了他姑姑在的临县中学，或许是他妈妈觉得私立学校不好，就又给转了回来。我本想劝他不要转，一来麻烦，二来这学校明年就要倒闭。可我没有，我还是只顾自己就好，我怕弄巧成拙，从我穿越回来的时候，一切都不一样了，说不定它还能多挺一年。</p> 
<p>再学校里，课间我就和创、若寒他们讲笑，对别人评头论足，这样很有趣，即使我已经有了二十岁的成熟，但还是乐此不疲。放学后我和奥林去山上玩，去挖别人的坟，奥林还吓唬我说，在月圆之夜秦始皇就会复活，让我跪下对着山洞磕头，上一次我唯唯诺诺，跪了，这次没有。哼，吓唬谁呢！</p> 
<p>那时的时间过得很慢，我挑重点讲。</p> 
<p>初二完了，学校没有像我预期的保留下来，这是政府的命令，我也改变不得。</p> 
<p>记忆中初三我去了那个离家远远的私立中学，当时是说好免学费妈妈才让我去的。这次那个地中海的年纪主任依旧找到我家，我的成绩更好了，连住宿费也免了。</p> 
<p>去了学校我完全不像当初般紧张内向，全是熟人，我轻车熟路地住进宿舍和他们聊天，就像本来就认识他们一样。</p> 
<p>记忆中我是再初三学会了抽烟，导致我在大学三天一包，浪费钱还伤身体。还有我腰椎间盘突出，好像就是在初三体育考试训练时开始的。这些都得注意。我有着记忆，生活的很是轻松。唯一让我犯难的就是那个女生。</p> 
<p>在我上一次初三时认识她，我数学学的好，她借我的作业抄，她很外向开朗，那时怪我太内向，不敢打招呼，只能到处打听她的名字，在班群中找到她，和她QQ聊天。当时我只会在QQ聊，聊熟了现实中也不敢打招呼。想到这我就生气，于是在正式开课第一天早读刚下，我就去找她。我喊她的名字，她很惊讶。唉，现在的我，依然不知如何开场。还好她活泼开朗主动，问我的名字，我才反应过来：我认识她她不认识我。聊的多了就不尴尬了，我还讲出许多关于她的事，她很喜欢和我聊天。我们成了好朋友。</p> 
<p>到了要中考的时候，我丝毫不慌，还常常给她讲题，我俩都考得很好。</p> 
<p>这时候依旧没有偏离剧本，反而更加符合。我俩考的很好，比上一次都好。顺理成章的被县里私立中学给看中，由于这段没有修改什么，都是按照记忆来的。她在我隔壁班，之前还很伤心，现在完全不，有了感情基础就是很开心。她的班主任是那个搔牛的中年男人，我的班主任我还比较喜欢，在他不发飙的时候。</p> 
<p>这时候一些重要的人要出场了，那一次认识他们是在高二，他们总嫌我加入组织太晚了。得了，我现在就去，什么，现在还没有组织？那我就是织佬。我去和砍头子、邪神、黑鬼、丹斯这些人玩，这也是必然的，其他人我感觉不配和我做朋友。</p> 
<p>高中都喜欢谈恋爱，可过来人的想法让我打消了这个念头，我觉得现在这样朋友之上的状态很不错，只是差个称谓。（这在我大学时被称为“朋上情下”）</p> 
<p>现在的我不会顾别人的眼光和议论，我经常在晚自习下去找她，就和YY去找砍头子一样，一起回宿舍、一起逛超市。真希望可以一直这样。</p> 
<p>高一时班里有个大好几岁的同学，当时很喜欢他的生活方式，他也很帅，感觉和我们不太一样。现在我懂了，这是不属于这个年纪的成熟。现在的我，也差不多这样，只是身体跟不上思想。我邀请他加入组织，成为另一个织佬。</p> 
<p>出过一个意外，有天我和她吵架了，这可是从没有过的，可能是在一起太久了的缘故。她说我像个中年人，她喜欢小正太。我又在记忆中找到了她曾经的那个恋爱对象。思想斗争了好久，加上这么久的相处，我决定告诉她真相。我说我是穿越来的，我说上次我错过你了，我说我真的很喜欢你，我到大二都还没女朋友，我说你曾经谈过两个都分了，我说我就是为了你才来的……</p> 
<p>我说了好多，她信了。她相信我是穿越的，也相信我是真的深爱她。</p> 
<p>高中生活比初中快很多，转眼高考了。</p> 
<p>我又开始担心起来，我不想和她分开，我想到大学让她做我女朋友，一起吃饭、一起上课、一起去学校附近的大酒店学习。</p> 
<p>我一收懒散，开始学习，对我来说算是复习，这比高中补考都简单。我俩好好学习，我告诉她，曾经没在一个大学，这次一定要一样。成绩出来，我比她高3分，比我自己之前高十几分。可能我的上限就在这了。我让她报什么学校告诉我，我填一样的。甚至我还告诉砍头子也跟我一样，他曾说过。但我怕这三份之差会使我们不同，还好上天眷顾，我俩还在一起。</p> 
<p>突然间，我感到一阵困意，是那种刚睡醒的不想睁眼的感觉。我以为是我的使命完成了，可以好好享受人生，从新来过。我的眼神渐渐模糊，耳边传来一个外地中年男人的口音：空调出什么问题了？我睁开眼，原来是昨天找的修空调师傅来了。过了几秒，我才意识到不对劲，他妈的刚才那是场梦，我做梦太过投入，连早八课都没去。操！！</p>
        ]]></description>
    </item>
    
</channel>
</rss>
