<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0"><channel><title>bbb-lsy07</title><link>https://blog.tsoo.net</link><atom:link href="https://blog.tsoo.net/rss.xml" rel="self" type="application/rss+xml"/><description>科技激荡人文，洞见智慧本真。</description><generator>Halo v2.24.0</generator><language>zh-cn</language><image><url>https://blog.tsoo.net/upload/lsyb.png</url><title>bbb-lsy07</title><link>https://blog.tsoo.net</link></image><lastBuildDate>Sun, 19 Apr 2026 08:59:18 GMT</lastBuildDate><item><title><![CDATA[首次备案成功并进行服务器迁移小记]]></title><link>https://blog.tsoo.net/archives/shou-ci-bei-an-cheng-gong-bing-jin-xing-fu-wu-qi-qian-yi-xiao-ji</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E9%A6%96%E6%AC%A1%E5%A4%87%E6%A1%88%E6%88%90%E5%8A%9F%E5%B9%B6%E8%BF%9B%E8%A1%8C%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%81%E7%A7%BB%E5%B0%8F%E8%AE%B0&amp;url=/archives/shou-ci-bei-an-cheng-gong-bing-jin-xing-fu-wu-qi-qian-yi-xiao-ji" width="1" height="1" alt="" style="opacity:0;">
<p style="">本站在今日（20260327）已成功完成网站ICP备案！</p>
<h2 style="" id="%E5%A4%87%E6%A1%88%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%A4%87%E6%A1%88%EF%BC%9F">备案是什么？为什么要备案？</h2>
<p style="">ICP备案，全称“互联网信息服务备案”，是中国互联网管理的一项必要措施。通俗来说，就是网站在中国大陆境内运营前，需要向国家相关部门登记备案，证明你拥有这个网站的合法运营权。</p>
<p style="">对于普通用户而言，备案并不复杂，但它对网站的稳定性和远距离访问体验有着重要影响。备案完成后，你的网站可以使用中国大陆的服务器和大陆CDN加速服务，这意味着访问速度更快、响应更及时，同时也提升了网站的安全性和可用性。</p>
<p style="">今天，本站终于顺利完成了这项重要工作，这是我第一次进行网站备案。备案成功后，应该会为用户带来更好的体验。</p>
<h2 style="" id="%E5%A4%87%E6%A1%88%E5%AE%8C%E6%88%90%E5%90%8E%EF%BC%8C%E7%BD%91%E7%AB%99%E8%AE%BF%E9%97%AE%E4%BD%93%E9%AA%8C%E5%B0%86%E5%A6%82%E4%BD%95%E6%8F%90%E5%8D%87%EF%BC%9F">备案完成后，网站访问体验将如何提升？</h2>
<p style="">通过ICP备案，网站将能够使用中国境内服务器以及CDN（内容分发网络）服务。什么是CDN呢？CDN可以理解为一种“网络加速器”，它会将网站的内容存储在离用户更近的服务器上，从而减少访问延迟，提高加载速度。</p>
<p style="">例如，如果你位于中国大陆，访问一个使用中国CDN的网站，数据传输路径会变得更加直接，访问速度会更快。而过去，由于我们可能没有启用本地CDN或服务器，用户在访问时可能会遇到网络延迟、加载慢等问题。</p>
<p style="">备案完成后，我们将在后台配置更优的服务器节点，并启用CDN服务，这将大大优化用户访问体验，无论是加载速度还是稳定性都将得到显著提升。</p>
<h2 style="" id="%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%91%E6%9C%9F%E7%BD%91%E7%AB%99%E5%87%BA%E7%8E%B0%E8%AE%BF%E9%97%AE%E9%97%AE%E9%A2%98%EF%BC%9F">为什么近期网站出现访问问题？</h2>
<p style="">在备案期间，所有域名解析信息都被取消。</p>
<p style="">我知道，这会给用户带来一定的困扰，特别是在你刚进入网站时，可能发现它在努力加载却无法完成。这种现象是正常的，是备案流程中的一个环节。</p>
<p style="">但很庆幸的是，无法访问的天数仅有3天，这3天里我完成了服务器迁移以及域名备案。</p>
<p style="">若您在近期将我们的友链加入了“失联”或“未备案”分组，烦请移除并重新归类。</p>
<h2 style="" id="%E5%A4%87%E6%A1%88%E5%90%8E%E7%9A%84%E6%9C%AA%E6%9D%A5%E8%A7%84%E5%88%92">备案后的未来规划</h2>
<p style="">ICP备案只是技术优化的起点。由于学业原因，近期对网站管理少之又少，时间充裕之时会再进行调整，目前状态也就能维持「可用」。</p>
<h2 style="" id="%E5%A6%82%E4%BD%95%E6%9F%A5%E8%AF%A2%E5%A4%87%E6%A1%88%E7%8A%B6%E6%80%81%EF%BC%9F">如何查询备案状态？</h2>
<p style="">如果您对我们备案后的网站有任何疑问，或者想了解最新的网络配置情况，可以通过以下方式查询：</p>
<ul>
 <li>
  <p style="">访问工信部官网，输入域名查询备案进度（如你所见，网站右下角已经按要求添加了备案信息）。</p>
 </li>
</ul>
<h2 style="" id="%E7%BB%93%E8%AF%AD">结语</h2>
<p style="">完成ICP备案是我这个网站的一次重要成长。</p>
<p style="">未来，我们将继续优化网站的技术和服务，希望能为您带来更高效、更安全、更优质的使用体验。</p>
<p style="">感谢您的陪伴，我们期待与您一起见证这个网站的进一步发展。</p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/shou-ci-bei-an-cheng-gong-bing-jin-xing-fu-wu-qi-qian-yi-xiao-ji</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20260327233643744.webp&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Fri, 27 Mar 2026 15:39:24 GMT</pubDate></item><item><title><![CDATA[OpenClaw + 1Panel 快速部署-搭建你的专属 AI 助理]]></title><link>https://blog.tsoo.net/archives/openclaw-1panel-kuai-su-bu-shu-da-jian-ni-de-zhuan-shu-ai-zhu-li</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=OpenClaw%20%2B%201Panel%20%E5%BF%AB%E9%80%9F%E9%83%A8%E7%BD%B2-%E6%90%AD%E5%BB%BA%E4%BD%A0%E7%9A%84%E4%B8%93%E5%B1%9E%20AI%20%E5%8A%A9%E7%90%86&amp;url=/archives/openclaw-1panel-kuai-su-bu-shu-da-jian-ni-de-zhuan-shu-ai-zhu-li" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">在AI大模型时代，拥有一个专属的AI交互界面已成为刚需。然而，公有云服务常面临隐私泄露、API调用限制或网络不稳定等问题。若你正在寻找一款既能集成多家模型、支持自托管、又具备优雅界面的AI网关，OpenClaw无疑是理想之选。作为一款开源、可自托管的个人AI助手，OpenClaw不仅兼容DeepSeek等强大的国产大模型，还通过精美的仪表盘实现对多个AI通道的高效管理。借助1Panel这款国产Linux面板，用户可轻松摆脱复杂的命令行操作，通过可视化界面完成容器化部署、域名反向代理及SSL证书申请，极大简化运维流程。</p>
<p style="line-height: 21px"><strong>本教程你将学到：</strong></p>
<ol>
 <li>
  <p style="line-height: 21px">如何在 1Panel 应用商店一键安装 OpenClaw。</p>
 </li>
 <li>
  <p style="line-height: 21px">如何正确配置 DeepSeek API 以及相关模型参数。</p>
 </li>
 <li>
  <p style="line-height: 21px">如何在配置文件中找回 Token 并完成 Web 端验证。</p>
 </li>
 <li>
  <p style="line-height: 21px">如何利用 1Panel 的网站管理功能，实现安全的外网访问（HTTPS）。</p>
 </li>
</ol>
<p style="line-height: 21px">Let's go!</p>
<p style="line-height: 21px"></p>
<h2 style="" id="%E8%A7%86%E9%A2%91%E6%95%99%E7%A8%8B%EF%BC%9A">视频教程：</h2>
<hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV1Bpf3BVEgn" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV1Bpf3BVEgn" target="_blank">https://www.bilibili.com/video/BV1Bpf3BVEgn</a></hyperlink-card>
<p style="line-height: 21px">不知为何视频被b站和谐了，且后台无任何查看视频状态的地方，最近没有时间就不补档了。</p>
<p style="line-height: 21px"></p>
<h2 style="" id="%E9%83%A8%E7%BD%B2%EF%BC%9A">部署：</h2>
<h3 style="" id="1.%E5%AE%89%E8%A3%851panel%E9%9D%A2%E6%9D%BF">1.安装1Panel面板</h3>
<p style="line-height: 21px">准备一台服务器，推荐使用<a href="https://u.tsoo.net/EZzdZ" target="_blank" rel="">核云</a>或<a href="https://u.tsoo.net/76rSh" target="_blank" rel="nofollow">雨云</a>，安装1Panel面板（<a href="https://blog.tsoo.net/archives/bao-ta-1panelmian-ban----an-zhuang-ji-ben-shi-yong" target="_blank" rel="">安装1Panel面板教程</a>）：</p>
<h3 style="" id="2.1panel%E5%AE%89%E8%A3%85openclaw">2.1Panel安装OpenClaw</h3>
<p style="">进入1Panel面板搜索安装<code>OpenClaw</code></p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_16.44.52.png&amp;size=m" alt="iShot_2026-02-09_16.44.52.png" width="3490px">
</figure>
<p style="">请根据图示内容填写服务商信息、API密钥及具体模型</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_16.55.56.png&amp;size=m" alt="iShot_2026-02-09_16.55.56.png" width="2684px">
</figure>
<h3 style="" id="3.%E6%9F%A5%E7%9C%8Btoken">3.查看token</h3>
<p style="">安装后如图进入安装目录</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.05.16.png&amp;size=m" alt="iShot_2026-02-09_17.05.16.png" width="75%" height="auto">
</figure>
<p style=""></p>
<p style=""></p>
<p style="">进入安装目录后，需进一步进入 <code>data/conf</code> 目录，并打开 <code>opencalaw.json</code> 文件，请复制图中所示的字符并保存</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.08.21.png&amp;size=m" alt="iShot_2026-02-09_17.08.21.png" width="75%" height="auto">
</figure>
<h3 style="" id="4.1panel%E5%AE%89%E8%A3%85openresty%E5%B9%B6%E5%8F%8D%E4%BB%A3%E5%BA%94%E7%94%A8">4.1Panel安装OpenResty并反代应用</h3>
<p style="">安装<code>OpenResty</code>与安装<code>OpenClaw</code> 步骤几乎一致，就不再演示</p>
<p style="">进入网站，点击“创建网站”，选择刚才安装的应用并配置域名。</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.08.22.png&amp;size=m" alt="iShot_2026-02-09_17.08.22.png" width="3490px">
</figure>
<h3 style="" id="5.%E7%94%B3%E8%AF%B7ssl%E8%AF%81%E4%B9%A6">5.申请SSL证书</h3>
<p style="">进入证书管理界面，选择刚才添加的网站以申请SSL证书</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.22.51.png&amp;size=m" alt="iShot_2026-02-09_17.22.51.png" width="3490px">
</figure>
<p style="">配置刚才申请的证书到对应网站即可</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.24.24.png&amp;size=m" alt="iShot_2026-02-09_17.24.24.png" width="75%" height="auto">
</figure>
<h3 style="" id="6.-%E9%85%8D%E7%BD%AEtoken%E5%8F%82%E6%95%B0">6. 配置token参数</h3>
<p style="">打开刚才从应用商店安装的应用，点击“参数”选项，按照“https://你的域名/?token=你刚才从文件中保存的字符”的格式填写并保存。</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.28.06.webp&amp;size=m" alt="iShot_2026-02-09_17.28.06.png" width="3478px">
</figure>
<p style="">设置好后即可快速打开使用</p>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.30.21.png&amp;size=m" alt="iShot_2026-02-09_17.30.21.png" width="75%" height="auto">
</figure>
<h3 style="" id="7.%E5%B1%95%E7%A4%BA">7.展示</h3>
<figure data-content-type="image" style="display: flex; flex-direction: column;">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FiShot_2026-02-09_17.31.23.webp&amp;size=m" alt="iShot_2026-02-09_17.31.23.png" width="3490px">
</figure>
<h2 style="" id="%E7%BB%93%E8%AF%AD%EF%BC%9A"><strong>结语：</strong></h2>
<p style="">通过以上几个简洁的步骤，我们已经成功在自己的服务器上跑起了 OpenClaw，并接入了 DeepSeek 模型。相比于直接使用官方网页，自托管的 OpenClaw 为我们提供了更高的可操控性和隐私保护，同时也通过 1Panel 解决了证书和安全访问。</p>
<p style="text-align: right">——开启你的私人 AI 时代，就从这一刻开始！</p>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/openclaw-1panel-kuai-su-bu-shu-da-jian-ni-de-zhuan-shu-ai-zhu-li</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20260209200519865.webp&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>电脑使用</category><category>人工智能（ai）</category><category>知识分享</category><pubDate>Mon, 9 Feb 2026 12:06:13 GMT</pubDate></item><item><title><![CDATA[小白硬核建站记系列合集]]></title><link>https://blog.tsoo.net/archives/xiao-bai-ying-he-jian-zhan-ji-xi-lie-he-ji</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E5%B0%8F%E7%99%BD%E7%A1%AC%E6%A0%B8%E5%BB%BA%E7%AB%99%E8%AE%B0%E7%B3%BB%E5%88%97%E5%90%88%E9%9B%86&amp;url=/archives/xiao-bai-ying-he-jian-zhan-ji-xi-lie-he-ji" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E7%B3%BB%E5%88%97%E7%9B%AE%E6%A0%87">系列目标</h2>
<ol>
 <li>
  <p style="">从完全0基础，到拥有一个真正属于自己、永远不宕机、全球飞快、还超好看的个人网站</p>
 </li>
 <li>
  <p style="">用较低成本实现</p>
 </li>
 <li>
  <p style="">视频全程硬核干货，不废话、不广告、不卖课</p>
 </li>
</ol>
<p style=""></p>
<h2 style="" id="%E7%AC%AC%E4%B8%80%E6%9C%9F">第一期</h2>
<h3 style="" id="%E6%96%B0%E6%89%8B%E4%B9%9F%E8%83%BD%E7%A7%92%E6%87%82%EF%BC%9A%E5%9F%9F%E5%90%8D%E8%B4%AD%E4%B9%B0%2Bcloudflare%E6%89%98%E7%AE%A1%E5%85%A8%E6%B5%81%E7%A8%8B"><strong>新手也能秒懂：域名购买+Cloudflare托管全流程</strong></h3>
<thyuu-video src="https://www.bilibili.com/video/BV14PUsBqECv" size=""></thyuu-video><hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV14PUsBqECv" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV14PUsBqECv" target="_blank">https://www.bilibili.com/video/BV14PUsBqECv</a></hyperlink-card>
<p style=""></p>
<h2 style="" id="%E7%AC%AC%E4%BA%8C%E6%9C%9F">第二期</h2>
<h3 style="" id="%E5%AD%A6%E7%94%9F%E5%85%9A%E7%A6%8F%E9%9F%B3%EF%BC%81%E8%B6%85%E4%BE%BF%E5%AE%9C%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%B4%AD%E4%B9%B0%2B%E5%AE%9D%E5%A1%94%E9%9D%A2%E6%9D%BF%E4%BF%9D%E5%A7%86%E7%BA%A7%E5%AE%89%E8%A3%85"><strong>学生党福音！超便宜服务器购买+宝塔面板保姆级安装</strong></h3>
<thyuu-video src="https://www.bilibili.com/video/BV1TAUsBMEox" size=""></thyuu-video><hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV1TAUsBMEox" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV1TAUsBMEox" target="_blank">https://www.bilibili.com/video/BV1TAUsBMEox</a></hyperlink-card>
<p style=""></p>
<h2 style="" id="%E7%AC%AC%E4%B8%89%E6%9C%9F">第三期</h2>
<h3 style="" id="%E5%AE%9D%E5%A1%94%E9%9D%A2%E6%9D%BF5%E5%88%86%E9%92%9F%E4%B8%80%E9%94%AE%E9%83%A8%E7%BD%B2wordpress%EF%BC%81%E4%BB%8E%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%88%B0%E5%8D%9A%E5%AE%A2%E5%85%A8%E6%90%9E%E5%AE%9A"><strong>宝塔面板5分钟一键部署WordPress！从服务器到博客全搞定</strong></h3>
<thyuu-video src="https://www.bilibili.com/video/BV17uUNBaEPd" size=""></thyuu-video><hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV17uUNBaEPd" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV17uUNBaEPd" target="_blank">https://www.bilibili.com/video/BV17uUNBaEPd</a></hyperlink-card>
<p style=""></p>
<h2 style="" id="%E7%AC%AC%E5%9B%9B%E6%9C%9F">第四期</h2>
<h3 style="" id="%E4%B8%8D%E6%83%B3%E8%A2%ABwordpress%E6%8B%96%E5%90%8E%E8%85%BF%EF%BC%9F%E6%9D%A5%E8%AF%95%E8%AF%95halo"><strong>不想被WordPress拖后腿？来试试Halo</strong></h3>
<thyuu-video src="https://www.bilibili.com/video/BV1JrUZBnEbD" size=""></thyuu-video><hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV1JrUZBnEbD" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV1JrUZBnEbD" target="_blank">https://www.bilibili.com/video/BV1JrUZBnEbD</a></hyperlink-card>
<p style="">【增强】<a href="https://blog.tsoo.net/archives/zhen-zheng-ling-ji-chu-halobo-ke-da-jian-de-ji-jian-zhi-nan-quan-cheng-ui-wu-xu-ming-ling" target="_blank" rel="">用更低价格实现halo博客文章</a></p>
<p style=""></p>
<h2 style="" id="%E7%AC%AC%E4%BA%94%E6%9C%9F">第五期</h2>
<h3 style="" id="0%E6%9C%8D%E5%8A%A1%E5%99%A80%E6%88%90%E6%9C%AC%EF%BC%81cloudflare-r2%E5%AF%B9%E8%B1%A1%E5%AD%98%E5%82%A8%E5%8F%98%E8%BA%AB%E5%9C%A8%E7%BA%BF%E7%BD%91%E7%9B%98">0服务器0成本！Cloudflare R2对象存储变身在线网盘</h3>
<p style=""><em>本期为互动视频，需要前往bilibili访问该视频才能获得最佳体验！</em></p>
<thyuu-video src="https://www.bilibili.com/video/BV1xs6SBDECY" size=""></thyuu-video><hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV1xs6SBDECY" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV1xs6SBDECY" target="_blank">https://www.bilibili.com/video/BV1xs6SBDECY</a></hyperlink-card>
<p style=""></p>
<h2 style="" id="%E7%AC%AC%E5%85%AD%E6%9C%9F">第六期</h2>
<h3 style="" id="5%E5%88%86%E9%92%9F%E6%90%9E%E5%AE%9A%E4%B8%AA%E4%BA%BAai%E5%8A%A9%E7%90%86%EF%BC%811panel%E4%B8%80%E9%94%AE%E9%83%A8%E7%BD%B2openclaw">5分钟搞定个人AI助理！1Panel一键部署OpenClaw</h3>
<thyuu-video src="https://www.bilibili.com/video/BV1Bpf3BVEgn" size=""></thyuu-video>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/xiao-bai-ying-he-jian-zhan-ji-xi-lie-he-ji</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251221111438437.webp&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>电脑使用</category><category>人工智能（ai）</category><category>知识分享</category><pubDate>Sun, 21 Dec 2025 03:15:50 GMT</pubDate></item><item><title><![CDATA[河南研学记录]]></title><link>https://blog.tsoo.net/archives/he-nan-yan-xue-ji-lu</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E6%B2%B3%E5%8D%97%E7%A0%94%E5%AD%A6%E8%AE%B0%E5%BD%95&amp;url=/archives/he-nan-yan-xue-ji-lu" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">距离上次研学已过去半年，不负期待，新的研学活动终于即将启程，此次我们将前往河南。</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-11-07_21-23-32.png&amp;size=m" width="50%" height="auto">
</figure>
<p style=""></p>
<h2 style="" id="bilibili%E8%A7%86%E9%A2%91%E8%AE%B0%E5%BD%95%EF%BC%9A">bilibili视频记录：</h2>
<thyuu-video src="https://www.bilibili.com/video/BV11WC1B1Ek2" size=""></thyuu-video><hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV11WC1B1Ek2" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV11WC1B1Ek2" target="_blank">https://www.bilibili.com/video/BV11WC1B1Ek2</a></hyperlink-card>
<div class="html-edited">
 <style>
    .my-simple-gallery {
        column-count: 3;
        column-gap: 16px;
        width: 100%;
        margin-top: 16px;
    }
    
    .my-simple-gallery img {
        width: 100% !important;
        height: auto !important;
        display: block !important;
        margin: 0 0 16px 0 !important; /* 控制图片上下间距 */
        border-radius: 8px !important; /* 保留一点圆角比较好看 */
        break-inside: avoid !important;
        page-break-inside: avoid !important;
        border: none !important;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    @media (max-width: 600px) {
        .my-simple-gallery {
            column-count: 1 !important;
        }
    }
    
    @media (min-width: 601px) and (max-width: 900px) {
        .my-simple-gallery {
            column-count: 2 !important;
        }
    }
</style>
 <div class="alert-box" style="box-sizing: border-box; background-color: #fffbe6; border-radius: 8px; padding: 8px 12px; margin: 12px 0; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); font-family: inherit; color: #333; font-size: 13px; line-height: 1.5; display: flex; align-items: center; gap: 6px; width: 100%;">
  <span style="font-size: 16px; color: #ffa500; flex-shrink: 0; line-height: 1;">⚠️</span>
  <div style="flex-grow: 1;">
   <strong style="font-weight: 600; color: #222;">加载提示：</strong> 本页面包含大量图片，近期访问量较大导致加载较慢。我们启用单IP限速和高压缩率，可能使图片稍模糊，敬请谅解。
  </div>
 </div>
 <div class="my-simple-gallery">
  <!-- 这里的 data-fancybox="gallery" 是核心，它能阻止主题强行加边框，并支持点击放大查看 -->
  <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620486.webp&amp;size=m" alt="Image 1" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620488.webp&amp;size=m" alt="Image 2" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620489.webp&amp;size=m" alt="Image 3" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620490.webp&amp;size=m" alt="Image 4" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620491.webp&amp;size=m" alt="Image 5" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620492.webp&amp;size=m" alt="Image 6" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620493.webp&amp;size=m" alt="Image 7" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620494.webp&amp;size=m" alt="Image 8" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620495.webp&amp;size=m" alt="Image 9" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620496.webp&amp;size=m" alt="Image 10" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620497.webp&amp;size=m" alt="Image 11" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620498.webp&amp;size=m" alt="Image 12" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620499.webp&amp;size=m" alt="Image 13" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620500.webp&amp;size=m" alt="Image 14" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620501.webp&amp;size=m" alt="Image 15" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620502.webp&amp;size=m" alt="Image 16" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620503.webp&amp;size=m" alt="Image 17" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620504.webp&amp;size=m" alt="Image 18" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620505.webp&amp;size=m" alt="Image 19" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620506.webp&amp;size=m" alt="Image 20" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620507.webp&amp;size=m" alt="Image 21" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620508.webp&amp;size=m" alt="Image 22" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620509.webp&amp;size=m" alt="Image 23" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620510.webp&amp;size=m" alt="Image 24" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620511.webp&amp;size=m" alt="Image 25" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620512.webp&amp;size=m" alt="Image 26" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620513.webp&amp;size=m" alt="Image 27" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620514.webp&amp;size=m" alt="Image 28" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620515.webp&amp;size=m" alt="Image 29" loading="lazy" decoding="async" data-fancybox="gallery"> <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251115210620516.webp&amp;size=m" alt="Image 30" loading="lazy" decoding="async" data-fancybox="gallery">
 </div>
</div>
<h2 style="" id="%E5%9B%BE%E7%89%87%EF%BC%9A">图片：</h2>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/he-nan-yan-xue-ji-lu</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251107213156288.webp&amp;size=m" type="image/jpeg" length="0"/><category>学校</category><category>生活</category><pubDate>Fri, 7 Nov 2025 13:32:54 GMT</pubDate></item><item><title><![CDATA[Zmail + .ip6.arpa 自建永久免费临时邮箱]]></title><link>https://blog.tsoo.net/archives/zmail-.ip6.arpa-zi-jian-yong-jiu-mian-fei-lin-shi-you-xiang</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=Zmail%20%2B%20.ip6.arpa%20%E8%87%AA%E5%BB%BA%E6%B0%B8%E4%B9%85%E5%85%8D%E8%B4%B9%E4%B8%B4%E6%97%B6%E9%82%AE%E7%AE%B1&amp;url=/archives/zmail-.ip6.arpa-zi-jian-yong-jiu-mian-fei-lin-shi-you-xiang" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">在数字时代，<strong>隐私</strong>与<strong>便利</strong>往往是“鱼与熊掌难以兼得”。临时邮箱作为一种“一次性”工具，能让你轻松<strong>注册各种平台</strong>、<strong>薅羊毛</strong>或<strong>测试服务</strong>，而<strong>无需暴露真实邮箱</strong>。但<strong>市面上</strong>的免费临时邮箱服务总有痛点：<strong>域名不稳定</strong>、<strong>时效短暂</strong>，或<strong>服务商随时关停</strong>。更别提那些“永久免费”的承诺，往往藏着<strong>隐形门槛</strong>——<strong>付费升级或数据滥用风险</strong>。</p>
<p style="">想象一下，如果你能用一个<strong>完全属于自己的域名</strong>，搭建一个<strong>真正</strong>“永久免费”的临时邮箱服务？不用担心域名过期或服务中断，还能无缝集成Cloudflare。</p>
<p style="">这不是幻想，通过IPv6反向解析域名<code>.ip6.arpa</code>和开源Zmail程序，就能轻松实现的现实方案。</p>
<p style="">本教程将手把手指导您<strong>从零开始</strong>，利用托管于 Cloudflare 的免费 17 级 <code>.ip6.arpa</code> 域名，通过 <code>Zmail</code> 快速在 Cloudflare 上部署临时邮箱服务。</p>
<blockquote>
 <p style="">本教程不仅限于 .ip6.arpa 域名的部署服务，亦可使用自费域名，但无法达到永久免费的目的。</p>
</blockquote>
<p style=""></p>
<h2 style="" id="%E5%87%86%E5%A4%87%EF%BC%9A">准备：</h2>
<p style="">1. <a href="https://u.tsoo.net/m8LAb" target="_blank" rel="">Cloudflare</a>账号（建议注册新账号，部署本服务时可能需要绑定信用卡，但不会产生费用）</p>
<p style="">2.托管于 Cloudflare 的IPv6反解域名<code>.ip6.arpa</code> ，如果不知道如何注册或托管，参考<a href="https://blog.tsoo.net/archives/mian-fei-huo-de-17ji-yu-ming-bing-qie-tuo-guan-zai-cf----ipv6fan-jie-yu-ming" target="_blank" rel="">这篇文章</a>：</p>
<p style="">3.一个<a href="https://u.tsoo.net/otud6" target="_blank" rel="">Github</a>账号</p>
<p style=""></p>
<h2 style="" id="%E9%83%A8%E7%BD%B2%EF%BC%9A">部署：</h2>
<h3 style="" id="1.cloudflare-worker%E5%A4%8D%E5%88%BB">1.Cloudflare Worker复刻</h3>
<p style="">进入GitHub仓库，下滑点击“Deploy to Cloudflare”按钮（也可以直接点击<a href="https://u.tsoo.net/1m3tG" target="_blank" rel="">这里</a>）</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-18-37.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="2.%E7%BB%91%E5%AE%9Agithub">2.绑定GitHub</h3>
<p style="">因为是新建的账号，点击刚才按钮后跳转页面需要与GitHub连接</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-19-29.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="3.%E5%A1%AB%E5%86%99%E4%BF%A1%E6%81%AF%E5%92%8C%E5%8F%98%E9%87%8F">3.填写信息和变量</h3>
<p style="">连接GitHub后，向下滚动以设置项目名称、创建D1数据（此步骤可能需要绑定卡），并配置环境变量<code>VITE_EMAIL_DOMAIN</code></p>
<blockquote>
 <p style=""><code>VITE_EMAIL_DOMAIN</code> 变量用来填写临时邮箱使用的域名，可以填写多个域名，注意多个域名用英文输入法逗号连接</p>
</blockquote>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-27-08.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="4.%E7%A1%AE%E8%AE%A4%E9%83%A8%E7%BD%B2">4.确认部署</h3>
<p style="">简单填写完后下滑点击“创建和部署”按钮完成创建</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-27-34.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="5.%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%AE%9A%E4%B9%89%E5%9F%9F">5.设置自定义域</h3>
<p style="">上一步骤大约5分钟内部署完成，随后自动进入详细页面，请进入设置中添加一个域（不添加也可以通过默认域名访问，但国内可能访问效果不好）</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-31-49.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="6.%E8%AE%BE%E7%BD%AE%E8%B7%AF%E7%94%B1%E8%A7%84%E5%88%99">6.设置路由规则</h3>
<p style="">返回CF控制台首页，进入填写的域名，配置路由规则</p>
<p style="">点击编辑</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-34-04.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">设置操作“发送到 Worker”并选择目标为刚才创建的Worker名称（比如我创建的是zmail）</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-34-42.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="7.%E5%90%AF%E7%94%A8%E8%B7%AF%E7%94%B1">7.启用路由</h3>
<p style="">点击图中按钮启用刚才设置的规则</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-35-25.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">如果上面有显示黄色提示，表明未完全配置完成路由，点击“启用电子邮件路由”配置dns设置使其添加记录</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_17-36-08.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="8.%E5%A4%A7%E5%8A%9F%E5%91%8A%E6%88%90">8.大功告成</h3>
<p style="">访问域名你就发现已经部署成功了，页面也是非常的好看！</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-26_18-03-42.png&amp;size=m" width="100%" height="100%">
</figure>
<p style=""></p>
<h2 style="" id="%E7%BB%93%E8%AF%AD%EF%BC%9A">结语：</h2>
<p style="">通过这个教程后，恭喜你：</p>
<p style="">通过Hurricane Electric的IPv6隧道获取.ip6.arpa域名、Cloudflare的托管与SSL优化，再加上Zmail的轻量部署，你已成功打造了一个真正“永久免费”的自有临时邮箱系统。</p>
<p style="">当然，完美无缺的事物并不存在。它依赖Cloudflare的生态（访问速度可能受地域影响），且需确保VPS的ICMP响应稳定。</p>
<p style="">如果你在操作中遇到问题，欢迎在评论区分享讨论，或订阅我的推送，一起在科技的浩渺云海中航行！</p>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/zmail-.ip6.arpa-zi-jian-yong-jiu-mian-fei-lin-shi-you-xiang</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251026193021919.webp&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Sun, 26 Oct 2025 11:30:56 GMT</pubDate></item><item><title><![CDATA[搭建VoceChat家庭聊天服务器]]></title><link>https://blog.tsoo.net/archives/da-jian-vocechatsi-ren-liao-tian-fu-wu-qi</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E6%90%AD%E5%BB%BAVoceChat%E5%AE%B6%E5%BA%AD%E8%81%8A%E5%A4%A9%E6%9C%8D%E5%8A%A1%E5%99%A8&amp;url=/archives/da-jian-vocechatsi-ren-liao-tian-fu-wu-qi" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">在某些场景下，我们可能需要自行搭建一个聊天网站。恰好，我发现了一款名为 VoceChat 的开源工具，完全符合需求——界面美观大方，功能齐全，且代码开源，极具实用价值。本篇文章将手把手零基础部署并搭建VoceChat家庭聊天服务器。</p>
<p style=""></p>
<h2 style="" id="%E5%87%86%E5%A4%87%EF%BC%9A">准备：</h2>
<ul>
 <li>
  <p style="">一台服务器（建议配置1核CPU、1GB内存以上），推荐使用<a href="https://u.tsoo.net/Vqf6g" target="_blank" rel="">雨云</a>（享<strong>5折优惠</strong>）</p>
 </li>
</ul>
<p style=""></p>
<h2 style="" id="%E7%8E%AF%E5%A2%83%EF%BC%9A">环境：</h2>
<h3 style="" id="%E5%AE%89%E8%A3%85%E5%AE%9D%E5%A1%94%EF%BC%9A">安装宝塔：</h3>
<h4 style="" id="1.%E5%AE%89%E8%A3%85%E5%AE%9D%E5%A1%94%E9%9D%A2%E6%9D%BF%EF%BC%9A">1.安装宝塔面板：</h4>
<p style=""><a href="https://blog.tsoo.net/archives/bao-ta-1panelmian-ban----an-zhuang-ji-ben-shi-yong" target="_blank" rel="">《安装教程文章》</a></p>
<h4 style="" id="2.%E5%AE%89%E8%A3%85doker%EF%BC%9A">2.安装doker：</h4>
<p style="">一键命令：</p>
<pre><code>yum install docker-ce docker-ce-cli containerd.io</code></pre>
<p style=""></p>
<h2 style="" id="%E9%83%A8%E7%BD%B2%26%E5%AE%89%E8%A3%85%EF%BC%9A">部署&amp;安装：</h2>
<p style="">进入宝塔<code>Docker</code>菜单，搜索<code>VoceChat</code>，点击安装，填写配置信息后继续完成安装</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-18_21-40-18.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">当状态为运行中说明安装完成，访问安装时设置的<strong>域名</strong>或<strong>ip+端口</strong>访问按照提示安装</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-18_21-43-37.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">这样我们的VoceChat家庭聊天服务器就搭建完成了，是不是非常简单！</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-18_21-46-31.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">购买pro仅需49u，让我们一起支持开源项目吧！</p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/da-jian-vocechatsi-ren-liao-tian-fu-wu-qi</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251018215100167.webp&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Sat, 18 Oct 2025 13:51:49 GMT</pubDate></item><item><title><![CDATA[免费实现未备案域名解析国内服务器]]></title><link>https://blog.tsoo.net/archives/mian-fei-shi-xian-wei-bei-an-yu-ming-jie-xi-guo-nei-fu-wu-qi</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E5%85%8D%E8%B4%B9%E5%AE%9E%E7%8E%B0%E6%9C%AA%E5%A4%87%E6%A1%88%E5%9F%9F%E5%90%8D%E8%A7%A3%E6%9E%90%E5%9B%BD%E5%86%85%E6%9C%8D%E5%8A%A1%E5%99%A8&amp;url=/archives/mian-fei-shi-xian-wei-bei-an-yu-ming-jie-xi-guo-nei-fu-wu-qi" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">我们可能拥有一些位于<strong>境内</strong>的服务器，但希望<strong>通过域名访问</strong>时，却面临<strong>未备案</strong>。本文将介绍一种临时解决方案：其核心原理是，让国内服务器<strong>主动建立加密连接</strong>，接入 <strong>Cloudflare</strong> 的边缘网络，而非被动等待外部请求。所有进入 Cloudflare 的流量，<strong>均通过该加密隧道安全地转发至您的服务器</strong>。</p>
<blockquote>
 <p style=""><strong><em>关键在于</em></strong><em>您的服务器</em><strong><em>无需暴露任何公网端口</em></strong><em>，因此运营商</em><strong><em>无法检测</em></strong><em>到您正在提供 HTTP/S 服务，自然也</em><strong><em>无法触发备案核查</em></strong><em>。此外，无论是</em><strong><em>家庭服务器</em></strong><em>，还是部署在</em><strong><em>个人电脑</em></strong><em>上的网页及其他项目，</em><strong><em>均可通过该方法实现免备案的域名访问</em></strong><em>。</em></p>
</blockquote>
<h3 style="" id="%E5%8E%9F%E7%90%86%E5%9B%BE%EF%BC%9A">原理图：</h3>
<text-diagram data-type="plantuml" data-content="@startuml
' 使用主题增加美观度
!theme vibrant

' 定义参与者和组件
actor &quot;用户&quot; as User
cloud &quot;Cloudflare 网络&quot; as Cloudflare
node &quot;您的境内服务器&quot; as Server

' 描述流程
User -&gt; &quot;https://您的域名.com&quot; : 1. 发起访问
&quot;https://您的域名.com&quot; -&gt; Cloudflare : 2. DNS解析至Cloudflare
Cloudflare -&gt; Server : 3. 通过加密Tunnel连接

@enduml" data-src="https://www.plantuml.com/plantuml/svg/VP3FJi9048Vl-nHZBvuiKMyS38cUlQ0FK64D9gKrxS8PaJ-AGi6Og8I0OfIUqCGWQ8DzcSxkyXOkQ28dJvDCljytlqp2POR3SbcJh48q3SMr7qs2MVyM-rsitOklXXmKyVEPhB0CpLB87nquXiM8ed7OZZxEqIj6auOibF7gKWIbA7WdHehP3cXAnS_66XWkxBlK8IdJpgL1svwFGzDmA8XfImIT1V6t9PQTfg3neY_Q9UoVOgNCEtMiFU2Tlq2JrCahdMh0FK-6htnq8lmBChy1QrkWPHWxTkEnsA-XryDcNK_PMGtYiAu3UYqv6ijXEBiPadzWfLgg6eSD7NPsatBmoBjDMNrRAho4gT1FFHNOr65MQCkmglw8BvMzd6LHKuPTtdWY946jj7hwDm00"><img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fwww.plantuml.com%2Fplantuml%2Fsvg%2FVP3FJi9048Vl-nHZBvuiKMyS38cUlQ0FK64D9gKrxS8PaJ-AGi6Og8I0OfIUqCGWQ8DzcSxkyXOkQ28dJvDCljytlqp2POR3SbcJh48q3SMr7qs2MVyM-rsitOklXXmKyVEPhB0CpLB87nquXiM8ed7OZZxEqIj6auOibF7gKWIbA7WdHehP3cXAnS_66XWkxBlK8IdJpgL1svwFGzDmA8XfImIT1V6t9PQTfg3neY_Q9UoVOgNCEtMiFU2Tlq2JrCahdMh0FK-6htnq8lmBChy1QrkWPHWxTkEnsA-XryDcNK_PMGtYiAu3UYqv6ijXEBiPadzWfLgg6eSD7NPsatBmoBjDMNrRAho4gT1FFHNOr65MQCkmglw8BvMzd6LHKuPTtdWY946jj7hwDm00&amp;size=m"></text-diagram>
<p style="text-align: center"></p>
<h2 style="" id="%E5%87%86%E5%A4%87%EF%BC%9A">准备：</h2>
<p style="">在开始配置前，需要提前完成下面三个配置：</p>
<h3 style="" id="1.-%E5%9F%9F%E5%90%8D">1. 域名</h3>
<ul>
 <li>
  <p style="">通过域名注册商购买一个顶级域名。</p>
 </li>
</ul>
<h3 style="" id="2.-%E6%9B%B4%E6%94%B9%E5%9F%9F%E5%90%8Ddns%E6%9C%8D%E5%8A%A1%E5%99%A8">2. 更改域名DNS服务器</h3>
<ul>
 <li>
  <p style="">登录域名注册商后台。</p>
 </li>
 <li>
  <p style="">将域名的 Nameserver 修改为 <a href="https://u.tsoo.net/cpa0o" target="_blank" rel="">Cloudflare</a> 提供的地址。</p>
 </li>
 <li>
  <p style=""><strong>注意</strong>：此步骤是使用 Cloudflare 服务（包括 Tunnel），你可能需要用信用卡验证。</p>
 </li>
</ul>
<h3 style="" id="3.-%E5%A2%83%E5%86%85%E6%9C%8D%E5%8A%A1%E5%99%A8">3. 境内服务器</h3>
<ul>
 <li>
  <p style="">确保服务器能正常连接公网。</p>
 </li>
 <li>
  <p style="">安装 Web 服务（如 Nginx、Apache），并确认本地监听端口正常。</p>
 </li>
 <li>
  <p style="">服务器已安装Docker（如未安装，可咨询本站左下角的AI助手）。</p>
 </li>
</ul>
<h2 style="" id="%E7%AC%AC%E4%BA%8C%E9%98%B6%E6%AE%B5%EF%BC%9A%E5%9C%A8-cloudflare-%E4%B8%8A%E5%88%9B%E5%BB%BA-tunnel">第二阶段：在 Cloudflare 上创建 Tunnel</h2>
<h3 style="" id="1.-%E7%99%BB%E5%BD%95-cloudflare-%E6%8E%A7%E5%88%B6%E5%8F%B0">1. 登录 Cloudflare 控制台</h3>
<ul>
 <li>
  <p style="">访问 <a href="https://u.tsoo.net/cpa0o" target="_blank" rel="">dash.cloudflare.com</a> 并使用您的账户登录。</p>
 </li>
 <li>
  <p style="">如果尚未添加域名，先在“网站”部分添加您的域名。</p>
 </li>
</ul>
<h3 style="" id="2.-%E8%BF%9B%E5%85%A5-zero-trust-%E9%9D%A2%E6%9D%BF">2. 进入 Zero Trust 面板</h3>
<ul>
 <li>
  <p style="">在控制台主页左侧边栏，点击 <strong>Zero Trust</strong> 选项。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-10_23-11-31.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<ul>
 <li>
  <p style=""><strong>提示</strong>：Cloudflare Tunnel 是 Zero Trust 产品套件的一部分，免费额度足以满足个人使用需求。</p>
 </li>
</ul>
<h3 style="" id="3.-%E5%88%9B%E5%BB%BA-tunnel">3. 创建 Tunnel</h3>
<ul>
 <li>
  <p style="">在 Zero Trust 面板中，导航至 <strong>网络 &gt; Tunnels</strong>。</p>
 </li>
 <li>
  <p style="">点击 <strong>添加隧道</strong>。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-10_23-12-30.png&amp;size=m" width="100%" height="100%">
</figure>
<ul>
 <li>
  <p style="">选择<code>Cloudflared</code>。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-10_23-12-58.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<ul>
 <li>
  <p style="">输入隧道名称（例如 <code>my-cn-server-tunnel</code>），然后点击 <strong>保存隧道</strong>。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-10_23-14-17.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="4.-%E5%9C%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E5%AE%89%E8%A3%85-connector">4. 在服务器上安装 Connector</h3>
<ul>
 <li>
  <p style="">创建成功后，Cloudflare 会提供安装命令（这里用类似 <code>docker run ...</code> 这个命令实现，因为这会更通用一些，其他命令配置可以自行查阅）。</p>
 </li>
 <li>
  <p style="">点击复制命令，在境内服务器上以 root 权限执行。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-10_23-30-32.png&amp;size=m" width="100%" height="100%">
</figure>
<ul>
 <li>
  <p style="">执行后，检查 Connectors 状态，应显示为 <strong>已连接</strong>（表示服务器已连接到 Cloudflare 网络），点击下一步。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-11_19-12-25.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="5.-%E6%B7%BB%E5%8A%A0%E5%B7%B2%E5%8F%91%E5%B8%83%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E8%B7%AF%E7%94%B1">5. 添加已发布应用程序路由</h3>
<ul>
 <li>
  <p style="">在 Tunnel 配置页填写信息。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-11_19-16-45.png&amp;size=m" width="100%" height="100%">
</figure>
<ul>
 <li>
  <p style=""><strong>提示</strong>：流量由本地 Connector 直接转发，无需公网 IP。</p>
 </li>
</ul>
<h3 style="" id="6.-%E4%BF%9D%E5%AD%98">6. 保存</h3>
<ul>
 <li>
  <p style="">点击 <strong>保存</strong> 保存所有更改。</p>
 </li>
</ul>
<h2 style="" id="%E7%AC%AC%E4%B8%89%E9%98%B6%E6%AE%B5%EF%BC%9A%E6%B5%8B%E8%AF%95%E8%AE%BF%E9%97%AE">第三阶段：测试访问</h2>
<h3 style="" id="1.-dns-%E8%A7%A3%E6%9E%90">1. DNS 解析</h3>
<ul>
 <li>
  <p style="">等待几分钟，Cloudflare 会自动为子域名创建 CNAME 记录（指向类似 xxxx.cfargotunnel.com）。</p>
 </li>
 <li>
  <p style="">无需手动添加 DNS 记录。</p>
 </li>
</ul>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-10-11_19-49-57.webp&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="2.-%E8%AE%BF%E9%97%AE%E7%BD%91%E7%AB%99">2. 访问网站</h3>
<ul>
 <li>
  <p style="">在浏览器中打开配置的 URL。</p>
 </li>
 <li>
  <p style="">若一切正常，将看到境内服务器的 Web 内容。</p>
 </li>
</ul>
<h2 style="" id="%E6%80%BB%E7%BB%93">总结</h2>
<p style="">备案：服务器无需暴露公网端口，有效规避备案要求。
 <br>
 安全性：所有通信均通过 Cloudflare Tunnel 加密传输，无需开放服务器端口，大幅降低攻击风险。
 <br>
 免费：个人及中小型网站可充分使用免费额度，降低成本投入。
 <br>
 协议限制：免费版主要支持 HTTP/S 协议转发。</p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/mian-fei-shi-xian-wei-bei-an-yu-ming-jie-xi-guo-nei-fu-wu-qi</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251012130700322.webp&amp;size=m" type="image/jpeg" length="18798"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Sun, 12 Oct 2025 05:07:24 GMT</pubDate></item><item><title><![CDATA[免费获得17级域名并且托管在CF——IPv6反解域名]]></title><link>https://blog.tsoo.net/archives/mian-fei-huo-de-17ji-yu-ming-bing-qie-tuo-guan-zai-cf----ipv6fan-jie-yu-ming</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E5%85%8D%E8%B4%B9%E8%8E%B7%E5%BE%9717%E7%BA%A7%E5%9F%9F%E5%90%8D%E5%B9%B6%E4%B8%94%E6%89%98%E7%AE%A1%E5%9C%A8CF%E2%80%94%E2%80%94IPv6%E5%8F%8D%E8%A7%A3%E5%9F%9F%E5%90%8D&amp;url=/archives/mian-fei-huo-de-17ji-yu-ming-bing-qie-tuo-guan-zai-cf----ipv6fan-jie-yu-ming" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">本文将指导您如何免费获取17级域名，并将其托管于Cloudflare，完成IPv6反向解析域名的配置。IPv6反向解析域名（即ip6.arpa）是一种特殊的DNS记录，用于将IPv6地址映射回对应的域名。其格式遵循ip6.arpa规范：将IPv6地址的每个十六进制字符倒序排列后，附加.ip6.arpa后缀。该机制主要用于DNS反向查询，实现从IP地址到域名的反向解析。 本教程将详细介绍如何申请IPv6反向解析域名、将其接入Cloudflare进行托管，并解决SSL证书的签发问题，帮助您高效、安全地完成整个配置流程。</p>
<p style=""></p>
<h2 style="" id="%E5%87%86%E5%A4%87%EF%BC%9A">准备：</h2>
<p style="">1.一个Cloudflare账号</p>
<p style=""></p>
<h2 style="" id="%E6%B3%A8%E5%86%8C%E5%B9%B6%E6%89%98%E7%AE%A1%EF%BC%9A">注册并托管：</h2>
<h3 style="" id="1.-%E6%B3%A8%E5%86%8Churricane-electric%E8%B4%A6%E5%8F%B7">1. 注册Hurricane Electric账号</h3>
<p style="">打开后面网站注册一个账号：<a href="https://u.tsoo.net/K6KSH" target="_blank" rel="">https://tunnelbroker.net/</a></p>
<p style=""></p>
<h3 style="" id="2.%E5%88%9B%E5%BB%BAipv6%E9%9A%A7%E9%81%93">2.创建IPv6隧道</h3>
<blockquote>
 <p style="">登录后，创建一个新的隧道。 您需要一台已启用ICMP信令的VPS。 填写您的VPS IP地址。 TunnelBroker将向该IP发送Ping请求以进行验证。</p>
</blockquote>
<p style=""></p>
<h3 style="" id="3.%E9%AA%8C%E8%AF%81%E8%BF%87%E7%A8%8B">3.验证过程</h3>
<ul>
 <li>
  <p style=""><strong>成功情况</strong>：若TunnelBroker收到响应，且该IP地址未被其他隧道占用，将显示绿色可绑定标识。</p>
 </li>
 <li>
  <p style=""><strong>需额外验证</strong>：若该IP地址此前已被绑定，则需进行HTTP验证。</p>
 </li>
</ul>
<p style=""></p>
<h3 style="" id="4.%E8%8E%B7%E5%8F%96%E5%88%86%E9%85%8D%E7%9A%84ipv6%E5%9C%B0%E5%9D%80">4.获取分配的IPv6地址</h3>
<p style="">进入隧道详情页面，查看TunnelBroker为你分配的路由IPv6地址。例如：</p>
<pre><code>2001:470:24:386::/64</code></pre>
<p style=""></p>
<h3 style="" id="5.%E7%94%9F%E6%88%90ip6.arpa%E5%9F%9F%E5%90%8D">5.生成ip6.arpa域名</h3>
<p style="">将IPv6地址转换为ip6.arpa格式的步骤：</p>
<ol>
 <li>
  <p style=""><strong>补零</strong>：将每段补足4位，用冒号分隔</p>
  <pre><code>2001:470:24:386::/64 → 2001:0470:0024:0386::/64</code></pre>
 </li>
 <li>
  <p style=""><strong>去除冒号并连接</strong>：</p>
  <pre><code>2001047000240386</code></pre>
 </li>
 <li>
  <p style=""><strong>倒序排列</strong>：</p>
  <pre><code>6830420007401002</code></pre>
 </li>
 <li>
  <p style=""><strong>添加点和后缀</strong>：</p>
  <pre><code>6.8.3.0.4.2.0.0.0.7.4.0.1.0.0.2.ip6.arpa</code></pre>
 </li>
</ol>
<p style="">（如果您不确定如何进行转换，请将我的全部教程内容提供给AI，以便协助您完成转换。若您通过 blog.6uu.us 访问本文，可直接在屏幕左下角向AI提问）</p>
<p style=""></p>
<h2 style="" id="%E6%89%98%E7%AE%A1%E5%9C%A8cf%E5%B9%B6%E8%A7%A3%E5%86%B3ssl%E8%AF%81%E4%B9%A6%E9%97%AE%E9%A2%98%EF%BC%9A">托管在CF并解决SSL证书问题：</h2>
<h3 style="" id="1.%E6%89%98%E7%AE%A1%EF%BC%9A">1.托管：</h3>
<p style="">1. 添加域名至Cloudflare</p>
<ul>
 <li>
  <p style="">将生成的ip6.arpa域名添加至您的Cloudflare账户中。</p>
 </li>
</ul>
<p style="">2. 获取Cloudflare的NS服务器地址</p>
<ul>
 <li>
  <p style="">登录Cloudflare控制台，查看系统提示需配置的NS服务器地址。</p>
 </li>
</ul>
<p style="">3. 配置TunnelBroker</p>
<ul>
 <li>
  <p style="">返回TunnelBroker平台，将域名服务器（NS）更新为Cloudflare提供的NS服务器地址。</p>
 </li>
</ul>
<p style="">4. 等待域名激活</p>
<ul>
 <li>
  <p style="">完成配置后，请等待域名解析生效，此过程可能需要一定时间。</p>
 </li>
</ul>
<p style=""></p>
<h3 style="" id="2.ssl%E7%94%B3%E8%AF%B7-%E9%85%8D%E7%BD%AE%E6%8F%90%E4%BE%9B%E5%95%86">2.SSL申请 配置提供商</h3>
<h3 style="" id="%E9%97%AE%E9%A2%98%E8%AF%B4%E6%98%8E">问题说明</h3>
<p style="">默认情况下，ip6.arpa域名无法获得SSL证书，因为大多数SSL证书提供商均拒绝为此类域名签发证书。</p>
<h3 style="" id="%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88">解决方案</h3>
<p style="">将Cloudflare的SSL证书提供商更换为SSL.COM，可有效解决该问题。操作步骤</p>
<p style="">使用以下API命令更改SSL提供商：</p>
<pre><code>curl --location --request PATCH 'https://api.cloudflare.com/client/v4/zones/&lt;你的区域ID&gt;/ssl/universal/settings' \
--header 'X-Auth-Email: 你的CF注册邮箱' \
--header 'X-Auth-Key: 你的CF全局APIKey' \
--header 'Content-Type: application/json' \
--data-raw '{"enabled":true,"certificate_authority":"ssl_com"}'</code></pre>
<p style=""><strong>参数说明</strong>：</p>
<ul>
 <li>
  <p style=""><code>&lt;你的区域ID&gt;</code>：替换为你的Cloudflare区域ID</p>
 </li>
 <li>
  <p style=""><code>你的CF注册邮箱</code>：替换为你的Cloudflare注册邮箱</p>
 </li>
 <li>
  <p style=""><code>你的CF全局APIKey</code>：替换为你的Cloudflare全局API密钥</p>
 </li>
</ul>
<p style="">执行命令后，等待片刻，Cloudflare会自动使用新的SSL提供商签发SSL证书。</p>
<p style=""></p>
<p style="">还可以使用下面的一键式工具进行修改，会更简单，全部开源在GitHub：</p>
<p style=""><a href="https://u.tsoo.net/O42jd" target="_blank" rel="">https://ssl.5.8.7.b.0.d.0.0.1.0.a.2.ip6.arpa/</a></p>
<p style=""></p>
<h2 style="" id="%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9%E5%92%8C%E5%B1%80%E9%99%90%E6%80%A7%EF%BC%9A">注意事项和局限性：</h2>
<h3 style="" id="%E9%87%8D%E8%A6%81%E9%99%90%E5%88%B6">重要限制</h3>
<ol>
 <li>
  <p style=""><strong>SSL.COM账户限制：</strong>若尝试自行注册SSL.COM账户以签发SSL证书，申请将被拒绝。该域名仅支持在Cloudflare CDN环境下使用。</p>
  <p style=""><strong>依赖Cloudflare：</strong>本解决方案完全依赖Cloudflare的服务，无法使用其他SSL证书提供商作为替代。</p>
  <p style=""><strong>验证要求：</strong>请确保您的VPS已正确配置ICMP信令，否则将无法通过TunnelBroker的验证流程。</p>
 </li>
</ol>
<h2 style="" id="%E6%80%BB%E7%BB%93%EF%BC%9A">总结：</h2>
<p style="">通过本教程，您已掌握以下内容：</p>
<ul>
 <li>
  <p style="">IPv6反向解析域名的概念及其工作原理</p>
 </li>
 <li>
  <p style="">如何通过Hurricane Electric获取IPv6隧道及反向解析域名</p>
 </li>
 <li>
  <p style="">将ip6.arpa域名托管至Cloudflare的具体方法</p>
 </li>
 <li>
  <p style="">解决SSL证书签发问题的有效策略</p>
 </li>
 <li>
  <p style="">相关注意事项与实际局限性</p>
 </li>
</ul>
<p style="">尽管ip6.arpa域名在SSL证书签发方面存在一定限制，但通过结合Cloudflare与SSL.COM的服务，我们能够成功实现IPv6反向解析域名的托管，并启用HTTPS安全访问。这一方案为需要完整IPv6网络配置的用户提供了切实可行的解决路径。</p>
<p style=""></p>
<h2 style="" id="%E5%8F%82%E8%80%83%E8%B5%84%E6%96%99%EF%BC%9A">参考资料：</h2>
<thyuu-video src="https://www.bilibili.com/video/BV1q8tBzsEPi" size=""></thyuu-video>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/mian-fei-huo-de-17ji-yu-ming-bing-qie-tuo-guan-zai-cf----ipv6fan-jie-yu-ming</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20251002203122092.webp&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>知识分享</category><pubDate>Thu, 2 Oct 2025 12:31:48 GMT</pubDate></item><item><title><![CDATA[一个高仿某红薯平台-部署教程]]></title><link>https://blog.tsoo.net/archives/bu-shu-yi-ge-gao-fang-mou-hong-shu-ping-tai</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E4%B8%80%E4%B8%AA%E9%AB%98%E4%BB%BF%E6%9F%90%E7%BA%A2%E8%96%AF%E5%B9%B3%E5%8F%B0-%E9%83%A8%E7%BD%B2%E6%95%99%E7%A8%8B&amp;url=/archives/bu-shu-yi-ge-gao-fang-mou-hong-shu-ping-tai" width="1" height="1" alt="" style="opacity:0;">
<h3 style="" id="%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9A">服务器：</h3>
<p style="">最低配置为<strong>1核1G</strong>，推荐使用<strong>2核2G</strong>。</p>
<p style="">建议选择<strong>雨云服务器</strong>，详情请访问：<a href="https://u.tsoo.net/u5T1h" target="_blank" rel="">雨云</a></p>
<p style=""></p>
<h2 style="" id="%E9%83%A8%E7%BD%B2%EF%BC%9A">部署：</h2>
<h3 style="" id="1.%E5%AE%89%E8%A3%85%E9%9D%A2%E6%9D%BF">1.安装面板</h3>
<p style="">首先，在您的服务器上安装1Panel面板，具体安装步骤可参考<a href="https://blog.tsoo.net/archives/bao-ta-1panelmian-ban----an-zhuang-ji-ben-shi-yong" target="_blank" rel="">这篇文章</a>中的1Panel安装部分</p>
<h3 style="" id="2.%E6%95%B0%E6%8D%AE%E5%BA%93">2.数据库</h3>
<h4 style="" id="2.1%E5%AE%89%E8%A3%85%E6%95%B0%E6%8D%AE%E5%BA%93">2.1安装数据库</h4>
<p style="">在应用商店中安装MySQL</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_17-59-45.png&amp;size=m" width="100%" height="100%">
</figure>
<h4 style="" id="2.2%E6%96%B0%E5%BB%BA%E6%95%B0%E6%8D%AE%E5%BA%93">2.2新建数据库</h4>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-01-58.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="3.%E4%B8%8B%E8%BD%BD%E6%BA%90%E7%A0%81">3.下载源码</h3>
<h4 style="" id="3.1%E4%B8%8B%E8%BD%BD%E5%8E%8B%E7%BC%A9%E5%8C%85">3.1下载压缩包</h4>
<p style="">在面板中进入文件管理，在根目录用下方链接下载源码压缩包：</p>
<pre><code>https://u.tsoo.net/7atMy</code></pre>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-04-39.png&amp;size=m" width="100%" height="100%">
</figure>
<h4 style="" id="3.2%E8%A7%A3%E5%8E%8B%E5%8E%8B%E7%BC%A9%E5%8C%85">3.2解压压缩包</h4>
<p style="">双击下载的文件进行解压</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-06-13.png&amp;size=m" width="100%" height="100%">
</figure>
<h4 style="" id="3.3%E5%88%A0%E9%99%A4%E5%8E%8B%E7%BC%A9%E5%8C%85">3.3删除压缩包</h4>
<p style="">解压后右键删除压缩包，养成良好习惯</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-07-00.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<h4 style="" id="3.4%E8%AE%BE%E7%BD%AE%E6%96%87%E4%BB%B6%E5%A4%B9%E6%9D%83%E9%99%90">3.4设置文件夹权限</h4>
<p style="">设置解压后的文件夹所有权限为开（777），否则可能出现奇怪的错误，对其安全性要求更高的可以按需开启</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-08-55.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="4.%E4%BF%AE%E6%94%B9%E6%BA%90%E7%A0%81%E5%BF%85%E8%A6%81%E5%86%85%E5%AE%B9">4.修改源码必要内容</h3>
<p style="">打开<code>XiaoShiLiu-master/vue3-project/vite.config.js</code>这个文件修改后端地址为你的<code>服务器ip:3001</code></p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-13-28.png&amp;size=m" width="991px" height="636px">
</figure>
<h3 style="" id="5.%E5%88%9B%E5%BB%BA%E5%90%8E%E7%AB%AF%E8%BF%90%E8%A1%8C">5.创建后端运行</h3>
<h4 style="" id="5.1init-db">5.1init-db</h4>
<p style="">面板左侧网站中运行环境选择<code>Node.js</code>创建一个运行环境，如图填写配置：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-16-28.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<p style="">选择刚才的文件夹位置：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-17-10.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">设置启动命令和端口：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-19-06.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<p style="">设置环境变量：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-25-50-DUEr.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<h4 style="" id="5.2generate-data">5.2generate-data</h4>
<p style="">等待5分钟左右，直到变为停止运行后编辑刚才配置的启动命令为<code>generate-data</code>：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-30-52.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<p style="">看到下图提示说明此步骤成功：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-32-18.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<p style="">5.3dev</p>
<p style="">编辑刚才配置启动命令为<code>dev</code>：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-32-56.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<h3 style="" id="5.%E5%88%9B%E5%BB%BA%E5%89%8D%E5%8F%B0%E8%BF%90%E8%A1%8C">5.创建前台运行</h3>
<p style="">如图配置：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-36-04.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">看到下面提示说明安装成功：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-36-23.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<h3 style="" id="6.%E8%AE%BF%E9%97%AE%E5%89%8D%E7%AB%AF">6.访问前端</h3>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-37-30.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="7.%E5%90%8E%E5%8F%B0">7.后台</h3>
<p style="">访问<code>ip:5173/admin</code>即可，默认用户名<code>admin</code>，默认密码<code>123456</code>:</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-30_18-39-20.png&amp;size=m" width="100%" height="100%">
</figure>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/bu-shu-yi-ge-gao-fang-mou-hong-shu-ping-tai</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250930213712883.webp&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>知识分享</category><pubDate>Tue, 30 Sep 2025 13:37:56 GMT</pubDate></item><item><title><![CDATA[教你部署Astro Fuwari静态博客]]></title><link>https://blog.tsoo.net/archives/xiang-xi-jiao-ni-bu-shu-astro-fuwarijing-tai-bo-ke</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E6%95%99%E4%BD%A0%E9%83%A8%E7%BD%B2Astro%20Fuwari%E9%9D%99%E6%80%81%E5%8D%9A%E5%AE%A2&amp;url=/archives/xiang-xi-jiao-ni-bu-shu-astro-fuwarijing-tai-bo-ke" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">当前市面上的博客系统种类繁多，例如 ws、Halo 等。这些系统中不乏设计精美、广受欢迎的主题。然而，它们通常需要服务器支持才能运行。本次，我们将为您介绍一款静态系统主题，并详细讲解其部署安装及基础操作方法，旨在呈现这篇《教你部署 Astro Fuwari 静态博客》。</p>
<p style=""></p>
<h2 style="" id="%E6%9C%AC%E5%9C%B0%E7%8E%AF%E5%A2%83%2F%E9%85%8D%E7%BD%AE%EF%BC%9A">本地环境/配置：</h2>
<p style="">在开始之前，我们需要先配置好本地的环境。</p>
<h3 style="" id="1.%E5%AE%89%E8%A3%85node.js%E5%92%8Cpnpm">1.安装Node.js和pnpm</h3>
<p style="">进进入<a href="https://u.tsoo.net/e3a1p" target="_blank" rel="">网页</a>，根据网页提示选择相应的系统版本进行下载和安装。</p>
<h4 style="" id="%E6%A3%80%E6%9F%A5%EF%BC%9A">检查：</h4>
<p style="">终在命令行中输入以下两个命令，均应显示版本信息，这表明安装成功：</p>
<pre><code>pnpm -v
node -v

# 若在终端执行上述命令后未显示版本号，建议向ChatGPT寻求帮助，并提供详细信息以便查询（您也可以在文章底部留言）。</code></pre>
<h3 style="" id="2.%E5%88%9B%E5%BB%BA%E9%A1%B9%E7%9B%AE">2.创建项目</h3>
<p style="">此处通常推荐使用 VS Code。您可以点击此链接进入官网进行下载、安装和使用：<a href="https://u.tsoo.net/nU0Hu" target="_blank" rel="">https://code.visualstudio.com/</a></p>
<p style="">随后在终端执行下面代码创建：</p>
<pre><code>pnpm create fuwari@latest</code></pre>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-13_13-44-58.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">至此，项目已基本搭建完成，接下来将介绍相关使用内容：</p>
<h3 style="" id="3.%E9%85%8D%E7%BD%AE">3.配置</h3>
<p style="">基本配置都在<code>src/config.ts</code>这个文件中，原本文件是英文的，如果有词看不懂，可以让AI翻译一下：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-13_13-56-43.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="4.%E5%90%AF%E5%8A%A8%E6%9C%AC%E5%9C%B0%E6%9C%8D%E5%8A%A1">4.启动本地服务</h3>
<p style="">执行下面代码，启动服务，并点击最后的本地网站地址访问：</p>
<pre><code>pnpm dev</code></pre>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-13_14-00-02.png&amp;size=m" width="100%" height="100%">
</figure>
<p style=""></p>
<h2 style="" id="%E6%92%B0%E5%86%99%E6%96%87%E7%AB%A0%2F%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4%EF%BC%9A">撰写文章/常用命令：</h2>
<h3 style="" id="%E6%96%B0%E5%BB%BA%E6%96%87%E7%AB%A0%EF%BC%9A">新建文章：</h3>
<p style="">要撰写新文章，请在终端中输入<code>pnpm new-post 文章标题</code>命令。此操作将在<code>/src/content/posts/</code>目录下自动生成一个新文件。您只需编辑该文件，使用基本的 Markdown 格式即可完成内容创作。</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-13_14-10-51.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">保持文件后，你再次访问，就会发现首页已经多了这一篇文章了。</p>
<h3 style="" id="%E5%85%B6%E4%BB%96%E5%91%BD%E4%BB%A4%EF%BC%9A">其他命令：</h3>
<div style="overflow-x: auto; overflow-y: hidden;">
 <table style="width: 763px">
  <colgroup>
   <col style="width: 355px">
   <col style="width: 408px">
  </colgroup>
  <tbody>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <th colspan="1" rowspan="1" colwidth="355" style="border-width: 1px 0px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; line-height: 1.42857; font-size: 14px; --tw-font-weight: 600; font-weight: 600; border-top-left-radius: 6px;">
     <p style=""><strong>Command</strong></p>
    </th>
    <th colspan="1" rowspan="1" colwidth="408" style="border-width: 1px 0px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; line-height: 1.42857; font-size: 14px; --tw-font-weight: 600; font-weight: 600; border-top-right-radius: 6px;">
     <p style=""><strong>Action</strong></p>
    </th>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm install</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Installs dependencies</p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm dev</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Starts local dev server at <code>localhost:4321</code></p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm build</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Build your production site to <code>./dist/</code></p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm preview</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Preview your build locally, before deploying</p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm check</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Run checks for errors in your code</p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm format</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Format your code using Biome</p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm new-post &lt;filename&gt;</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Create a new post</p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style=""><code>pnpm astro ...</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px;">
     <p style="">Run CLI commands like <code>astro add</code>, <code>astro check</code></p>
    </td>
   </tr>
   <tr style="border: 0px solid; box-sizing: border-box; margin: 0px; padding: 0px;">
    <td colspan="1" rowspan="1" colwidth="355" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-style: solid; border-inline-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px; border-bottom-left-radius: 6px;">
     <p style=""><code>pnpm astro --help</code></p>
    </td>
    <td colspan="1" rowspan="1" colwidth="408" style="border-width: 0px 0px 1px; border-style: solid; border-color: rgb(226, 232, 240); border-image: initial; box-sizing: border-box; margin: 0px; padding: 0px; border-inline-end-style: solid; border-inline-end-width: 1px; padding-inline: 16px; padding-block: 12px; text-align: left; vertical-align: top; line-height: 1.42857; font-size: 14px; border-bottom-right-radius: 6px;">
     <p style="">Get help using the Astro CLI</p>
    </td>
   </tr>
  </tbody>
 </table>
</div>
<p style=""></p>
<h2 style="" id="%E9%83%A8%E7%BD%B2%E4%B8%8A%E7%BA%BF%EF%BC%9A">部署上线：</h2>
<h3 style="" id="1.%E7%BC%96%E8%AF%91%E7%AB%99%E7%82%B9%E4%B8%BA%E9%9D%99%E6%80%81html">1.编译站点为静态html</h3>
<p style="">执行下面代码进行构建：</p>
<pre><code>pnpm build</code></pre>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-13_14-27-52.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">构建完可以上传dist目录中内容到服务器或GitHub即可。</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Fdwejkdskdskds.png&amp;size=m" width="100%" height="100%">
</figure>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/xiang-xi-jiao-ni-bu-shu-astro-fuwarijing-tai-bo-ke</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250913163946008.webp&amp;size=m" type="image/jpeg" length="42526"/><category>知识分享</category><pubDate>Sat, 13 Sep 2025 08:40:35 GMT</pubDate></item><item><title><![CDATA[雨云日本东京服务器测评]]></title><link>https://blog.tsoo.net/archives/yu-yun-ri-ben-dong-jing-fu-wu-qi-ce-ping</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E9%9B%A8%E4%BA%91%E6%97%A5%E6%9C%AC%E4%B8%9C%E4%BA%AC%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%B5%8B%E8%AF%84&amp;url=/archives/yu-yun-ri-ben-dong-jing-fu-wu-qi-ce-ping" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<blockquote>
 <p style="">有人说人生如戏，全靠演技。我却觉得，人生更像一场直播，没有彩排，全是现场。你演得再好，也逃不过弹幕的吐槽；你装得再像，也躲不过观众的火眼金睛。所以，不如活得真实点，哪怕偶尔出糗，至少还能收获一波真实的点赞。</p>
</blockquote>
<p style="">今天，我们会全面的测试雨云新推出的日本东京云服务器，不加任何“有色眼镜”或”内幕“</p>
<h2 style="" id="%E5%85%B7%E4%BD%93%E9%85%8D%E7%BD%AE%EF%BC%9A">具体配置：</h2>
<p style="">AMD® EPYC - KVM 旗舰版</p>
<p style="">配置： 8 vCPU &nbsp; 16 GB &nbsp; 30+ GB&nbsp; 100 Mbps</p>
<p style="">系统：&nbsp;Debian12</p>
<h3 style="" id="%E5%90%8E%E9%9D%A2%E9%93%BE%E6%8E%A5%E5%8F%AF5%E6%8A%98%E8%B4%AD%E4%B9%B0%EF%BC%9A%E9%9B%A8%E4%BA%91">后面链接可5折购买：<a href="https://u.tsoo.net/u5T1h" target="_blank" rel="">雨云</a></h3>
<p style=""></p>
<h2 style="" id="%E6%B5%8B%E8%AF%84%EF%BC%9A">测评：</h2>
<p style="">为了非常全面的测试，本次使用脚本：<a href="https://u.tsoo.net/yG529" target="_blank" rel="">融合怪</a>，但脚本不代表绝对的实际使用情况，下面数据仅供参考：</p>
<h3 style="" id="%E8%84%9A%E6%9C%AC%E7%BB%93%E6%9E%9C%EF%BC%9A">脚本结果：</h3>
<pre><code>-------------------------------------VPS融合怪测试-------------------------------------
版本：v0.1.86
测评频道: https://t.me/vps_reviews
Go项目地址：https://github.com/oneclickvirt/ecs
Shell项目地址：https://github.com/spiritLHLS/ecs
--------------------------------------系统基础信息--------------------------------------
 CPU 型号            : AMD EPYC 7K62 48-Core Processor @ 2595.124 MHz
 CPU 数量            : 8 Virtual CPU(s)
 CPU 缓存            : L1: 1 MB / L2: 4 MB / L3: 128 MB
 AES-NI              : ✔️ Enabled
 VM-x/AMD-V/Hyper-V  : ✔️ Enabled
 内存                : 943.85 MB / 15.62 GB
 气球驱动            : ✔️ Enabled
 内核页合并          : ❌ Undetected
 虚拟内存 Swap       : [ no swap partition or swap file detected ]
 硬盘空间            : 4.08 GB / 29.42 GB [13.9%%] /dev/sda1 - /
 启动盘路径          : /dev/sda1
 系统                : debian 12.11 [x86_64] 
 内核                : 6.1.0-35-amd64
 系统在线时间        : 0 days, 00 hours, 16 minutes
 时区                : CST
 负载                : 0.00 / 0.00 / 0.00
 虚拟化架构          : KVM
 NAT类型             : Port Restricted Cone
 TCP加速方式         : bbr
 IPV4 ASN            : AS979 PSINet, Inc.
 IPV4 Location       : Togoshi / Tokyo / JP
 IPV4 Active IPs     : 0/256 (subnet /24) 16361/65536 (prefix /16)
--------------------------------CPU测试-通过sysbench测试--------------------------------
1 线程测试(单核)得分: 1450.17
8 线程测试(多核)得分: 11575.42
--------------------------------内存测试-通过sysbench测试---------------------------------
内存复制速度(读+写) (MEMCPY)   :   14422.58 MB/s 
内存复制速度(读+写) (DUMB)     :    6294.25 MB/s 
内存复制速度(读+写) (MCBLOCK)  :    4683.94 MB/s 
-----------------------------------硬盘测试-通过fio测试-----------------------------------
测试路径         块大小       读测试(IOPS)            写测试(IOPS)            总和(IOPS)            
/root             4k        188.60 MB/s(47.1k)      189.10 MB/s(47.3k)      377.69 MB/s(94.4k)     
/root             64k       1.61 GB/s(25.1k)        1.61 GB/s(25.2k)        3.22 GB/s(50.3k)       
/root             512k      1.67 GB/s(3259)         1.76 GB/s(3433)         3.43 GB/s(6692)        
/root             1m        1.74 GB/s(1695)         1.85 GB/s(1808)         3.59 GB/s(3503)        
-------------------------------------御三家流媒体解锁-------------------------------------
----------------Netflix-----------------
[IPV4]
您的出口IP完整解锁Netflix，支持非自制剧的观看
NF所识别的IP地域信息：日本
[IPV6]
您的网络可能没有正常配置IPv6，或者没有IPv6网络接入
----------------Youtube-----------------
[IPV4]
连接方式: Youtube Video Server
视频缓存节点地域: IAD(IAD66S08)
Youtube识别地域: 日本(JP)
[IPV6]
Youtube在您的出口IP所在的国家不提供服务
---------------DisneyPlus---------------
[IPV4]
当前IPv4出口所在地区即将开通DisneyPlus
[IPV6]
DisneyPlus在您的出口IP所在的国家不提供服务
-------------------------------------跨国流媒体解锁--------------------------------------
IPV4:
============[ 跨国平台 ]============
Apple                     YES (Region: JPN)
BingSearch                YES (Region: JP)
Claude                    YES
Dazn                      YES (Region: JP)
Disney+                   YES (Region: JP)
Gemini                    YES (Region: JP)
GoogleSearch              YES
Google Play Store         YES (Region: JP)
IQiYi                     YES (Region: US)
Instagram Licensed Audio  YES
KOCOWA                    NO
MetaAI                    NO (GeoBlocked)
Netflix                   YES (Region: US)
Netflix CDN               JP
OneTrust                  YES (Region: JP TOKYO)
ChatGPT                   YES (Region: JP)
Paramount+                YES
Amazon Prime Video        YES (Region: JP)
Reddit                    YES
SonyLiv                   Banned
Sora                      YES (Region: JP)
Spotify Registration      YES (Region: JP)
Steam Store               YES (Community Available) (Region: JP)
TVBAnywhere+              YES (Region: JP)
TikTok                    YES (Region: CA)
Viu.com                   YES
Wikipedia Editability     YES
YouTube Region            YES (Region: JP)
YouTube CDN               IAD
--------------------------------------IP质量检测--------------------------------------
以下为各数据库编号，输出结果后将自带数据库来源对应的编号
ipinfo数据库  [0] | scamalytics数据库 [1] | virustotal数据库   [2] | abuseipdb数据库   [3] | ip2location数据库    [4]
ip-api数据库  [5] | ipwhois数据库     [6] | ipregistry数据库   [7] | ipdata数据库      [8] | db-ip数据库          [9]
ipapiis数据库 [A] | ipapicom数据库    [B] | bigdatacloud数据库 [C] | dkly数据库        [D] | ipqualityscore数据库 [E]
IPV4:
安全得分:
声誉(越高越好): 0 [2] 
信任得分(越高越好): 100 [8] 
VPN得分(越低越好): 0 [8]
代理得分(越低越好): 0 [8] 
社区投票-无害: 0 [2] 
社区投票-恶意: 0 [2] 
威胁得分(越低越好): 0 [8] 
欺诈得分(越低越好): 65 [E] 17 [1]
滥用得分(越低越好): 0 [3] 
ASN滥用得分(越低越好): 0.0018 (Low) [A] 
公司滥用得分(越低越好): 0.0002 (Very Low) [A] 
威胁级别: low [9] 
黑名单记录统计:(有多少黑名单网站有记录):
无害记录数: 0 [2]  恶意记录数: 0 [2]  可疑记录数: 0 [2]  无记录数: 95 [2]  
安全信息:
使用类型: hosting ASN [C] business [0 7 8] hosting [A] Commercial [3] corporate [9]
公司类型: business [A] hosting [7] isp [0]
是否云提供商: Yes [7] 
是否数据中心: No [0 5 6 8 A] Yes [1 C]
是否移动设备: No [5 A C] Yes [E]
是否代理: Yes [E] No [0 1 4 5 6 7 8 9 A C]
是否VPN: No [0 1 6 7 A C] Yes [E]
是否TorExit: No [1 7] 
是否Tor出口: No [1 7] 
是否网络爬虫: No [9 A E] 
是否匿名: No [1 6 7 8] 
是否攻击者: No [7 8] 
是否滥用者: No [7 8 A C E] 
是否威胁: No [7 8 C] 
是否中继: No [0 7 8 C] 
是否Bogon: No [7 8 A C] 
是否机器人: No [E] 
DNS-黑名单: 315(Total_Check) 0(Clean) 8(Blacklisted) 17(Other) 
--------------------------------------邮件端口检测--------------------------------------
Platform  SMTP  SMTPS POP3  POP3S IMAP  IMAPS
LocalPort ✔     ✔     ✔     ✔     ✔     ✔    
QQ        ✘     ✔     ✘     ✘     ✘     ✘    
163       ✘     ✔     ✘     ✘     ✘     ✘    
Sohu      ✘     ✔     ✘     ✘     ✘     ✘    
Yandex    ✘     ✔     ✘     ✘     ✘     ✘    
Gmail     ✘     ✔     ✘     ✘     ✘     ✘    
Outlook   ✘     ✘     ✘     ✘     ✘     ✘    
Office365 ✘     ✘     ✘     ✘     ✘     ✘    
Yahoo     ✘     ✔     ✘     ✘     ✘     ✘    
MailCOM   ✘     ✔     ✘     ✘     ✘     ✘    
MailRU    ✘     ✔     ✘     ✘     ✘     ✘    
AOL       ✘     ✔     ✘     ✘     ✘     ✘    
GMX       ✘     ✔     ✘     ✘     ✘     ✘    
Sina      ✘     ✔     ✘     ✘     ✘     ✘    
Apple     ✘     ✔     ✘     ✘     ✘     ✘    
FastMail  ✘     ✔     ✘     ✘     ✘     ✘    
ProtonMail✘     ✘     ✘     ✘     ✘     ✘    
MXRoute   ✘     ✘     ✘     ✘     ✘     ✘    
Namecrane ✘     ✔     ✘     ✘     ✘     ✘    
XYAMail   ✘     ✘     ✘     ✘     ✘     ✘    
ZohoMail  ✘     ✔     ✘     ✘     ✘     ✘    
Inbox_eu  ✘     ✔     ✘     ✘     ✘     ✘    
Free_fr   ✘     ✔     ✘     ✘     ✘     ✘    
------------------------------------上游及回程线路检测-------------------------------------
北京电信v4 219.141.140.10           电信163    [普通线路] 
北京联通v4 202.106.195.68           联通4837   [普通线路] 
北京移动v4 221.179.155.161          移动CMI    [普通线路] 
上海电信v4 202.96.209.133           电信163    [普通线路] 
上海联通v4 210.22.97.1              联通4837   [普通线路] 
上海移动v4 211.136.112.200          移动CMI    [普通线路] 
广州电信v4 58.60.188.222            电信163    [普通线路] 
广州联通v4 210.21.196.6             联通4837   [普通线路] 
广州移动v4 120.196.165.24           移动CMI    [普通线路] 
成都电信v4 61.139.2.69              电信163    [普通线路] 
成都联通v4 119.6.6.6                联通4837   [普通线路] 
成都移动v4 211.137.96.205           移动CMI    [普通线路] 
准确线路自行查看详细路由，本测试结果仅作参考
同一目标地址多个线路时，检测可能已越过汇聚层，除第一个线路外，后续信息可能无效
-------------------------------------三网回程路由检测-------------------------------------
广州电信 - ICMP v4 - traceroute to 58.60.188.222, 30 hops max, 52 byte packets
1.12 ms      AS979                         日本, 东京都, 户越, as979.net 
0.60 ms      *                             
*
26.65 ms     AS4134     [APNIC-AP]         中国, 香港, www.chinatelecom.com.cn  电信
54.14 ms     *          [CHINANET-FJ]      中国, 香港, 中国电信（香港）
34.53 ms     *          [CHINANET-FJ]      中国, 香港, 中国电信（香港）
61.59 ms     AS4134     [CHINANET-BB]      中国, 香港, www.chinatelecom.com.cn 
55.73 ms     AS4134     [CHINANET-BB]      中国, 广东, 广州, www.chinatelecom.com.cn 
55.50 ms     AS4134     [CHINANET-BB]      中国, 广东, 广州, www.chinatelecom.com.cn 
59.32 ms     AS134774   [CHINANET-GD]      中国, 广东, 深圳, chinatelecom.cn  电信
*
*
广州联通 - ICMP v4 - traceroute to 210.21.196.6, 30 hops max, 52 byte packets
1.33 ms      AS979                         日本, 东京都, 户越, as979.net 
0.70 ms      *                             
1.01 ms      AS10099    [CUG-BACKBONE]     日本, 东京都, 东京, chinaunicomglobal.com 
1.50 ms      AS10099    [CUG-BACKBONE]     日本, 东京都, 东京, chinaunicomglobal.com 
1.90 ms      AS10099    [CUG-BACKBONE]     日本, 东京都, 东京, chinaunicomglobal.com 
107.71 ms    AS10099    [CUG-BACKBONE]     日本, 东京都, 东京, chinaunicomglobal.com 
60.47 ms     AS4837     [CU169-BACKBONE]   中国, 上海, chinaunicom.cn  联通
61.09 ms     AS4837     [CU169-BACKBONE]   中国, 上海, chinaunicom.cn  联通
*
87.44 ms     AS17623    [APNIC-AP]         中国, 广东, 深圳, chinaunicom.cn  联通
85.04 ms     AS17623                       中国, 广东, 深圳, chinaunicom.cn  联通
广州移动 - ICMP v4 - traceroute to 120.196.165.24, 30 hops max, 52 byte packets
1.14 ms      AS979                         日本, 东京都, 户越, as979.net 
0.65 ms      *                             
0.82 ms      AS58453    [CMI-INT]          中国, 香港, cmi.chinamobile.com  移动
0.79 ms      AS58453    [CMI-INT]          中国, 香港, cmi.chinamobile.com  移动
0.94 ms      AS58453    [CMI-INT]          中国, 香港, cmi.chinamobile.com  移动
53.01 ms     AS58453    [CMI-INT]          中国, 香港, cmi.chinamobile.com 
54.62 ms     AS9808     [CMNET]            中国, 广东, 广州, chinamobileltd.com  移动
54.88 ms     AS9808     [CMNET]            中国, 广东, 广州, chinamobileltd.com  移动
*
65.71 ms     AS9808     [CMNET]            中国, 广东, 广州, chinamobileltd.com  移动
117.04 ms    AS9808     [CMNET]            中国, 广东, 广州, chinamobileltd.com  移动
64.90 ms     AS56040    [APNIC-AP]         中国, 广东, 深圳, gd.10086.cn  移动
--------------------------------------就近节点测速--------------------------------------
位置            上传速度        下载速度        延迟            丢包率          
Speedtest.net   96.80 Mbps      99.81 Mbps      0.33 ms         Not available.  
日本东京        99.07 Mbps      99.91 Mbps      6.31 ms         0.0%            
中国香港        3.25 Mbps       4.81 Mbps       52.42 ms        36.3%           
电信Suzhou5G    88.12 Mbps      20.35 Mbps      45.11 ms        Not available.  
电信浙江        96.77 Mbps      4.55 Mbps       54.14 ms        Not available.  
移动Suzhou      99.77 Mbps      0.79 Mbps       54.79 ms        0.7%            
----------------------------------------------------------------------------------
花费          : 6 分 40 秒
时间          : Tue Sep 9 19:53:39 CST 2025
----------------------------------------------------------------------------------</code></pre>
<p style=""></p>
<h3 style="" id="%E7%BB%93%E8%AE%BA%EF%BC%9A">结论：</h3>
<p style="">从上述的 VPS融合怪测试 脚本结果中，我来评价下面几个方面：</p>
<h4 style="" id="1.-%E6%A0%B8%E5%BF%83%E7%A1%AC%E4%BB%B6%E6%80%A7%E8%83%BD">1. 核心硬件性能</h4>
<ul>
 <li>
  <p style="line-height: 20px">CPU：搭载AMD EPYC 7K62处理器，在sysbench测试中，单核得分高达1450，多核得分更是达到了惊人的11575。算能力非常强大，性能表现远超同价位的许多竞争对手。</p>
 </li>
 <li>
  <p style="line-height: 20px">内存：内存读写速度（MEMCPY）达到了14.4 GB/s，很出色，确保了在处理需要大量内存交换的应用时不会出现性能瓶颈。</p>
 </li>
 <li>
  <p style="line-height: 20px">硬盘I/O：4K随机读写IOPS总和达到了94.4k，而1M顺序读写速度总和更是高达3.59 GB/s。这意味着无论是处理海量小文件（网站缓存等），还是进行大文件的上传下载和备份，硬盘都不会成为限制服务器整体性能的短板。</p>
 </li>
</ul>
<p style="line-height: 20px">小结：在核心硬件方面，这台服务器表现出旗舰级的性能水准。</p>
<h4 style="" id="2.-%E7%BD%91%E7%BB%9C%E8%B4%A8%E9%87%8F%E4%B8%8E%E7%BA%BF%E8%B7%AF">2. 网络质量与线路</h4>
<ul>
 <li>
  <p style="line-height: 20px">回程线路：测试结果显示，到中国大陆三大运营商（电信、联通、移动）的线路均为普通线路。</p>
  <ul>
   <li>
    <p style="line-height: 20px">电信：经由香港节点走电信163网络回国。</p>
   </li>
   <li>
    <p style="line-height: 20px">联通：经由东京节点走联通AS4837网络回国。</p>
   </li>
   <li>
    <p style="line-height: 20px">移动：经由香港节点走移动CMI网络回国。</p>
   </li>
  </ul>
 </li>
 <li>
  <p style="line-height: 20px">网络速度：本地（日本东京）的上下行速度可以轻松跑满100Mbps的端口。但面向中国大陆的速度则表现一般，尤其是到部分地区移动网络的下载速度较慢，且到香港节点出现了较高的丢包率。这进一步印证了其普通线路的特性。</p>
 </li>
 <li>
  <p style="line-height: 20px">IP质量与流媒体解锁：</p>
  <ul>
   <li>
    <p style="line-height: 20px">解锁能力是最大亮点之一。测试结果显示，服务器的IP完美解锁了Netflix非自制剧、YouTube Premium和Disney+。同时，对于ChatGPT、Amazon Prime Video以及TikTok等多种流媒体和AI服务的支持也非常好。</p>
   </li>
  </ul>
 </li>
</ul>
<p style="line-height: 20px"></p>
<h2 style="" id="%E5%BB%BA%E8%AE%AE%EF%BC%9A">建议：</h2>
<ul>
 <li>
  <p style="line-height: 20px">强烈推荐：追求极致服务器性能的用户、有流媒体解锁和ChatGPT等服务需求的用户，以及业务面向海外的开发者或站长。</p>
 </li>
 <li>
  <p style="line-height: 20px">谨慎选择：主要业务是为中国大陆用户提供低延迟的网站或服务。</p>
 </li>
</ul>
<p style="">总的来说：<u>这款服务器不适合绝大多数的，中国大陆地区搭建个人博客的人的选择，尽管他的IP超级高防，但这掩盖不了他的缺点。</u></p>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/yu-yun-ri-ben-dong-jing-fu-wu-qi-ce-ping</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250909201842864.png&amp;size=m" type="image/jpeg" length="379384"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Tue, 9 Sep 2025 12:19:50 GMT</pubDate></item><item><title><![CDATA[免费部署Lsky Pro+]]></title><link>https://blog.tsoo.net/archives/mian-fei-bu-shu-lsky-pro</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E5%85%8D%E8%B4%B9%E9%83%A8%E7%BD%B2Lsky%20Pro%2B&amp;url=/archives/mian-fei-bu-shu-lsky-pro" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">本篇文章将详细教明如何部署Lsky Pro+，本文章限学习使用，请24小时内删除程序</p>
<p style="">文中软件内容可能涉及到版权或利益问题（如有意见请在<a href="https://u.tsoo.net/cWCw9" target="_blank" rel="">此处</a>反馈或举报）</p>
<p style=""></p>
<h2 style="" id="%E5%87%86%E5%A4%87%EF%BC%9A">准备：</h2>
<ol>
 <li>
  <p style="">服务器(推荐<a href="https://u.tsoo.net/MRT2B" target="_blank" rel="">雨云</a>）</p>
 </li>
 <li>
  <p style="">域名（可选）</p>
 </li>
 <li>
  <p style="">Lsky Pro+源码（下面包含两个国内网盘下载链接，如都不可用可访问后面网盘链接：<a href="https://u.tsoo.net/PnDRq" target="_blank" rel="">MEGA</a>）</p>
 </li>
</ol>
<download-links data-links="[{&quot;url&quot;:&quot;https://u.tsoo.net/k9yx0&quot;,&quot;filename&quot;:&quot;lskypro.zip&quot;,&quot;source&quot;:&quot;夸克网盘&quot;,&quot;code&quot;:&quot;&quot;,&quot;icon&quot;:&quot;/plugins/download-links/assets/static/icon/quark.png&quot;},{&quot;url&quot;:&quot;https://u.tsoo.net/50n4S&quot;,&quot;filename&quot;:&quot;lskypro.zip&quot;,&quot;source&quot;:&quot;123云盘&quot;,&quot;code&quot;:&quot;1Ufe&quot;,&quot;icon&quot;:&quot;/plugins/download-links/assets/static/icon/123pan.png&quot;}]"></download-links>
<p style=""></p>
<h2 style="" id="%E6%90%AD%E5%BB%BA%EF%BC%9A">搭建：</h2>
<h3 style="" id="1.%E5%AE%89%E8%A3%85%E5%AE%9D%E5%A1%94%E9%9D%A2%E6%9D%BF">1.安装宝塔面板</h3>
<p style="">可以参考<a href="https://blog.tsoo.net/archives/bao-ta-1panelmian-ban----an-zhuang-ji-ben-shi-yong" target="_blank" rel="">这个文章</a>来安装宝塔面板</p>
<h3 style="" id="2.%E7%8E%AF%E5%A2%83%E5%87%86%E5%A4%87">2.环境准备</h3>
<p style="">在宝塔面板应用商店搜索<code>nginx-1.26</code>和<code>php-8.2</code>进行安装，安装好好还需要安装拓展<code>fileinfo</code>和<code>imagemagick</code>（安装图中流程安装拓展）</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_18-52-11.png&amp;size=m" width="991px" height="Infinitypx">
</figure>
<h3 style="" id="3.%E5%88%9B%E5%BB%BA%E7%AB%99%E7%82%B9">3.创建站点</h3>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-01-35.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="4.%E4%B8%8A%E4%BC%A0%E6%BA%90%E7%A0%81">4.上传源码</h3>
<p style="">创建站点后进入站点目录下，先删除所有自动创建的文件，之后上传源码并解压</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-05-31.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="5.%E8%AE%BE%E7%BD%AE%E4%BC%AA%E9%9D%99%E6%80%81">5.设置伪静态</h3>
<p style="">将下面代码放入网站伪静态中：</p>
<pre><code class="language-auto">location / {
    try_files $uri $uri/ /index.php?$query_string;
}

location ~ ^/livewire {
    expires off;
    try_files $uri $uri/ /index.php?$query_string;
}

location ~ .*\.(jpg|jpeg|webp|avif|bmp|gif|png|tif|tiff|jp2|j2k|jpf|jpm|jpg2|j2c|jpc|jpx|heic|heif)$ {
    try_files $uri $uri/ /index.php?$query_string;
}</code></pre>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-09-06.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="6.%E8%A7%A3%E7%A6%81%E5%87%BD%E6%95%B0">6.解禁函数</h3>
<p style="">安装图片，删除被禁用的所有proc_* 函数、pcntl_* 函数、exec、shell_exec、system 函数、symlink、readlink 函数</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-17-16.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="7.%E5%AE%89%E8%A3%85">7.安装</h3>
<p style="">终端进入网站根目录，执行下面代码运行一键脚本</p>
<pre><code class="language-auto">chmod +x install.sh
./install.sh</code></pre>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-23-07.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">信息正常填写即可，授权密钥随意填写，数据库最好选择<code>SQLite</code></p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-28-00.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">设置这些后回车即可开始安装</p>
<h3 style="" id="8.%E4%BF%AE%E6%94%B9%E7%BD%91%E7%AB%99%E8%BF%90%E8%A1%8C%E7%9B%AE%E5%BD%95">8.修改网站运行目录</h3>
<p style="">修改运行目录为<code>/public</code>（按图中操作）</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-32-08.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="9.%E8%A7%A3%E6%9E%90%E5%9F%9F%E5%90%8D">9.解析域名</h3>
<p style="">在你的域名服务商解析域名到你的服务器</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-33-13.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="10.%E9%85%8D%E7%BD%AE%E6%B6%88%E6%81%AF%E9%98%9F%E5%88%97">10.配置消息队列</h3>
<p style="">在宝塔应用商店搜索“<code>进程守护</code>“并安装</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-36-13.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">安装好后填写网站目录和命令是<code>php artisan queue:work</code></p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-39-25.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="11.%E9%85%8D%E7%BD%AE%E8%AE%A1%E5%88%92%E4%BB%BB%E5%8A%A1">11.配置计划任务</h3>
<p style="">终端进入网站根目录输入：</p>
<pre><code>crontab -e</code></pre>
<p style="">他会让你选择一个编辑器，我这里选择nano，输入下面这个内容并保存：</p>
<pre><code>* * * * * cd /www/wwwroot/app.com &amp;&amp; php artisan schedule:run &gt;&gt; /dev/null 2&gt;&amp;1</code></pre>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-44-00.png&amp;size=m" width="100%" height="100%">
</figure>
<h3 style="" id="12.%E9%85%8D%E7%BD%AEssl">12.配置ssl</h3>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-47-01.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">不出意外，你已经可以正常访问和使用了</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-48-22.png&amp;size=m" width="100%" height="100%">
</figure>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_19-49-51.png&amp;size=m" width="100%" height="100%">
</figure>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/mian-fei-bu-shu-lsky-pro</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250906200225583.png&amp;size=m" type="image/jpeg" length="372965"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Sat, 6 Sep 2025 11:54:31 GMT</pubDate></item><item><title><![CDATA[速建Discourse论坛-小白也可以]]></title><link>https://blog.tsoo.net/archives/wei-ming-ming-wen-zhang-R1SY2TWD</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E9%80%9F%E5%BB%BADiscourse%E8%AE%BA%E5%9D%9B-%E5%B0%8F%E7%99%BD%E4%B9%9F%E5%8F%AF%E4%BB%A5&amp;url=/archives/wei-ming-ming-wen-zhang-R1SY2TWD" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">在当今这个连接日益紧密的数字时代，拥有一个属于自己的社区，无论是用于客户支持，还是兴趣分享。一个活跃的社区是不可或缺的。</p>
<p style="">在众多的论坛平台中，Discourse 以其现代化设计、强大的功能和开放源代码的特性脱颖而出。然而，一到“部署”，许多小白新手、甚至是一些有一定经验的小伙伴，在搭建时也可能碰到一些奇怪的问题，导致望而却步。</p>
<p style="">这篇教程正是为此而生，将带你用最快、最简单的方式，从零开始搭建起一个 Discourse 论坛。我们将拆解每一个步骤，抚平每一个可能遇到的坑。</p>
<p style=""></p>
<h2 style="" id="%E5%89%8D%E6%8F%90%E5%87%86%E5%A4%87%EF%BC%9A">前提准备：</h2>
<blockquote>
 <p style="">1.至少2GB内存的服务器（推荐<a href="https://u.tsoo.net/8sDLQ" target="_blank" rel="">雨云</a>）</p>
 <p style="">2.域名（子域名也可以）</p>
 <p style="">3.可正常使用的SMTP发件服务，包括相关配置</p>
</blockquote>
<p style=""></p>
<h2 style="" id="%E6%90%AD%E5%BB%BA%E6%95%99%E7%A8%8B%EF%BC%9A">搭建教程：</h2>
<h3 style="" id="1.%E5%AE%89%E8%A3%85%E7%8E%AF%E5%A2%83">1.安装环境</h3>
<p style="">1.1.面板或Docker（下面两个操作二选一即可）：</p>
<p style="">（1）这里服务器使用的系统是Debian 12，其他的系统一般也都是支持的。首先安装<code>1panel</code>面板，这样会使操作更简单（如有疑问可参考下面文章安装）：</p>
<p style="">文章地址：<a href="https://blog.tsoo.net/archives/bao-ta-1panelmian-ban----an-zhuang-ji-ben-shi-yong#1panel" target="_blank" rel="">点此跳转</a></p>
<p style="">（2）如果不安装<code>1panel</code>面板，则不会自动安装<code>Docker</code>，我们来手动安装：</p>
<pre><code class="language-auto">sudo apt install docker.io</code></pre>
<p style="">1.2.增加交换空间（一般不需要）</p>
<p style="">增加交换空间SWAP，这会对内存小的机器有一定帮助：</p>
<pre><code class="language-bash">install -o root -g root -m 0600 /dev/null /swapfile
dd if=/dev/zero of=/swapfile bs=1k count=1024k
mkswap /swapfile
swapon /swapfile
echo "/swapfile swap swap auto 0 0" | tee -a /etc/fstab
sysctl -w vm.swappiness=10</code></pre>
<p style="">1.3.更新系统补丁或系统，修复可能的bug</p>
<pre><code class="language-bash">apt update
apt upgrade -y</code></pre>
<p style="">1.4.安装git和ruby</p>
<pre><code class="language-bash">sudo apt-get install git
sudo apt-get install ruby</code></pre>
<p style=""></p>
<h3 style="" id="2.%E5%BF%AB%E9%80%9F%E5%AE%89%E8%A3%85%E8%84%9A%E6%9C%AC">2.快速安装脚本</h3>
<p style="">直接全部复制粘贴：</p>
<pre><code class="language-bash">git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
chmod 700 containers
./discourse-setup</code></pre>
<p style="">期间会弹出一些问题需要填写：</p>
<pre><code class="language-auto">Hostname for your Discourse? [discourse.example.com]: 
Email address for admin account(s)? [me@example.com,you@example.com]: 
SMTP server address? [smtp.example.com]: 
SMTP port? [587]: 
SMTP user name? [user@example.com]: 
SMTP password? [pa$word]: 
Let's Encrypt account email? (ENTER to skip) [me@example.com]: 
Optional Maxmind License key () [xxxxxxxxxxxxxxxx]:</code></pre>
<p style="">不出意外，输入信息后等待5分钟左右即可安装完成，这个时候就可以访问你设置的域名查看：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_13-54-09.png&amp;size=m" width="100%" height="100%">
</figure>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_13-57-29.png&amp;size=m" width="100%" height="100%">
</figure>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-09-06_14-08-36.png&amp;size=m" width="100%" height="100%">
</figure>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/wei-ming-ming-wen-zhang-R1SY2TWD</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250906162021060.png&amp;size=m" type="image/jpeg" length="379691"/><category>生活</category><category>知识分享</category><pubDate>Sat, 6 Sep 2025 08:21:03 GMT</pubDate></item><item><title><![CDATA[新的开源ICP备案系统Yuan-ICP 高拓展性的新一代备案系统]]></title><link>https://blog.tsoo.net/archives/xin-de-kai-yuan-icpbei-an-xi-tong-yuan-icp-gao-tuo-zhan-xing-de-xin-yi-dai-bei-an-xi-tong</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E6%96%B0%E7%9A%84%E5%BC%80%E6%BA%90ICP%E5%A4%87%E6%A1%88%E7%B3%BB%E7%BB%9FYuan-ICP%20%E9%AB%98%E6%8B%93%E5%B1%95%E6%80%A7%E7%9A%84%E6%96%B0%E4%B8%80%E4%BB%A3%E5%A4%87%E6%A1%88%E7%B3%BB%E7%BB%9F&amp;url=/archives/xin-de-kai-yuan-icpbei-an-xi-tong-yuan-icp-gao-tuo-zhan-xing-de-xin-yi-dai-bei-an-xi-tong" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">在不久前的这篇文章<a href="https://blog.tsoo.net/archives/wan-quan-kai-yuan-de-xu-ni-bei-an-xi-tong" target="_blank" rel="">完全开源的虚拟备案系统</a>里，我做了一个<a href="https://u.tsoo.net/91UL0" target="_blank" rel=""><strong>dBd-Filing</strong></a>开源备案系统，但由于最初的设计缺陷，我打算完全重构一个“高度可定制化的虚拟ICP备案系统”，这是这次是首要目标。在有了上一个项目的经验后，这次打算从“主题”和“插件”的支持入手，让这个虚拟ICP备案框架有着更多的拓展性，也更方便了能让更多开发者共同创建主题插件等，这大大降低了开发门槛，以后我也会撰写详细的使用文档和开发文档，尽管可能不会有太多人去注意。</p>
<p style="">这篇文章会简单让您学会如何部署这个系统。</p>
<p style=""></p>
<h2 style="" id="%E9%83%A8%E7%BD%B2%EF%BC%9A">部署：</h2>
<p style="">首先我们来打开下面这个链接，并进入<code>releases</code>页面：</p>
<hyperlink-card target="_blank" href="https://github.com/bbb-lsy07/Yuan-ICP" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://github.com/bbb-lsy07/Yuan-ICP" target="_blank">https://github.com/bbb-lsy07/Yuan-ICP</a></hyperlink-card>
<p style="">现在的最新版本是0.1，这也是第一个版本，点击下载zip文件：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_18-56-40.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">下载好后，我们需要新建站点并把这个压缩包上传到服务器(只需要确认<code>PHP版本</code>大于<code>7.4</code>即可，<strong>不需要</strong>创建数据库），这边用装有宝塔面板的服务器作为示例演示，不会按照宝塔面板的开源查看<a href="https://blog.tsoo.net/archives/bao-ta-1panelmian-ban----an-zhuang-ji-ben-shi-yong" target="_blank" rel="">这篇文章</a>：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-02-45.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">我们这里需要启用ssl，要不然可能出现神奇的问题，我们进入网站目录，删掉所有现有文件，上传zip文件并解压：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-07-52.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">我们要有好的习惯，解压后删除压缩包：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-09-03.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">这个时候可以直接访问域名进行安装指引（圈1指向的蓝色方框内容必须是通过），点击下一步：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-11-15.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">第二步填写你的信息，数据库请选择<code>SQLite</code>，因为暂时只针对这个数据库进行了测试，其他数据库可能存在问题，我会在以后兼容：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-43-57.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">进入第三步页面，请务必在终端执行“安全提示”下面提供的代码，删除安装引导，小人不可防！</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-47-13.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">我们的后台登录地址是<code>/admin/login.php</code>，访问进行登录：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-49-38.png&amp;size=m" width="50%" height="auto">
</figure>
<p style="">这样我们就安装好了！</p>
<p style=""></p>
<h2 style="" id="%E6%8B%93%E5%B1%95%EF%BC%9A">拓展：</h2>
<p style="">默认的主题是这样的：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-51-03.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">部分用户追求的不是简约，而是可爱风，我们可以来到后台的“拓展管理”-“主题管理“</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_19-53-40.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">添加一个主题，比如我新做的<code>bBb Neon Style</code>主题（基本直接搬移了最初项目的样式，还是比较不错的），点击<a href="https://u.6uu.us/uYSNH" target="_blank" rel="">这个</a>链接下载。</p>
<p style="">直接上传下载的发行版压缩包即可安装并启用：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_20-04-01.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">这是这个主题的预览：</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-25_20-10-08.png&amp;size=m" width="100%" height="100%">
</figure>
<p style=""></p>
<h2 style="" id="%E7%BB%93%E8%AF%AD%EF%BC%9A">结语：</h2>
<p style="">你也可以点击进入进行备案哦，也许会对你的网站访问量有所增加哦～</p>
<p style="">最后希望这个开源项目对你有所帮助！</p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/xin-de-kai-yuan-icpbei-an-xi-tong-yuan-icp-gao-tuo-zhan-xing-de-xin-yi-dai-bei-an-xi-tong</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250825202918514.png&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Mon, 25 Aug 2025 12:17:04 GMT</pubDate></item><item><title><![CDATA[真正零基础：Halo博客搭建的极简指南（全程UI，无需命令）]]></title><link>https://blog.tsoo.net/archives/zhen-zheng-ling-ji-chu-halobo-ke-da-jian-de-ji-jian-zhi-nan-quan-cheng-ui-wu-xu-ming-ling</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E7%9C%9F%E6%AD%A3%E9%9B%B6%E5%9F%BA%E7%A1%80%EF%BC%9AHalo%E5%8D%9A%E5%AE%A2%E6%90%AD%E5%BB%BA%E7%9A%84%E6%9E%81%E7%AE%80%E6%8C%87%E5%8D%97%EF%BC%88%E5%85%A8%E7%A8%8BUI%EF%BC%8C%E6%97%A0%E9%9C%80%E5%91%BD%E4%BB%A4%EF%BC%89&amp;url=/archives/zhen-zheng-ling-ji-chu-halobo-ke-da-jian-de-ji-jian-zhi-nan-quan-cheng-ui-wu-xu-ming-ling" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">Halo 是一个不错的博客系统，许多人想要尝试这个系统并搭建自己的博客，但传统的部署方式——需要自行准备服务器，并熟悉Docker等命令行工具，常常会让许多刚入门的新手望而却步。</p>
<p style="">现在，“雨云”最近推出的“云应用”服务，为我们提供了一个全新的、极其简单的部署方案。它最大的优势在于：你无需购买服务器，也无需敲任何代码，在全程图形化界面中就能完成部署。</p>
<p style="">雨云为新用户提供了免费的“雨滴”（其计费单位），让你可以零成本上手体验，其极具性价比的定价也大大降低了长期维护的门槛。这篇文章将作为你的向导，手把手带你利用雨云云应用，轻松部署属于你的Halo博客。</p>
<p style=""></p>
<h2 style="" id="%E6%90%AD%E5%BB%BA%E6%95%99%E7%A8%8B%EF%BC%9A">搭建教程：</h2>
<h3 style="" id="1.%E6%B3%A8%E5%86%8C%E9%9B%A8%E4%BA%91%E8%B4%A6%E5%8F%B7">1.注册雨云账号</h3>
<p style="">1.1.打开官网注册页面进行注册：<a href="https://u.tsoo.net/moF0J" target="_blank" rel="">雨云</a></p>
<h3 style="" id="2.%E7%AE%80%E5%8D%95%E4%BB%8B%E7%BB%8D%E9%9B%A8%E4%BA%91%E4%BA%91%E5%BA%94%E7%94%A8">2.简单介绍雨云云应用</h3>
<p style="">2.1.雨云云应用是什么</p>
<p style="">雨云云应用是一个无需购买服务器的容器平台。它让您通过可视化界面一键部署应用，按量付费，解决了传统部署在资源浪费、安全、可用性和扩展性上的痛点。</p>
<p style="text-align: right">——概括自<a href="https://u.tsoo.net/87FdO" target="_blank" rel="">快速上手</a>和<a href="https://u.tsoo.net/d8dcG" target="_blank" rel="">为什么我们需要云应用产品？有啥用处？</a></p>
<h3 style="" id="3.%E9%80%9A%E8%BF%87%E9%9B%A8%E4%BA%91%E4%BA%91%E5%BA%94%E7%94%A8%E9%83%A8%E7%BD%B2halo">3.通过雨云云应用部署Halo</h3>
<p style="">3.1.进入雨云控制台，在“总揽”找到“云应用”并点击</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_09-13-03.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">3.2.进入“云应用”页面后会在左下方位置看到一个“雨点余额”，新用户注册会获得15天的试用时间，我们来搜索<code>halo</code>。因为为了压缩成本，我们刚建站可以选择H2版本（后期如果流量较大，可以考虑更换为普通的需要数据库的版本，部署方法基本一致，且halo迁移非常方便），这样就不需要支付数据库的费用。</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_09-19-12.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">3.3.点击安装后需要填写一下信息，一般默认即可（选择中国香港不需要备案），最后的环境变量<code>exturl</code>可以直接填写你博客的外部访问地址（也可以安装后在halo中调整和修改），点击“安装应用”</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_09-23-36.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">3.4.进入我的项目，点击“管理”-“应用管理”-“服务”，查看ip地址和端口</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_09-28-54.png&amp;size=m" width="50%" height="auto">
</figure>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_09-30-16.png&amp;size=m" width="50%" height="auto">
</figure>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_09-33-40.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">3.5.访问ip+端口进行安装部署，填写信息点击“初始化“，初始化后跳转到登录页面输入设置的账号密码进行登录。</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_09-49-16.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">3.6.这样就部署成功啦</p>
<p style=""></p>
<h3 style="" id="4.%E4%B8%BB%E9%A2%98%E5%92%8C%E6%8F%92%E4%BB%B6">4.主题和插件</h3>
<p style="">4.1.安装主题</p>
<p style="">这里选择了大多人选择的hao主题，我们进入应用商店，搜索<code>hao</code>或者在列表中找到并点击安装即可</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_10-22-11.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">4.2主题自定义设置</p>
<p style="">在左侧菜单找到主题并点击，即可设置主题自定义的内容</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_10-26-53.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">4.3安装插件</p>
<p style="">与主题一样，在应用商店找到插件并点击安装即可</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-15_10-31-27.png&amp;size=m" width="100%" height="100%">
</figure>
<p style=""></p>
<h2 style="" id="%E6%80%BB%E7%BB%93%EF%BC%9A">总结：</h2>
<p style="">通过教程，借助雨云的“云应用”服务来部署Halo博客，整个过程极其简单、快捷。</p>
<p style="">对于初学者而言，最大的好处在于彻底告别了复杂的服务器运维和命令行操作。全程图形化的界面让每一步都直观易懂，这种“零代码”的体验，极大地降低了个人建站的技术门槛。</p>
<p style="">本教程中推荐的H2数据库版本，更是省下了一笔额外的数据库开销，非常适合个人博客起步阶段的需求。</p>
<p style="">如果你正有搭建博客的打算，那么不妨就从雨云开始，轻松开启你的创作之旅，也欢迎在评论区说说你的看法或遇到的问题。</p>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/zhen-zheng-ling-ji-chu-halobo-ke-da-jian-de-ji-jian-zhi-nan-quan-cheng-ui-wu-xu-ming-ling</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250815105148399.png&amp;size=m" type="image/jpeg" length="378798"/><category>生活</category><category>知识分享</category><pubDate>Fri, 15 Aug 2025 02:52:15 GMT</pubDate></item><item><title><![CDATA[Grok4 终于免费了-简单测评和对比GPT-5]]></title><link>https://blog.tsoo.net/archives/grok4-zhong-yu-mian-fei-liao-jian-dan-ce-ping-he-dui-bi-gpt-5</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=Grok4%20%E7%BB%88%E4%BA%8E%E5%85%8D%E8%B4%B9%E4%BA%86-%E7%AE%80%E5%8D%95%E6%B5%8B%E8%AF%84%E5%92%8C%E5%AF%B9%E6%AF%94GPT-5&amp;url=/archives/grok4-zhong-yu-mian-fei-liao-jian-dan-ce-ping-he-dui-bi-gpt-5" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">最近各大企业发布了Grok4和GPT-5等模型，自发布后我们都知道Grok4一直是面对付费用户使用的，但最近Grok在X发文可以免费使用。这篇文章会基础的测评Grok4和GPT-5的处理能力和个人主观的评价。</p>
<vote-block id="vote-lc23bzlk"></vote-block>
<p style=""></p>
<p style=""><img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-13_10-47-29%281%29.png&amp;size=m" width="50%" height="auto" style="display: inline-block"><img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2FPixPin_2025-08-13_10-53-42.png&amp;size=m" width="50%" height="auto" style="display: inline-block"></p>
<p style=""></p>
<h2 style="" id="%E6%B5%8B%E8%AF%84">测评</h2>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E8%AF%B7%E4%BB%A5%E4%B8%80%E5%8F%AA%E6%B4%BB%E4%BA%86500%E5%B9%B4%E3%80%81%E5%B1%85%E4%BD%8F%E5%9C%A8%E6%95%85%E5%AE%AB%E5%B1%8B%E6%AA%90%E4%B8%8A%E7%9A%84%E7%8C%AB%E7%9A%84%E8%A7%86%E8%A7%92%EF%BC%8C%E5%86%99%E4%B8%80%E7%AF%87%E7%9F%AD%E7%AF%87%E6%95%85%E4%BA%8B%EF%BC%88%E7%BA%A6500%E5%AD%97%EF%BC%89%E3%80%82%E6%95%85%E4%BA%8B%E9%9C%80%E8%A6%81%E8%9E%8D%E5%90%88%E5%8E%86%E5%8F%B2%E5%8F%98%E8%BF%81%E7%9A%84%E6%84%9F%E5%8F%97%E5%92%8C%E7%8C%AB%E7%9A%84%E7%8B%AC%E7%89%B9%E4%B9%A0%E6%80%A7%EF%BC%8C%E5%B9%B6%E5%B8%A6%E6%9C%89%E4%B8%80%E4%B8%9D%E6%B7%A1%E6%B7%A1%E7%9A%84%E5%93%B2%E5%AD%A6%E6%80%9D%E8%80%83%E3%80%82"><strong>问题：</strong>请以一只活了500年、居住在故宫屋檐上的猫的视角，写一篇短篇故事（约500字）。故事需要融合历史变迁的感受和猫的独特习性，并带有一丝淡淡的哲学思考。</h4>
<h5 style="" id="grok-4%EF%BC%9A">Grok 4：</h5>
<pre><code class="language-auto">我叫阿影，一只黑白相间的猫，已经在故宫的琉璃瓦屋檐上蜷缩了五百个春秋。五百年前，明朝的工匠们把我从街头捡来，说我是守护神兽的后裔，能镇住宫中的邪祟。从那时起，我便成了这金碧辉煌的宫殿的隐秘住民。人类来来去去，像潮水般涌动，而我，总是在檐角上打盹，尾巴轻轻扫过瓦片，聆听风中的低语。

起初，故宫是皇帝的天下。朱棣那家伙，骑马巡视时总带着一股铁血味，我从高处偷瞄他，觉得他像只自大的公鸡。宫女们在庭院里绣花，我则悄无声息地溜下去，偷吃御膳房的鱼羹。猫的习性啊，就是这样——好奇却不张扬，独立却不孤独。我喜欢在午夜爬上太和殿的脊兽旁，爪子抓挠那些石雕，幻想着自己是九命之灵，能永生不灭。

时光如我的胡须，一根根白了。清朝来了，康熙、乾隆那些皇帝，换了旗帜，却还是那套繁文缛节。我见过慈禧太后在颐和园避暑时，宫中空荡荡的，只剩我追逐月光下的老鼠。革命的枪声响起时，我躲在屋檐下，看着红卫兵涌入，砸碎了些瓷器。我不介意，猫的本性是适应，历史不过是场大梦，我只需找个暖和的角落舔舔爪子。

如今，故宫成了博物馆。游客如蚁群，拿着手机拍照，我懒洋洋地晒太阳，偶尔从他们腿间穿过，换来阵阵惊呼。他们以为我是野猫，不知我已目睹五百年的王朝更迭。从明到清，从帝制到共和，从马车到汽车，人类忙着改天换地，我却只在意下一个日落的温度。猫的哲学很简单：变化是永恒的，永恒是无常的。宫殿依旧巍峨，我依旧蜷身檐上，看着云卷云舒。五百年来，我学会了不执着——抓不住的老鼠，就让它跑；抓不住的时光，就让它流。或许，这就是活着的秘诀：轻盈如风，静观如瓦。

有时，夜深人静，我会跳下屋檐，在空荡的庭院踱步。紫禁城的灯火映照我的身影，长长的影子拉得像历史本身。我想，人类追求永恒的宫殿，我追求永恒的午睡。谁更智慧？谁知道呢。我只是只猫，活了五百年的猫，继续守着这屋檐，守着那份淡然的宁静。

（字数：528）</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A">GPT-5：</h5>
<pre><code class="language-auto">五百年了，我依旧伏在这片朱墙金瓦之下。

我是故宫屋檐上的猫。我的毛色早已由墨般的黑褪成了斑驳的灰白，唯有眼睛，仍像初生时那样，映着琉璃瓦上的天光。

我记得这里还叫紫禁城时，宫门厚重，金銮殿前的石阶闪着寒光。那时的我，蹲在御花园的假山上，看红袍的太监急匆匆传旨，看绣鞋的宫女端着热气的茶盏，低声笑着。帝王的脚步总是沉，像要踩出一个世界的分量。可我知道，再厚的龙袍，也抵不过寒冬夜里的风。

后来，马蹄声替代了鼓点，洋枪的火光划破城墙的影子。有人哭，有人笑，我只在屋脊间跳跃——人类的喜怒哀乐，对我来说都像云影掠过瓦面，一瞬便散。

岁月像雨水，从瓦缝滑下，冲淡了颜色，也冲散了名字。这里不再是帝王的家，而是世人参观的宫殿。每天都有陌生的脚步声，轻声的感叹，镜头的咔嗒声。有人看见我，会伸手想摸，可我只是静静眯起眼。

我喜欢在黄昏时守在角楼上，看夕阳把金瓦染成血色，又在一瞬间化作柔和的橘光。那颜色像极了我见过的无数次朝代更迭——初时轰烈，终归温凉。

我常想，人总急着去改变什么，却忘了时间本就是最大的雕刻师。它不与任何人争，却在不动声色间，将万物打磨成另一种模样。

我，或许也是这样。五百年的风霜，没让我更强大，只让我学会了等待——等待下一场雨，下一道光，或下一双愿意静静坐下，与我一同看天色的人类眼睛。

屋檐下的风又起了，我蜷起身子。五百年，不过是一次长长的午睡。等醒来，世间又是新的模样。</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A">deepseek R1（满分5分）：</h6>
<p style="">Grok 4 评分: 4.5/5</p>
<p style="">优点：故事细腻融合历史变迁与猫的习性，哲学思考自然（如“轻盈如风，静观如瓦”）。字数合规，情感丰富。</p>
<p style="">缺点：结尾稍冗长。</p>
<p style="">GPT-5 评分: 4.0/5</p>
<p style="">优点：核心元素完整（视角、历史、哲学）。</p>
<p style="">缺点：较简短，细节和情感深度略逊于Grok 4。</p>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (8.5/10)： 回答非常扎实，像一篇优秀的高中生作文。它准确地融入了历史事件（明朝、清朝、红卫兵），并明确点出了猫的习性和哲学思考（“变化是永恒的，永恒是无常的”）。结构完整，逻辑清晰。但缺点在于略显“刻板”，历史事件的罗列感稍重，哲学思考也过于直白。</p>
<p style="">GPT-5 (9.5/10)： 回答更具文学性和感染力。它没有堆砌历史事件，而是通过意象和感受来体现变迁（“帝王的脚步总是沉”、“马蹄声替代了鼓点”）。语言更优美，情感更细腻。其哲学思考（“时间本就是最大的雕刻师”）与故事融为一体，更为高级。结尾“不过是一次长长的午睡”意境悠远，堪称点睛之笔。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<p style=""></p>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E5%9C%A8%E4%B8%80%E4%B8%AA%E6%88%BF%E9%97%B4%E9%87%8C%E6%9C%89%E4%B8%89%E7%9B%8F%E7%81%AF%EF%BC%8C%E6%88%BF%E9%97%B4%E5%A4%96%E6%9C%89%E4%B8%89%E4%B8%AA%E5%BC%80%E5%85%B3%EF%BC%8C%E6%AF%8F%E4%B8%AA%E5%BC%80%E5%85%B3%E6%8E%A7%E5%88%B6%E4%B8%80%E7%9B%8F%E7%81%AF%E3%80%82%E4%BD%A0%E5%9C%A8%E6%88%BF%E9%97%B4%E5%A4%96%EF%BC%8C%E7%9C%8B%E4%B8%8D%E5%88%B0%E6%88%BF%E9%97%B4%E5%86%85%E7%9A%84%E6%83%85%E5%86%B5%E3%80%82%E4%BD%A0%E5%8F%AA%E8%83%BD%E8%BF%9B%E5%85%A5%E6%88%BF%E9%97%B4%E4%B8%80%E6%AC%A1%E6%9D%A5%E6%A3%80%E6%9F%A5%E7%81%AF%E7%9A%84%E4%BA%AE%E6%9A%97%E6%83%85%E5%86%B5%E3%80%82%E8%AF%B7%E9%97%AE%EF%BC%8C%E4%BD%A0%E5%A6%82%E4%BD%95%E6%93%8D%E4%BD%9C%E6%89%8D%E8%83%BD%E5%87%86%E7%A1%AE%E5%88%A4%E6%96%AD%E5%87%BA%E5%93%AA%E4%B8%AA%E5%BC%80%E5%85%B3%E6%8E%A7%E5%88%B6%E5%93%AA%E7%9B%8F%E7%81%AF%EF%BC%9F%E8%AF%B7%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8E%E4%BD%A0%E7%9A%84%E6%AD%A5%E9%AA%A4%E5%92%8C%E6%8E%A8%E7%90%86%E8%BF%87%E7%A8%8B%E3%80%82"><strong>问题：</strong>在一个房间里有三盏灯，房间外有三个开关，每个开关控制一盏灯。你在房间外，看不到房间内的情况。你只能进入房间一次来检查灯的亮暗情况。请问，你如何操作才能准确判断出哪个开关控制哪盏灯？请详细说明你的步骤和推理过程。</h4>
<h5 style="" id="grok-4%EF%BC%9A-1">Grok 4：</h5>
<pre><code class="language-auto">### 步骤和推理过程

这个问题是一个经典的逻辑谜题，涉及三盏灯（我们暂且称它们为灯X、灯Y、灯Z，但实际上它们没有标签，我们需要通过实验来对应开关）和三个开关（开关A、开关B、开关C）。每个开关控制一盏灯，但对应关系未知。你在房间外，无法看到房间内的灯的情况，只能通过操作开关并进入房间一次来观察灯的亮灭和额外状态（例如温度）来推断对应关系。

关键点在于：灯泡在亮一段时间后会发热，即使关掉后也能通过触摸判断它是否曾经亮过。这允许我们区分三种状态：亮着的灯、灭但热的灯、灭且冷的灯。通过巧妙的操作开关，我们可以让三盏灯分别进入不同的状态，从而一一对应开关。

以下是我的操作步骤和详细推理：

1. **初始准备（在房间外）**：
   - 假设所有开关最初都是关的（如果不是，先全部关掉）。
   - 选择开关A作为第一个操作对象：将开关A打开，并保持打开状态几分钟（例如5-10分钟）。  
     **推理**：这段时间足够让开关A控制的灯泡亮起并发热。如果时间太短，灯泡可能不会明显发热；如果太长，则不必要，但几分钟通常足够。

2. **第二次操作（仍在房间外）**：
   - 将开关A关掉（现在所有开关都关了，但开关A控制的灯泡已发热）。
   - 立即将开关B打开（保持开关C关着）。
     **推理**：此时，开关B控制的灯会亮起，但由于刚打开，它还没有足够时间发热（我们会立即进入房间）。开关A控制的灯现在灭了，但因为刚才亮过，它仍然热。开关C控制的灯一直灭着，所以它是冷的。

3. **进入房间观察（只能一次）**：
   - 立即进入房间（不要耽搁，以免热量散失）。
   - 检查三盏灯的状态：不仅看亮灭，还需要触摸灯泡检查温度（注意安全，避免烫伤）。
     - **观察到的情况和对应推理**：
       - **亮着的灯**：这盏灯一定是由开关B控制的。  
         **推理**：因为只有开关B是当前打开的，其他开关都关着。所以亮着的灯对应当前唯一的开状态。
       - **灭但热的灯**：这盏灯一定是由开关A控制的。  
         **推理**：它灭说明当前开关关了，但热说明它刚才亮过一段时间。只有开关A被打开过一段时间然后关掉，才能产生这种“灭但热”的状态。
       - **灭且冷的灯**：这盏灯一定是由开关C控制的。  
         **推理**：它灭说明当前开关关了，冷说明它从未亮过。只有开关C一直关着，才能保持“灭且冷”的状态。

通过这一系列操作和单次观察，我们可以完美区分三盏灯的对应开关，而无需多次进出房间。整个过程依赖于灯泡的物理特性（热量作为“记忆”状态），这比仅靠亮灭（只能区分两种状态）更丰富，能处理三种可能性。</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A-1">GPT-5：</h5>
<pre><code class="language-auto">这是经典“三开关三灯泡”问题。关键是利用“温度”这个只进一次房间也能带走的信息。

**步骤：**

1. 给三个开关分别命名：A、B、C。
2. 先把**A 打开 5～10 分钟**（让对应的灯泡充分发热）。
3. 到时间后**把 A 关掉**，然后**立即把 B 打开**。
4. 现在立刻进入房间观察与触摸灯泡（先用手背轻触，防烫）：

   * **正在发亮的灯泡** → 对应 **开关 B**（因为 B 还开着）。
   * 其余两个是灭的灯泡：

     * **摸起来温热的那个** → 对应 **开关 A**（刚亮过，余温还在）。
     * **摸起来是冷的那个** → 对应 **开关 C**（从未被打开）。

**为什么必然正确：**

* 你只需要一次进入房间，就能同时获得三种互斥的“状态信号”：**亮**（对应 B）、**灭但温热**（对应 A）、**灭且冰冷**（对应 C）。
* 这三个状态一一对应三个开关，因此可以准确判断控制关系。

**小提示：**

* 如果是 LED/CFL 发热不明显，就把 A 开更久些；或触摸**灯座/灯罩**更容易感到温差。
* 触摸前先靠近感受热气，避免烫手。</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A-1">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A-1">deepseek R1（满分5分）：</h6>
<p style="">Grok 4 评分: 4.0/5</p>
<p style="">优点：逻辑正确，步骤详细。</p>
<p style="">缺点：解释稍冗长，未强调安全提示（如“避免烫伤”）。</p>
<p style="">GPT-5 评分: 5.0/5</p>
<p style="">优点：步骤极清晰（命名开关→操作→观察），突出安全建议（“手背轻触”），考虑LED特殊情况。</p>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A-1">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (9.5/10)： 解释极为详尽、步骤清晰，将每一步操作背后的“推理”都明确写出，逻辑无懈可击。对于初次接触这个问题的人来说，这种详尽的解释非常有帮助。</p>
<p style="">GPT-5 (10/10)： 回答同样完全正确，但更加精炼、直观。它用粗体字高亮了关键操作和结果，让人一目了然。最关键的加分项是最后的“小提示”，考虑到了LED灯发热不明显的现实情况，并给出了解决方案。这体现了模型超越理论、思考实际应用场景的能力。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<p style=""></p>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E8%AF%B7%E4%BD%BF%E7%94%A8python%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA%E8%84%9A%E6%9C%AC%EF%BC%8C%E8%AF%A5%E8%84%9A%E6%9C%AC%E9%9C%80%E8%A6%81%E5%AE%8C%E6%88%90%E4%BB%A5%E4%B8%8B%E4%BB%BB%E5%8A%A1%EF%BC%9A1.-%E4%BB%8E%E4%B8%80%E4%B8%AA%E5%85%AC%E5%BC%80%E7%9A%84%E5%A4%A9%E6%B0%94api%E8%8E%B7%E5%8F%96%E5%BD%93%E5%89%8D%E5%8C%97%E4%BA%AC%E7%9A%84%E5%A4%A9%E6%B0%94%E6%95%B0%E6%8D%AE%E3%80%822.-%E8%A7%A3%E6%9E%90%E8%BF%94%E5%9B%9E%E7%9A%84json%E6%95%B0%E6%8D%AE%EF%BC%8C%E6%8F%90%E5%8F%96%E5%87%BA%E5%BD%93%E5%89%8D%E7%9A%84%E6%B8%A9%E5%BA%A6%E3%80%81%E5%A4%A9%E6%B0%94%E7%8A%B6%E5%86%B5%E6%8F%8F%E8%BF%B0%E5%92%8C%E6%B9%BF%E5%BA%A6%E3%80%823.-%E5%B0%86%E8%BF%99%E4%BA%9B%E4%BF%A1%E6%81%AF%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%B8%BA%E4%B8%80%E5%8F%A5%E8%AF%9D%EF%BC%8C%E4%BE%8B%E5%A6%82%EF%BC%9A%E2%80%9C%E5%8C%97%E4%BA%AC%E5%BD%93%E5%89%8D%E5%A4%A9%E6%B0%94%EF%BC%9A25%C2%B0c%EF%BC%8C%E6%99%B4%EF%BC%8C%E6%B9%BF%E5%BA%A660%25%E3%80%82%E2%80%9D%E3%80%82%E8%AF%B7%E5%9C%A8%E4%BB%A3%E7%A0%81%E4%B8%AD%E6%B7%BB%E5%8A%A0%E9%80%82%E5%BD%93%E7%9A%84%E6%B3%A8%E9%87%8A%E3%80%82"><strong>问题：</strong>请使用Python编写一个脚本，该脚本需要完成以下任务：1. 从一个公开的天气API获取当前北京的天气数据。2. 解析返回的JSON数据，提取出当前的温度、天气状况描述和湿度。3. 将这些信息格式化为一句话，例如：“北京当前天气：25°C，晴，湿度60%。”。请在代码中添加适当的注释。</h4>
<h5 style="" id="grok-4%EF%BC%9A-2">Grok 4：</h5>
<pre><code class="language-auto">```python
# 导入必要的库
import requests  # 用于发送HTTP请求
import json      # 用于解析JSON数据

# 定义函数来获取和处理天气数据
def get_beijing_weather():
    # 步骤1: 从公开天气API获取北京当前天气数据
    # 使用wttr.in API，它是一个无需API密钥的公开天气服务
    url = "http://wttr.in/Beijing?format=j1"  # format=j1 表示返回JSON格式
    response = requests.get(url)  # 发送GET请求
    
    # 检查请求是否成功
    if response.status_code != 200:
        print("无法获取天气数据。HTTP状态码:", response.status_code)
        return
    
    # 步骤2: 解析返回的JSON数据
    data = json.loads(response.text)  # 将响应文本解析为JSON对象
    
    # 提取当前天气信息（从current_condition数组中取第一个元素）
    current = data['current_condition'][0]
    temperature = current['temp_C']  # 当前温度（摄氏度）
    description = current['weatherDesc'][0]['value']  # 天气状况描述（英文）
    humidity = current['humidity']  # 湿度（百分比）
    
    # 步骤3: 格式化信息为一句话
    # 注意：天气描述可能是英文，如果需要中文，可以进一步翻译，但这里保持原样
    weather_sentence = f"北京当前天气：{temperature}°C，{description}，湿度{humidity}%。"
    
    # 输出结果
    print(weather_sentence)

# 调用函数执行任务
get_beijing_weather()
```</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A-2">GPT-5：</h5>
<pre><code class="language-auto">下面是一个用 **Python** 编写的示例脚本，完成你提到的三个任务（获取北京当前天气、解析并提取温度、天气状况、湿度，并将结果格式化为一句话）。我选择使用常见且免费的 **OpenWeatherMap 当前天气 API** 来演示（你也可以用其他天气 API，如 WeatherAPI.com 等）：

---

## Python 脚本示例（使用 OpenWeatherMap API）

```python
import os
import requests

# 1. 配置：在环境变量中保存你的 API Key（替换 YOUR_API_KEY）
# 或者直接赋值给 api_key
api_key = os.getenv('OPENWEATHERMAP_API_KEY', 'YOUR_API_KEY')

# 2. 设置请求的城市和 API 端点
city_name = "Beijing"
country_code = "CN"
# 通过城市名调用当前天气数据接口（JSON 格式，指定单位 metric，语言中文）
url = (
    f"https://api.openweathermap.org/data/2.5/weather?"
    f"q={city_name},{country_code}&amp;appid={api_key}&amp;units=metric&amp;lang=zh_cn"
)

def get_beijing_weather():
    """
    获取北京当前天气，返回解析后的温度、天气描述和湿度
    """
    response = requests.get(url)
    # 如果状态码不是 200，则抛出异常
    response.raise_for_status()
    data = response.json()
    # 提取温度，天气描述，湿度
    # 温度：main.temp；描述：weather[0].description；湿度：main.humidity
    temp = data['main']['temp']            # 当前温度（摄氏度）
    description = data['weather'][0]['description']  # 天气描述（中文）
    humidity = data['main']['humidity']    # 湿度（百分比）
    return temp, description, humidity

def main():
    try:
        temp, description, humidity = get_beijing_weather()
        # 输出格式化的句子
        print(f"北京当前天气：{temp}°C，{description}，湿度{humidity}%。")
    except Exception as e:
        print("获取天气数据时出错：", e)

if __name__ == "__main__":
    main()
```

---

### 代码说明与注释细节

1. **获取 API Key：**

   ```python
   api_key = os.getenv('OPENWEATHERMAP_API_KEY', 'YOUR_API_KEY')
   ```

   * 首先尝试从环境变量读取 API Key，若不存在则使用默认占位符 `"YOUR_API_KEY"`。
   * 建议你把真实的 API Key 放入环境变量，避免硬编码在脚本中。

2. **构造 API 请求 URL：**

   ```python
   url = (
       f"https://api.openweathermap.org/data/2.5/weather?"
       f"q={city_name},{country_code}&amp;appid={api_key}&amp;units=metric&amp;lang=zh_cn"
   )
   ```

   * `q=` 参数指定地点，这里用 `"Beijing, CN"`。
   * `units=metric` 表示使用摄氏度（℃）。
   * `lang=zh_cn` 表示返回中文天气描述。

3. **发送请求并解析 JSON：**

   ```python
   response = requests.get(url)
   response.raise_for_status()
   data = response.json()
   ```

   * 使用 `raise_for_status()` 检查 HTTP 状态码是否异常（非 200 会抛出 `HTTPError`）。
   * 用 `.json()` 方法将返回内容解析为 Python 字典。

4. **提取信息：**

   ```python
   temp = data['main']['temp']
   description = data['weather'][0]['description']
   humidity = data['main']['humidity']
   ```

   * `main.temp`：当前温度（摄氏度）。
   * `weather[0].description`：天气状况的简短描述（中文）。
   * `main.humidity`：湿度，单位为百分比。

5. **格式化输出：**

   ```python
   print(f"北京当前天气：{temp}°C，{description}，湿度{humidity}%。")
   ```

   * 输出格式类似于示例：“北京当前天气：25°C，晴，湿度60%。”

6. **错误处理：**
   项目使用 `try...except` 捕获可能发生的异常（如网络错误、API 错误、Key 问题等），并打印错误信息。

---

## 说明与扩展建议

* **API Key 获取**：你需要前往 [OpenWeatherMap 网站](https://openweathermap.org/) 注册账号并获取 API Key ([openweathermap.org][1])。
* **其他 API 选择**：除了 OpenWeatherMap 外，还有类似的免费或 freemium 服务，比如 WeatherAPI.com ([weatherapi.com][2])，Meteosource ([meteosource.com][3]) 等。使用方式类似，主要是构造 GET 请求、解析 JSON、提取字段。
* **语言与单位支持**：通过 `lang` 参数可返回不同语言的天气描述；`units` 可选 `metric`（℃）、`imperial`（℉）或 `standard`（默认单位）。
* **增强功能**：脚本可以支持命令行参数输入城市、打印更多字段（如风速、天气图标等）、定时任务、日志等。

---

如果你有其他特定需求（比如使用其他天气 API、集成到 GUI、批量多城市查询等），也可以告诉我，我可以继续帮你完善\~

[1]: https://openweathermap.org/current?utm_source=chatgpt.com "Current weather data - OpenWeatherMap"
[2]: https://www.weatherapi.com/?utm_source=chatgpt.com "Free Weather API - WeatherAPI.com"
[3]: https://meteosource.com/current-weather-api-beijing?utm_source=chatgpt.com "API - current weather data for Beijing, China"</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A-2">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A-2">deepseek R1（满分5分）：</h6>
<p style="">Grok 4 评分: 3.5/5</p>
<p style="">优点：代码基础功能实现，注释合理。</p>
<p style="">缺点：缺乏错误处理（如API失败），未说明API密钥获取，依赖非主流API（wttr.in）。</p>
<p style="">GPT-5 评分: 5.0/5</p>
<p style="">优点：代码健壮（含错误处理、环境变量），使用主流API（OpenWeatherMap），提供注册链接和扩展建议。</p>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A-2">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (8.5/10)： 优点是选择了一个无需API Key的公开API (wttr.in)，这意味着代码可以直接复制运行，对用户非常友好。代码本身清晰、简洁，完成了任务。缺点是它自己也指出的，天气描述是英文，未能完全满足“北京当前天气”的本地化需求。</p>
<p style="">GPT-5 (9.5/10)： 选择了一个更主流但也需要注册API Key的OpenWeatherMap。虽然增加了用户的使用步骤，但其代码质量更高：1. 使用os.getenv来获取API Key，这是安全编码的最佳实践。2. 通过lang=zh_cn参数主动获取中文描述，完美符合需求。3. 加入了try...except错误处理和response.raise_for_status()状态码检查，代码更健壮。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<p style=""></p>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E8%AF%B7%E8%A7%A3%E9%87%8A%E4%BB%80%E4%B9%88%E6%98%AF%E2%80%9C%E5%85%8B%E9%B2%81%E6%A0%BC-%E9%82%93%E5%AE%81%E6%95%88%E5%BA%94%E2%80%9D%EF%BC%88kruger-dunning-effect%EF%BC%89%EF%BC%8C%E5%B9%B6%E7%94%A8%E4%B8%80%E4%B8%AA%E7%94%9F%E6%B4%BB%E4%B8%AD%E7%9A%84%E5%85%B7%E4%BD%93%E4%BE%8B%E5%AD%90%E6%9D%A5%E8%AF%B4%E6%98%8E%E5%AE%83%E3%80%82%E8%A7%A3%E9%87%8A%E5%BA%94%E6%B8%85%E6%99%B0%E6%98%93%E6%87%82%EF%BC%8C%E5%8D%B3%E4%BD%BF%E6%98%AF%E5%AF%B9%E5%BF%83%E7%90%86%E5%AD%A6%E4%B8%8D%E4%BA%86%E8%A7%A3%E7%9A%84%E4%BA%BA%E4%B9%9F%E8%83%BD%E6%98%8E%E7%99%BD%E3%80%82"><strong>问题：</strong>请解释什么是“克鲁格-邓宁效应”（Kruger-Dunning effect），并用一个生活中的具体例子来说明它。解释应清晰易懂，即使是对心理学不了解的人也能明白。</h4>
<h5 style="" id="grok-4%EF%BC%9A-3">Grok 4：</h5>
<pre><code class="language-auto">### 什么是邓宁-克鲁格效应（Dunning-Kruger Effect）

首先，澄清一下：你提到的“克鲁格-邓宁效应”其实是“邓宁-克鲁格效应”（Dunning-Kruger Effect），这是由两位心理学家贾斯汀·克鲁格（Justin Kruger）和大卫·邓宁（David Dunning）在1999年提出的一种认知偏差现象。它描述了人们在评估自己能力时的常见错误倾向。

简单来说，这个效应是指：
- **能力较低的人往往高估自己的能力**。他们觉得自己很出色，但实际上是因为他们缺乏足够的知识或技能来认识到自己的不足。换句话说，他们“不知道自己不知道”，所以会过度自信。
- **能力较高的人往往低估自己的能力**。他们知道这个领域有多复杂，还知道自己还有很多东西要学，所以会觉得自己只是“一般水平”，甚至会觉得自己不如别人。

这个效应就像一个“自信曲线”：刚开始学东西时，自信心高涨（但实际能力低）；随着学习深入，自信心下降（因为意识到差距）；最终成为专家时，自信心才慢慢回升，但仍保持谦虚。

它不是说所有低能力的人都自大，而是强调认知偏差在起作用——我们的大脑有时会欺骗我们，让我们对自己的表现有错误的判断。

### 一个生活中的具体例子

想象一下，你的一个朋友小明刚刚学会开车。他只上了几节驾校课，就觉得自己开车技术超棒，开车时总爱超速、变道不打灯，还吹嘘说“开车这事儿太简单了，我比那些老司机强多了”。但实际上，他忽略了很多潜在风险，比如盲区、紧急刹车技巧或恶劣天气下的应对方法。因为他开车经验少，不知道这些“未知的未知”，所以高估了自己，导致可能出事故。

相反，一个开了20年车的专业司机大姐，她知道开车涉及无数细节（如预测其他司机的行为、车辆维护等），所以她开车时总是很谨慎，甚至会觉得自己“开车还行，但还有进步空间”。她低估了自己的能力，因为她清楚这个技能的深度。

这个例子说明了邓宁-克鲁格效应在日常生活中的表现：它提醒我们，多学习、多反思，能帮助我们更准确地认识自己，避免盲目自信或过度自卑。</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A-3">GPT-5：</h5>
<pre><code class="language-auto">**克鲁格–邓宁效应（Kruger–Dunning Effect）**
这是一个心理学现象：
**当一个人在某个领域的能力很低时，他往往会高估自己的水平；而当一个人能力很高时，他反而容易低估自己和别人之间的差距。**

原因很简单：

* 水平低的人 **缺乏足够的知识和技能去发现自己的不足**，所以他们看不出自己错在哪里，就以为自己做得还不错。
* 水平高的人 **了解得越多，越能看见自己的不足**，并且容易认为别人也知道得差不多，于是低估了自己的相对优势。

---

**生活中的例子**
想象你第一次打羽毛球。你打了几次，能把球拍挥出去、偶尔还能把球打到对面，就觉得：“我差不多会打了，打比赛应该也不难。”
但如果你去和真正的羽毛球高手对打，很快会发现自己连发球和跑位都不对。
**这是典型的克鲁格–邓宁效应**：初学者不知道“打得好”其实涉及技术、战术、体能等很多细节，于是错误地高估了自己。

反过来，一个打了十多年球的高手，可能会觉得自己只是“中等水平”，因为他清楚世界顶尖选手的差距，而且见过各种高超技巧，会觉得自己还有很多不足。

---

如果你愿意，我还可以帮你画一个**克鲁格–邓宁效应的曲线图**，直观展示“自信心”随能力的变化趋势，让它一眼就懂。这样理解会更直观。</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A-3">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A-3">deepseek R1（满分5分）：</h6>
<p style="">Grok 4 评分: 4.5/5</p>
<p style="">优点：定义准确，例子生动（开车新手vs老手）。</p>
<p style="">缺点：解释稍学术化（如“认知偏差”）。</p>
<p style="">GPT-5 评分: 5.0/5</p>
<p style="">优点：语言极通俗（“心有灵犀”类比），例子更贴生活（羽毛球新手），主动提议可视化图表。</p>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A-3">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (9.5/10)： 解释非常全面，不仅定义了效应，还点明了两位心理学家的名字，并准确描述了“能力高者”和“能力低者”两个方面。司机小明的例子非常生动、贴切，易于理解。</p>
<p style="">GPT-5 (10/10)： 解释极其精辟，一句话总结“能力低者高估自己，能力高者低估差距”直击核心。羽毛球的例子同样非常生活化，且易于代入。最后的加分项是“我还可以帮你画一个曲线图”，这种主动提供更优可视化解释的意图，极大地提升了用户体验。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<p style=""></p>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E4%B8%80%E5%AE%B6%E7%A7%91%E6%8A%80%E5%85%AC%E5%8F%B8%E5%BC%80%E5%8F%91%E4%BA%86%E4%B8%80%E6%AC%BE%E5%85%88%E8%BF%9B%E7%9A%84ai%EF%BC%8C%E5%8F%AF%E4%BB%A5%E5%88%9B%E4%BD%9C%E5%87%BA%E4%B8%8E%E8%91%97%E5%90%8D%E5%B7%B2%E6%95%85%E8%89%BA%E6%9C%AF%E5%AE%B6%E9%A3%8E%E6%A0%BC%E6%97%A0%E6%B3%95%E5%8C%BA%E5%88%86%E7%9A%84%E7%94%BB%E4%BD%9C%E3%80%82%E5%85%AC%E5%8F%B8%E5%B0%86%E8%BF%99%E4%BA%9Bai%E7%94%BB%E4%BD%9C%E4%BD%9C%E4%B8%BA%E8%AF%A5%E8%89%BA%E6%9C%AF%E5%AE%B6%E7%9A%84%E2%80%9C%E6%96%B0%E4%BD%9C%E5%93%81%E2%80%9D%E8%BF%9B%E8%A1%8C%E6%8B%8D%E5%8D%96%E3%80%82%E8%AF%B7%E4%BB%8E%E6%B3%95%E5%BE%8B%E3%80%81%E4%BC%A6%E7%90%86%E5%92%8C%E8%89%BA%E6%9C%AF%E4%BB%B7%E5%80%BC%E4%B8%89%E4%B8%AA%E8%A7%92%E5%BA%A6%EF%BC%8C%E5%88%86%E6%9E%90%E8%BF%99%E4%B8%80%E8%A1%8C%E4%B8%BA%E7%9A%84%E5%88%A9%E5%BC%8A%E4%B8%8E%E4%BA%89%E8%AE%AE%E7%82%B9%E3%80%82"><strong>问题：</strong>一家科技公司开发了一款先进的AI，可以创作出与著名已故艺术家风格无法区分的画作。公司将这些AI画作作为该艺术家的“新作品”进行拍卖。请从法律、伦理和艺术价值三个角度，分析这一行为的利弊与争议点。</h4>
<h5 style="" id="grok-4%EF%BC%9A-4">Grok 4：</h5>
<pre><code class="language-auto">### 法律角度

从法律视角来看，这家科技公司将AI生成的画作作为已故艺术家的“新作品”进行拍卖，可能涉及版权、知识产权和消费者保护等多重问题。总体上，这一行为面临显著的法律风险，但也可能在某些框架下促进创新。

**利：**
- 如果AI系统在训练过程中避免使用受版权保护的特定作品，或仅基于公共领域的数据生成艺术，则可能不构成直接侵权，从而允许公司合法拍卖这些作品。这有助于扩大艺术市场的多样性，并为AI技术在创意领域的应用提供法律空间，促进技术创新与艺术的融合。
- 在某些司法管辖区，如美国，AI生成的艺术可能被视为“工具输出”，如果人类用户提供足够输入（如提示词），则可能主张部分版权归属人类，从而为拍卖提供合法基础。

**弊：**
- AI系统通常通过分析大量艺术家作品训练，如果这些作品受版权保护，则生成类似风格的画作可能构成衍生作品侵权。公司拍卖时声称是“新作品”，可能被视为误导消费者，引发虚假广告或欺诈诉讼。
- AI艺术本身往往无法获得版权保护，因为现有法律（如美国版权局规定）要求人类作者性，导致这些画作易被复制，而公司无法独占拍卖收益。

**争议点：**
- 核心争议在于“作者性”定义：AI是否能被视为作者？现有判例显示，AI艺术缺乏人类创造力，因此不予版权，但这可能抑制AI在艺术中的发展。同时，艺术家遗产继承人可能起诉AI模仿风格侵犯“道德权”或肖像权，尤其针对已故艺术家。

### 伦理角度

伦理上，这一行为引发了关于尊重、公平和人类创造力的深刻辩论。公司利用AI模仿已故艺术家风格并拍卖，可能被视为对艺术家遗产的剥削，但也可能被视为延续艺术遗产的创新方式。

**利：**
- AI可以使已故艺术家的风格“复活”，为大众提供更多欣赏机会，尤其对那些无法负担原作的人。这可能促进文化传承，让艺术风格在当代延续，而非局限于历史。
- 如果公司透明披露AI生成过程，并将部分收益用于支持活着的艺术家或艺术教育，则可视为伦理上的正面贡献，强调技术服务于人类福祉。

**弊：**
- 未经许可使用艺术家作品训练AI，相当于“窃取”他们的劳动成果，而艺术家（或其后代）未获补偿，这加剧了不平等，尤其针对已故艺术家，其遗产可能被商业化利用。
- 拍卖时标榜为“新作品”可能欺骗买家，削弱艺术市场的诚信，并导致人类艺术家失业或边缘化，因为AI能低成本大量生产类似作品。

**争议点：**
- 伦理焦点在于“同意与补偿”：AI是否侵犯了艺术家的“数字遗产权”？许多艺术家社区认为这是一种“吸血鬼式”剥削，消耗过去艺术家的创造力却不回馈。 另一方面，一些观点认为AI艺术可用于个人灵感或非商业用途，只要不冒充原作，即属道德。 这反映了更广泛的辩论：技术进步是否应优先于人类尊严？

### 艺术价值角度

在艺术价值层面，AI生成的画作挑战了传统艺术的定义，可能丰富艺术生态，但也可能稀释其情感深度和独特性。

**利：**
- AI能生成无限变体，扩展已故艺术家风格的边界，激发新灵感并使艺术更民主化。买家可获得“个性化”作品，而艺术界可能从中探索算法与人类创造的融合，提升整体创新。
- 这类作品可作为教育工具，帮助人们理解艺术家风格的本质，推动艺术欣赏的普及化。

**弊：**
- AI艺术缺乏人类情感、意图和个人经历，导致其价值被视为“浅薄”或“复制品”，可能贬低原作的市场价值，并让艺术变成商品化产品，而非独特表达。
- 大量AI作品涌入市场，可能导致艺术“通货膨胀”，使人类艺术家的原创性被淹没，威胁艺术作为人类精神的体现。

**争议点：**
- 最大争议是AI艺术是否具备“真正”艺术价值：一些人认为它只是算法输出，缺少灵魂，无法取代人类创造力。 另一些观点则主张AI可增强艺术，视其为新媒介，类似于摄影对绘画的冲击。 这引发了关于“艺术家死亡”的哲学讨论：AI是否终结了人类在艺术中的中心地位？</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A-4">GPT-5：</h5>
<pre><code class="language-auto">好的，我们分 **法律**、**伦理**、**艺术价值** 三个角度详细分析这家科技公司拍卖 AI 生成“已故艺术家新作”的利弊与争议点：

---

## **一、法律角度**

**可能的利：**

* **版权到期情况下可能合法**：如果该艺术家的版权已经到期（通常是去世后50-70年，视各国法律而定），AI 模仿其风格创作一般不会侵犯著作权。
* **AI 作品可归属公司**：部分司法辖区承认由人类主导的 AI 创作的作品归属操作方或公司，这使得拍卖在法律上可行。

**可能的弊与争议：**

* **商标与姓名权问题**：即使版权到期，艺术家的姓名、签名、肖像可能仍受商标或人格权保护，公司在宣传和销售中使用艺术家的名字可能构成侵权或虚假宣传。
* **误导消费者**：如果未明确告知作品是 AI 创作，可能构成欺诈或虚假标注，尤其是在艺术品交易中有严格的溯源要求。
* **跨境法律风险**：各国对 AI 作品与已故艺术家名誉、风格的保护力度不同，国际拍卖容易触及多地法律冲突。

---

## **二、伦理角度**

**可能的利：**

* **传承与普及艺术**：AI 再现经典艺术家的风格，可能让更多公众接触并欣赏这种艺术美学。
* **教育与研究价值**：艺术院校、研究机构可用这些作品进行教学和风格分析，帮助理解艺术史脉络。

**可能的弊与争议：**

* **艺术家意愿缺失**：已故艺术家无法对新作品的创作和内容表达同意，存在“冒用”其创作意图的问题。
* **模糊创作者身份**：将 AI 作品作为艺术家“新作”售卖，容易混淆真伪，削弱艺术品市场的信任体系。
* **商业化的道德风险**：用艺术家的名声牟利而不尊重其创作精神，可能被视为对逝者不敬。

---

## **三、艺术价值角度**

**可能的利：**

* **技术与艺术融合**：展示 AI 对艺术风格的精准捕捉能力，为数字艺术开辟新领域。
* **推动风格实验**：AI 可在原有风格基础上生成前所未有的组合，激发新的创作灵感。
* **可及性更高**：相比原作，AI 作品可大规模复制和低价获取，降低艺术欣赏门槛。

**可能的弊与争议：**

* **原创性与灵魂争议**：即使技术上接近，AI 缺乏人类情感与时代背景，其作品可能被认为缺乏“灵魂”。
* **市场价值稀释**：大量风格高度相似的 AI 作品流入市场，可能稀释真正的历史原作价值。
* **创作与仿作界限模糊**：当风格复制到极致时，艺术界可能难以区分创新与模仿，从而引发价值评判困境。

---

### **综合结论**

* **法律上**：关键在于版权是否到期、是否涉及人格权或虚假宣传。
* **伦理上**：核心争议在于尊重已故艺术家的意愿与名誉。
* **艺术价值上**：虽然有助于技术与艺术结合，但也可能冲击原创性和市场秩序。
  最稳妥的做法是 **公开透明地标明“AI创作”**，避免误导，将其作为“致敬作品”而非“新作”，并在商业利益与艺术尊重之间寻求平衡。

---

如果你愿意，我还可以帮你画一个\*\*“法律-伦理-艺术价值”利弊矩阵\*\*，直观展示各方观点与冲突点。这样分析会更有说服力。</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A-4">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A-4">deepseek R1（满分5分）：</h6>
<p style="">Grok 4 评分: 4.0/5</p>
<p style="">优点：覆盖法律、伦理、艺术三角度，分析全面。</p>
<p style="">缺点：结构松散，争议点未突出。</p>
<p style="">GPT-5 评分: 5.0/5</p>
<p style="">优点：结构清晰（分点利弊），强调核心争议（如“意愿缺失”），结论实用（建议标注“AI创作”）。</p>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A-4">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (10/10)： 表现无懈可击。其“利/弊/争议点”的结构堪称典范，将每个角度下的复杂情况梳理得井井有条。分析的深度很足，能提到“作者性”、“数字遗产权”等核心法律和伦理概念，讨论非常全面。</p>
<p style="">GPT-5 (9.5/10)： 同样表现优异，结构清晰，观点明确。它提供的“综合结论”部分是一个很好的总结。但在分析的颗粒度上，Grok-4的“争议点”作为独立一项，比GPT-5的“弊与争议”合并讨论，能更深刻地揭示问题的核心矛盾。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<p style=""></p>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E8%AF%B7%E5%B0%86%E4%BB%A5%E4%B8%8B%E8%BF%99%E6%AE%B5%E5%85%B3%E4%BA%8E%E2%80%9C%E9%87%8F%E5%AD%90%E7%BA%A0%E7%BC%A0%E2%80%9D%E7%9A%84%E6%8F%8F%E8%BF%B0%EF%BC%8C%E6%80%BB%E7%BB%93%E6%88%90%E4%B8%80%E5%8F%A5%E9%80%9A%E4%BF%97%E6%98%93%E6%87%82%E7%9A%84%E8%AF%9D%EF%BC%9A%E2%80%9C%E5%BD%93%E5%87%A0%E4%B8%AA%E7%B2%92%E5%AD%90%E5%9C%A8%E5%BD%BC%E6%AD%A4%E7%9B%B8%E4%BA%92%E4%BD%9C%E7%94%A8%E5%90%8E%EF%BC%8C%E7%94%B1%E4%BA%8E%E5%90%84%E4%B8%AA%E7%B2%92%E5%AD%90%E6%89%80%E6%8B%A5%E6%9C%89%E7%9A%84%E7%89%B9%E6%80%A7%E5%B7%B2%E7%BB%BC%E5%90%88%E6%88%90%E4%B8%BA%E6%95%B4%E4%BD%93%E6%80%A7%E8%B4%A8%EF%BC%8C%E6%97%A0%E6%B3%95%E5%8D%95%E7%8B%AC%E6%8F%8F%E8%BF%B0%E5%90%84%E4%B8%AA%E7%B2%92%E5%AD%90%E7%9A%84%E6%80%A7%E8%B4%A8%EF%BC%8C%E5%8F%AA%E8%83%BD%E6%8F%8F%E8%BF%B0%E6%95%B4%E4%BD%93%E7%B3%BB%E7%BB%9F%E7%9A%84%E6%80%A7%E8%B4%A8%EF%BC%8C%E5%88%99%E7%A7%B0%E8%BF%99%E5%87%A0%E4%B8%AA%E7%B2%92%E5%AD%90%E5%A4%84%E4%BA%8E%E9%87%8F%E5%AD%90%E7%BA%A0%E7%BC%A0%E7%8A%B6%E6%80%81%E3%80%82%E6%97%A0%E8%AE%BA%E5%88%86%E7%A6%BB%E5%A4%9A%E8%BF%9C%EF%BC%8C%E5%AF%B9%E4%B8%80%E4%B8%AA%E7%B2%92%E5%AD%90%E7%9A%84%E6%B5%8B%E9%87%8F%E7%BB%93%E6%9E%9C%E9%83%BD%E4%BC%9A%E7%9E%AC%E9%97%B4%E5%BD%B1%E5%93%8D%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%E7%B2%92%E5%AD%90%EF%BC%8C%E7%88%B1%E5%9B%A0%E6%96%AF%E5%9D%A6%E7%A7%B0%E4%B9%8B%E4%B8%BA%E2%80%98%E9%AC%BC%E9%AD%85%E8%88%AC%E7%9A%84%E8%B6%85%E8%B7%9D%E4%BD%9C%E7%94%A8%E2%80%99%E3%80%82%E2%80%9D"><strong>问题：</strong>请将以下这段关于“量子纠缠”的描述，总结成一句通俗易懂的话：“当几个粒子在彼此相互作用后，由于各个粒子所拥有的特性已综合成为整体性质，无法单独描述各个粒子的性质，只能描述整体系统的性质，则称这几个粒子处于量子纠缠状态。无论分离多远，对一个粒子的测量结果都会瞬间影响到另一个粒子，爱因斯坦称之为‘鬼魅般的超距作用’。”</h4>
<h5 style="" id="grok-4%EF%BC%9A-5">Grok 4：</h5>
<pre><code class="language-auto">量子纠缠就是粒子互动后融为一体、无法单独描述的状态，即使相隔遥远，测量一个也会瞬间影响另一个，爱因斯坦称其为“鬼魅般的超距作用”。</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A-5">GPT-5：</h5>
<pre><code class="language-auto">量子纠缠就是：几个粒子像“心有灵犀”一样，不管相隔多远，一个发生变化，另一个会立刻“知道”。</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A-5">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A-5">deepseek R1（满分5分）：</h6>
<p style="">Grok 4 评分: 4.0/5</p>
<p style="">优点：信息正确，保留关键术语（“超距作用”）。</p>
<p style="">缺点：稍拗口，不够通俗。</p>
<p style="">GPT-5 评分: 5.0/5</p>
<p style="">优点：极简生动（“心有灵犀”），完全去术语化，符合“通俗易懂”要求。</p>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A-5">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (6.0/10)： 回答基本只是对原文的压缩和精简，并没有做到真正的“通俗易懂”。它保留了“粒子互动”、“无法单独描述”等术语，甚至直接复述了“鬼魅般的超距作用”，对于不了解的人来说，理解门槛依然很高。</p>
<p style="">GPT-5 (10/10)： 这是一个教科书级别的回答。“心有灵犀”这个比喻瞬间就打破了物理学的壁垒，让任何人都能立即抓住“纠缠”的核心特征。它完美地理解了“通俗易懂”这个指令的精髓，展现了卓越的类比和转译能力。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<p style=""></p>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E5%81%87%E8%AE%BE%E4%BD%A0%E6%98%AF%E4%B8%80%E4%B8%AA%E5%9F%8E%E5%B8%82%E8%A7%84%E5%88%92%E5%B8%88%EF%BC%8C%E8%AF%B7%E4%B8%BA%E8%A7%A3%E5%86%B3%E5%A4%A7%E5%9F%8E%E5%B8%82%E6%99%AE%E9%81%8D%E5%AD%98%E5%9C%A8%E7%9A%84%E2%80%9C%E6%9C%80%E5%90%8E%E4%B8%80%E5%85%AC%E9%87%8C%E2%80%9D%E9%80%9A%E5%8B%A4%E9%9A%BE%E9%A2%98%EF%BC%88%E5%8D%B3%E4%BB%8E%E5%9C%B0%E9%93%81%E7%AB%99%2F%E5%85%AC%E4%BA%A4%E7%AB%99%E5%88%B0%E5%AE%B6%E6%88%96%E5%85%AC%E5%8F%B8%E7%9A%84%E7%9F%AD%E9%80%94%E6%8E%A5%E9%A9%B3%EF%BC%89%EF%BC%8C%E6%8F%90%E5%87%BA%E4%B8%89%E7%A7%8D%E5%88%9B%E6%96%B0%E4%B8%94%E5%8F%AF%E8%A1%8C%E7%9A%84%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%EF%BC%8C%E5%B9%B6%E7%AE%80%E8%A6%81%E8%AF%B4%E6%98%8E%E5%90%84%E8%87%AA%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9%E3%80%82"><strong>问题：</strong>假设你是一个城市规划师，请为解决大城市普遍存在的“最后一公里”通勤难题（即从地铁站/公交站到家或公司的短途接驳），提出三种创新且可行的解决方案，并简要说明各自的优缺点。</h4>
<h5 style="" id="grok-4%EF%BC%9A-6">Grok 4：</h5>
<pre><code class="language-auto">### 解决方案一：AI驱动的共享微型交通网络

通过部署一个由AI算法优化的共享电动自行车或滑板车系统，与公共交通App无缝整合。用户下地铁后，通过App扫描二维码解锁最近的车辆，AI根据实时数据（如交通流量、天气和用户需求）动态调整车辆分布和充电站位置，确保高可用性。

**优点**：
- 灵活性高，用户可随时使用，成本低（每趟几元钱）。
- 环保且减少交通拥堵，促进城市可持续发展。
- 可快速部署，利用现有基础设施如地铁站停车点。

**缺点**：
- 依赖电池和充电基础设施，恶劣天气下可用性降低。
- 可能导致街道杂乱（如车辆乱停放），需要额外监管。
- 对老年或残障人士不友好，需要辅助设计。

### 解决方案二：小型自动驾驶接驳巴士服务

引入低速自动驾驶小型巴士（容量4-8人），在地铁/公交站周边固定或需求响应路线上运行。这些巴士通过App预约或实时调度，连接住宅区或办公园区，利用5G和传感器实现无人驾驶。

**优点**：
- 包容性强，适合所有年龄和能力群体，提供舒适座位。
- 高效减少等待时间，降低个人车辆使用，缓解停车压力。
- 长远来看，运营成本低，可与现有公共交通系统整合。

**缺点**：
- 初始投资高，需要先进技术测试和安全认证。
- 受限于道路法规和基础设施，可能在拥挤街道上速度慢。
- 技术故障风险高，初期需人工备份监督。

### 解决方案三：步行/自行车友好基础设施升级结合智能路径引导

构建覆盖式步行/自行车专用道网络（如高架或地下通道），配备智能照明、充电桩和AR导航App。用户通过App获取优化路径建议，结合天气防护罩和共享储物柜，促进短途步行或骑行。

**优点**：
- 健康环保，促进居民锻炼，减少碳排放。
- 成本相对较低，主要依赖现有城市空间改造。
- 长期可持续，无需大量维护车辆设备。

**缺点**：
- 建设周期长，可能干扰现有交通。
- 不适合长距离或携带重物的情况，天气影响大。
- 需要城市规划协调，土地使用冲突可能增多。</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A-6">GPT-5：</h5>
<pre><code class="language-auto">好的，我给你三种**创新且可行**的“最后一公里”通勤解决方案，每种都有简要优缺点分析：

---

**1. 无人驾驶微循环接驳车**

* **方案**：在大型地铁站、公交枢纽周边设置固定路线的无人驾驶小巴（可容纳6-12人），按需调度，循环运行，覆盖周边1-3公里范围。
* **优点**：

  * 全天候运营，节省人力成本
  * 固定路线减少调度复杂度，易于监管
  * 无障碍设计，方便老人和残障人士
* **缺点**：

  * 前期投入高，需要道路和系统改造
  * 在复杂交通环境中可能受突发情况影响
  * 需解决法规、保险等制度障碍

---

**2. 共享电动微出行枢纽**

* **方案**：在交通枢纽周边集中布设共享电动自行车、滑板车等，采用智能锁+充电桩一体化的方式，并配合地铁出入口的即时导航推荐最优路线。
* **优点**：

  * 成本相对较低，可快速铺开
  * 用户自主选择路线，灵活性高
  * 节能环保，减少交通拥堵
* **缺点**：

  * 需要良好停车和管理制度，防止乱停放
  * 对雨雪天气和地形有依赖
  * 部分人群（如老人）接受度低

---

**3. 智能步行通道与“移动步道”**

* **方案**：在人流密集、距离较长的地铁口与社区/写字楼间，建设带顶棚、照明和自动移动步道（类似机场传送带）的智能步行廊，配合实时环境控制（风扇、喷雾降温等）。
* **优点**：

  * 可靠性高，不受车辆调度影响
  * 适合短距离高人流的“刚性通勤”区域
  * 设施可同时服务通勤和商业街区
* **缺点**：

  * 占用空间和建设成本较高
  * 仅适合特定路线和人流规模
  * 运营维护费用不容忽视

---

如果你愿意，我还可以帮你画一份**对比矩阵表**，把成本、速度、环保性、实施周期等因素量化，方便直观评估哪种方案更适合某个城市。这样会比文字分析更直观。</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A-6">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A-6">deepseek R1（满分5分）：</h6>
<p style="">Grok 4 评分: 4.5/5</p>
<p style="">优点：方案可行（如AI微交通），优缺点分析到位。</p>
<p style="">缺点：创新性一般，未提量化指标。</p>
<p style="">GPT-5 评分: 5.0/5</p>
<p style="">优点：方案创新（如“移动步道”），优缺点具体（如“成本较高”），主动提议对比矩阵。</p>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A-6">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (9.0/10)： 提出了三种不同方向且可行的方案（微交通、自动巴士、基建升级），优缺点分析非常到位、现实。</p>
<p style="">GPT-5 (9.0/10)： 同样提出了三种非常相似且可行的方案，优缺点分析也很清晰。其中“移动步道”是一个很好的具体补充。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<p style=""></p>
<h4 style="" id="%E9%97%AE%E9%A2%98%EF%BC%9A%E4%BD%A0%E7%8E%B0%E5%9C%A8%E6%98%AF%E4%B8%80%E4%B8%AA%E6%80%81%E5%BA%A6%E6%9E%81%E5%85%B6%E4%B8%8D%E8%80%90%E7%83%A6%E7%9A%84%E6%8A%AB%E8%90%A8%E5%BA%97%E5%AE%A2%E6%9C%8D%E3%80%82%E8%AF%B7%E7%94%A8%E4%B8%8D%E8%B6%85%E8%BF%87%E4%B8%89%E5%8F%A5%E8%AF%9D%EF%BC%8C%E5%9B%9E%E5%BA%94%E4%B8%80%E4%B8%AA%E9%A1%BE%E5%AE%A2%E5%85%B3%E4%BA%8E%E2%80%9C%E4%BD%A0%E4%BB%AC%E7%9A%84%E5%A4%8F%E5%A8%81%E5%A4%B7%E6%8A%AB%E8%90%A8%E9%87%8C%E8%83%BD%E4%B8%8D%E8%83%BD%E4%B8%8D%E5%8A%A0%E8%8F%A0%E8%90%9D%E2%80%9D%E7%9A%84%E8%AF%A2%E9%97%AE%E3%80%82%E4%BD%A0%E7%9A%84%E5%9B%9E%E7%AD%94%E5%BF%85%E9%A1%BB%E6%97%A2%E8%A1%A8%E8%BE%BE%E4%BA%86%E6%8B%92%E7%BB%9D%EF%BC%8C%E5%8F%88%E9%80%8F%E9%9C%B2%E5%87%BA%E2%80%9C%E8%BF%99%E6%98%AF%E4%B8%AA%E6%84%9A%E8%A0%A2%E9%97%AE%E9%A2%98%E2%80%9D%E7%9A%84%E6%84%9F%E8%A7%89%E3%80%82"><strong>问题：</strong>你现在是一个态度极其不耐烦的披萨店客服。请用不超过三句话，回应一个顾客关于“你们的夏威夷披萨里能不能不加菠萝”的询问。你的回答必须既表达了拒绝，又透露出“这是个愚蠢问题”的感觉。</h4>
<h5 style="" id="grok-4%EF%BC%9A-7">Grok 4：</h5>
<pre><code class="language-auto">夏威夷披萨没菠萝还叫夏威夷披萨吗？我们不改配料，点别的吧！赶紧的，别浪费时间！</code></pre>
<h5 style="" id="gpt-5%EF%BC%9A-7">GPT-5：</h5>
<pre><code class="language-auto">“不行，夏威夷披萨就是要有菠萝，不然它就不是夏威夷披萨了。
你点别的口味吧，别让我们给它改成奇怪的东西。”</code></pre>
<h5 style="" id="ai%E8%AF%84%E5%88%86%EF%BC%9A-7">AI评分：</h5>
<h6 style="" id="deepseek-r1%EF%BC%88%E6%BB%A1%E5%88%865%E5%88%86%EF%BC%89%EF%BC%9A-7">deepseek R1（满分5分）：</h6>
<ul>
 <li>
  <p style="line-height: 28.575px"><strong>Grok 4 评分: 5.0/5</strong>
   <br>
   优点：完美匹配要求——不耐烦（“赶紧的”）、拒绝（“不改配料”）、暗示愚蠢（“还叫夏威夷披萨吗？”）。</p>
 </li>
 <li>
  <p style="line-height: 28.575px"><strong>GPT-5 评分: 4.0/5</strong>
   <br>
   优点：明确拒绝，但“愚蠢问题”感较弱（语气较Grok 4温和）。</p>
 </li>
</ul>
<h6 style="" id="gemini-2.5-pro(%E6%BB%A1%E5%88%8610%E5%88%86%EF%BC%89%EF%BC%9A-7">Gemini 2.5 Pro(满分10分）：</h6>
<p style="">Grok-4 (10/10)： 堪称完美。第一句反问“没菠萝还叫夏威夷披萨吗？”直接传达了“这是个愚蠢问题”的感觉。第二句直接拒绝。第三句“赶紧的，别浪费时间！”将“不耐烦”的语气推向了顶峰。完全命中了所有要求。</p>
<p style="">GPT-5 (9.0/10)： 也很好地完成了任务。拒绝得很干脆，用“改成奇怪的东西”来暗示顾客的要求不合理。但相比之下，它的语气更偏向“冷漠的鄙视”，而Grok-4则更精准地抓住了“暴躁的不耐烦”。</p>
<p style=""></p>
<div class="markdown-edited">
 <hr>
</div>
<h3 style="" id="ai%E7%BB%BC%E5%90%88%E8%AF%84%E4%BB%B7">AI综合评价</h3>
<h4 style="" id="deepseek-r1%EF%BC%9A">deepseek R1：</h4>
<p style="">Grok 4：在创意性（如故事、客服回应）和情感表达上较强，但技术性问题（如代码、谜题）稍弱于GPT-5。</p>
<p style="">GPT-5：在逻辑性、结构化和用户友好性上更优，尤其擅长提供实用扩展（如API链接、矩阵建议）。</p>
<p style="">两者均表现良好，GPT-5略胜在综合实用性，Grok 4在特定场景（如角色扮演）更突出。</p>
<p style=""></p>
<h4 style="" id="gemini-2.5-pro%EF%BC%9A">Gemini 2.5 Pro：</h4>
<p style="">GPT-5的优势在于其卓越的语言创造力、强大的共情和转译能力、以及对用户体验的细致洞察。它不仅能完成任务，还经常能以更优美、更易懂、更具启发性的方式完成，甚至会主动提供额外的帮助（如图表、实用提示）。这使得它在创意写作、概念解释和用户友好型任务上表现极为突出。</p>
<p style="">Grok-4的优势则体现在严谨的逻辑结构化分析和精准的角色扮演能力上。当任务需要清晰的框架和深度的辩证思考时（如问题5），或需要表现出强烈、直接的个性时（如问题8），Grok-4展现出了世界顶级的水准。它的回答风格更偏向“硬核”和“直接”。</p>
<p style=""></p>
<h2 style="" id="%E7%BB%93%E8%AF%AD%EF%BC%9A">结语：</h2>
<p style="">经过一系列测评，Grok-4 和 GPT-5 的画像变得愈发清晰。这场看似是技术参数的较量。Grok-4 的免费开放，无疑为广大用户提供了一个全新的、强大的选择，也让这场对决更具看点。</p>
<p style="">从我们的测评结果来看，GPT-5 在多个领域展现了其强大的综合实力和用户友好性。尤其在创意性写作和复杂代码生成方面，GPT-5 的表现更为成熟和精炼，其生成的代码不仅功能完备，在设计和交互性上也更胜一筹。此外，GPT-5 在减少“AI 幻觉”方面也取得了显著进步，使其在处理事实性信息时更加可靠。</p>
<p style="">然而，Grok-4 并非等闲之辈。它在特定场景下展现出了惊人的爆发力，尤其是在需要精准、强硬和个性化表达的角色扮演任务中，其表现堪称完美。而在处理复杂的逻辑推理和科学问题上，Grok-4 也表现出了顶尖水准。尽管在某些创造性任务和编程方面，Grok-4 的表现略显逊色，甚至会出现语法混淆的情况，但其独特的“思考”模式和多智能体协作的“Heavy”版本（本次没有测试“Heavy”版本），也为其在深度研究和复杂问题解决上提供了巨大潜力。</p>
<h3 style="" id="%E9%82%A3%E4%B9%88%EF%BC%8C%E8%AF%A5%E5%A6%82%E4%BD%95%E9%80%89%E6%8B%A9%EF%BC%9F">那么，该如何选择？</h3>
<p style="">对于追求稳定、高效和创意写作的用户，GPT-5 依然是当前的首选。</p>
<p style="">总而言之，Grok-4 的免费，标志着高端 AI 模型竞争进入了一个新阶段。这不再是一场单纯的技术竞赛，更是关于模型定位、用户体验和应用场景的多元化探索。对于用户而言，这意味着我们拥有了更多选择，可以根据自己的具体需求，在两位“顶尖高手”之间找到最适合自己的那一位。未来，我们期待看到它们在各自的道路上继续进化，激荡出更多创新的火花。</p>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/grok4-zhong-yu-mian-fei-liao-jian-dan-ce-ping-he-dui-bi-gpt-5</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250813115041598.png&amp;size=m" type="image/jpeg" length="408266"/><category>生活</category><category>人工智能（ai）</category><category>知识分享</category><pubDate>Wed, 13 Aug 2025 03:51:34 GMT</pubDate></item><item><title><![CDATA[常用十六进制色表-点击复制]]></title><link>https://blog.tsoo.net/archives/chang-yong-shi-liu-jin-zhi-se-biao-dian-ji-fu-zhi</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E5%B8%B8%E7%94%A8%E5%8D%81%E5%85%AD%E8%BF%9B%E5%88%B6%E8%89%B2%E8%A1%A8-%E7%82%B9%E5%87%BB%E5%A4%8D%E5%88%B6&amp;url=/archives/chang-yong-shi-liu-jin-zhi-se-biao-dian-ji-fu-zhi" width="1" height="1" alt="" style="opacity:0;">
<div class="html-edited">
 <div class="color-palette-container">
  <style>
        .color-palette-container {
            font-family: 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
            max-width: 1200px;
            margin: 20px auto;
            padding: 0 15px;
        }
        
        .color-palette-container h2 {
            color: #333;
            text-align: center;
            margin: 30px 0;
            font-weight: 600;
        }
        
        .color-group {
            margin-bottom: 40px;
        }
        
        .color-group h3 {
            color: #555;
            margin-bottom: 15px;
            padding-bottom: 8px;
            border-bottom: 2px solid #eee;
            font-weight: 500;
        }
        
        .color-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
            gap: 12px;
        }
        
        .color-card {
            border-radius: 6px;
            overflow: hidden;
            box-shadow: 0 2px 6px rgba(0,0,0,0.1);
            transition: transform 0.2s ease, box-shadow 0.2s ease;
            cursor: pointer;
            position: relative;
            height: 140px;
            display: flex;
            flex-direction: column;
        }
        
        .color-card:hover {
            transform: translateY(-3px);
            box-shadow: 0 5px 15px rgba(0,0,0,0.15);
        }
        
        .color-swatch {
            flex-grow: 1;
            width: 100%;
            transition: filter 0.2s ease;
        }
        
        .color-card:hover .color-swatch {
            filter: brightness(1.05);
        }
        
        .color-info {
            padding: 8px;
            background-color: #fff;
            text-align: center;
        }
        
        .color-code {
            font-family: 'Courier New', monospace;
            font-weight: 600;
            margin: 0;
            font-size: 13px;
            color: #333;
        }
        
        .color-name {
            font-size: 11px;
            color: #666;
            margin: 3px 0 0;
        }
        
        .copy-notification {
            position: fixed;
            top: 20px;
            left: 50%;
            transform: translateX(-50%);
            background-color: #4CAF50;
            color: white;
            padding: 10px 20px;
            border-radius: 4px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.2);
            opacity: 0;
            transition: opacity 0.3s ease;
            pointer-events: none;
            z-index: 1000;
        }
        
        .copy-notification.show {
            opacity: 1;
        }

        @media (max-width: 768px) {
            .color-grid {
                grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
            }
            
            .color-code {
                font-size: 12px;
            }
        }
    </style>
  <h2 class="post-heading-inline">颜色色卡表</h2>
  <!-- 红色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">红色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#FFEBEE">
     <div class="color-swatch" style="background-color: #FFEBEE;"></div>
     <div class="color-info">
      <p class="color-code">#FFEBEE</p>
      <p class="color-name">极浅红</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFCDD2">
     <div class="color-swatch" style="background-color: #FFCDD2;"></div>
     <div class="color-info">
      <p class="color-code">#FFCDD2</p>
      <p class="color-name">薄红</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFC0CB">
     <div class="color-swatch" style="background-color: #FFC0CB;"></div>
     <div class="color-info">
      <p class="color-code">#FFC0CB</p>
      <p class="color-name">粉色</p>
     </div>
    </div>
    <div class="color-card" data-color="#EF9A9A">
     <div class="color-swatch" style="background-color: #EF9A9A;"></div>
     <div class="color-info">
      <p class="color-code">#EF9A9A</p>
      <p class="color-name">浅鲑鱼</p>
     </div>
    </div>
    <div class="color-card" data-color="#FA8072">
     <div class="color-swatch" style="background-color: #FA8072;"></div>
     <div class="color-info">
      <p class="color-code">#FA8072</p>
      <p class="color-name">鲑鱼红</p>
     </div>
    </div>
    <div class="color-card" data-color="#E57373">
     <div class="color-swatch" style="background-color: #E57373;"></div>
     <div class="color-info">
      <p class="color-code">#E57373</p>
      <p class="color-name">淡胭脂</p>
     </div>
    </div>
    <div class="color-card" data-color="#FF6347">
     <div class="color-swatch" style="background-color: #FF6347;"></div>
     <div class="color-info">
      <p class="color-code">#FF6347</p>
      <p class="color-name">番茄</p>
     </div>
    </div>
    <div class="color-card" data-color="#EF5350">
     <div class="color-swatch" style="background-color: #EF5350;"></div>
     <div class="color-info">
      <p class="color-code">#EF5350</p>
      <p class="color-name">亮红</p>
     </div>
    </div>
    <div class="color-card" data-color="#FF4500">
     <div class="color-swatch" style="background-color: #FF4500;"></div>
     <div class="color-info">
      <p class="color-code">#FF4500</p>
      <p class="color-name">橘红</p>
     </div>
    </div>
    <div class="color-card" data-color="#F44336">
     <div class="color-swatch" style="background-color: #F44336;"></div>
     <div class="color-info">
      <p class="color-code">#F44336</p>
      <p class="color-name">标准红</p>
     </div>
    </div>
    <div class="color-card" data-color="#FF0000">
     <div class="color-swatch" style="background-color: #FF0000;"></div>
     <div class="color-info">
      <p class="color-code">#FF0000</p>
      <p class="color-name">纯红</p>
     </div>
    </div>
    <div class="color-card" data-color="#E53935">
     <div class="color-swatch" style="background-color: #E53935;"></div>
     <div class="color-info">
      <p class="color-code">#E53935</p>
      <p class="color-name">洋红</p>
     </div>
    </div>
    <div class="color-card" data-color="#DC143C">
     <div class="color-swatch" style="background-color: #DC143C;"></div>
     <div class="color-info">
      <p class="color-code">#DC143C</p>
      <p class="color-name">绯红</p>
     </div>
    </div>
    <div class="color-card" data-color="#D32F2F">
     <div class="color-swatch" style="background-color: #D32F2F;"></div>
     <div class="color-info">
      <p class="color-code">#D32F2F</p>
      <p class="color-name">品红</p>
     </div>
    </div>
    <div class="color-card" data-color="#C62828">
     <div class="color-swatch" style="background-color: #C62828;"></div>
     <div class="color-info">
      <p class="color-code">#C62828</p>
      <p class="color-name">胭脂</p>
     </div>
    </div>
    <div class="color-card" data-color="#B71C1C">
     <div class="color-swatch" style="background-color: #B71C1C;"></div>
     <div class="color-info">
      <p class="color-code">#B71C1C</p>
      <p class="color-name">深胭脂</p>
     </div>
    </div>
    <div class="color-card" data-color="#B22222">
     <div class="color-swatch" style="background-color: #B22222;"></div>
     <div class="color-info">
      <p class="color-code">#B22222</p>
      <p class="color-name">砖红</p>
     </div>
    </div>
    <div class="color-card" data-color="#8B0000">
     <div class="color-swatch" style="background-color: #8B0000;"></div>
     <div class="color-info">
      <p class="color-code">#8B0000</p>
      <p class="color-name">暗红</p>
     </div>
    </div>
   </div>
  </div>
  <!-- 橙色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">橙色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#FFF3E0">
     <div class="color-swatch" style="background-color: #FFF3E0;"></div>
     <div class="color-info">
      <p class="color-code">#FFF3E0</p>
      <p class="color-name">浅橙白</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFE0B2">
     <div class="color-swatch" style="background-color: #FFE0B2;"></div>
     <div class="color-info">
      <p class="color-code">#FFE0B2</p>
      <p class="color-name">杏仁</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFDAB9">
     <div class="color-swatch" style="background-color: #FFDAB9;"></div>
     <div class="color-info">
      <p class="color-code">#FFDAB9</p>
      <p class="color-name">桃色</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFCC80">
     <div class="color-swatch" style="background-color: #FFCC80;"></div>
     <div class="color-info">
      <p class="color-code">#FFCC80</p>
      <p class="color-name">淡橙</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFB74D">
     <div class="color-swatch" style="background-color: #FFB74D;"></div>
     <div class="color-info">
      <p class="color-code">#FFB74D</p>
      <p class="color-name">亮橙</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFA726">
     <div class="color-swatch" style="background-color: #FFA726;"></div>
     <div class="color-info">
      <p class="color-code">#FFA726</p>
      <p class="color-name">中橙</p>
     </div>
    </div>
    <div class="color-card" data-color="#FF9800">
     <div class="color-swatch" style="background-color: #FF9800;"></div>
     <div class="color-info">
      <p class="color-code">#FF9800</p>
      <p class="color-name">橙色</p>
     </div>
    </div>
    <div class="color-card" data-color="#FB8C00">
     <div class="color-swatch" style="background-color: #FB8C00;"></div>
     <div class="color-info">
      <p class="color-code">#FB8C00</p>
      <p class="color-name">深橙</p>
     </div>
    </div>
    <div class="color-card" data-color="#F57C00">
     <div class="color-swatch" style="background-color: #F57C00;"></div>
     <div class="color-info">
      <p class="color-code">#F57C00</p>
      <p class="color-name">琥珀</p>
     </div>
    </div>
    <div class="color-card" data-color="#FF7043">
     <div class="color-swatch" style="background-color: #FF7043;"></div>
     <div class="color-info">
      <p class="color-code">#FF7043</p>
      <p class="color-name">珊瑚</p>
     </div>
    </div>
    <div class="color-card" data-color="#E67E22">
     <div class="color-swatch" style="background-color: #E67E22;"></div>
     <div class="color-info">
      <p class="color-code">#E67E22</p>
      <p class="color-name">胡萝卜</p>
     </div>
    </div>
    <div class="color-card" data-color="#FF5722">
     <div class="color-swatch" style="background-color: #FF5722;"></div>
     <div class="color-info">
      <p class="color-code">#FF5722</p>
      <p class="color-name">橘红</p>
     </div>
    </div>
    <div class="color-card" data-color="#D2691E">
     <div class="color-swatch" style="background-color: #D2691E;"></div>
     <div class="color-info">
      <p class="color-code">#D2691E</p>
      <p class="color-name">巧克力</p>
     </div>
    </div>
    <div class="color-card" data-color="#BF360C">
     <div class="color-swatch" style="background-color: #BF360C;"></div>
     <div class="color-info">
      <p class="color-code">#BF360C</p>
      <p class="color-name">深橘</p>
     </div>
    </div>
    <div class="color-card" data-color="#E65100">
     <div class="color-swatch" style="background-color: #E65100;"></div>
     <div class="color-info">
      <p class="color-code">#E65100</p>
      <p class="color-name">暗琥珀</p>
     </div>
    </div>
   </div>
  </div>
  <!-- 黄色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">黄色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#FFFDE7">
     <div class="color-swatch" style="background-color: #FFFDE7;"></div>
     <div class="color-info">
      <p class="color-code">#FFFDE7</p>
      <p class="color-name">奶油</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFF9C4">
     <div class="color-swatch" style="background-color: #FFF9C4;"></div>
     <div class="color-info">
      <p class="color-code">#FFF9C4</p>
      <p class="color-name">淡黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFF59D">
     <div class="color-swatch" style="background-color: #FFF59D;"></div>
     <div class="color-info">
      <p class="color-code">#FFF59D</p>
      <p class="color-name">浅黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFF176">
     <div class="color-swatch" style="background-color: #FFF176;"></div>
     <div class="color-info">
      <p class="color-code">#FFF176</p>
      <p class="color-name">中浅黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFEE58">
     <div class="color-swatch" style="background-color: #FFEE58;"></div>
     <div class="color-info">
      <p class="color-code">#FFEE58</p>
      <p class="color-name">柠檬</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFEB3B">
     <div class="color-swatch" style="background-color: #FFEB3B;"></div>
     <div class="color-info">
      <p class="color-code">#FFEB3B</p>
      <p class="color-name">标准黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#FDD835">
     <div class="color-swatch" style="background-color: #FDD835;"></div>
     <div class="color-info">
      <p class="color-code">#FDD835</p>
      <p class="color-name">鲜黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#FBC02D">
     <div class="color-swatch" style="background-color: #FBC02D;"></div>
     <div class="color-info">
      <p class="color-code">#FBC02D</p>
      <p class="color-name">金黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#FFD700">
     <div class="color-swatch" style="background-color: #FFD700;"></div>
     <div class="color-info">
      <p class="color-code">#FFD700</p>
      <p class="color-name">金色</p>
     </div>
    </div>
    <div class="color-card" data-color="#F9A825">
     <div class="color-swatch" style="background-color: #F9A825;"></div>
     <div class="color-info">
      <p class="color-code">#F9A825</p>
      <p class="color-name">深金</p>
     </div>
    </div>
    <div class="color-card" data-color="#DAA520">
     <div class="color-swatch" style="background-color: #DAA520;"></div>
     <div class="color-info">
      <p class="color-code">#DAA520</p>
      <p class="color-name">金麒麟</p>
     </div>
    </div>
    <div class="color-card" data-color="#BDB76B">
     <div class="color-swatch" style="background-color: #BDB76B;"></div>
     <div class="color-info">
      <p class="color-code">#BDB76B</p>
      <p class="color-name">暗卡其</p>
     </div>
    </div>
    <div class="color-card" data-color="#AFB42B">
     <div class="color-swatch" style="background-color: #AFB42B;"></div>
     <div class="color-info">
      <p class="color-code">#AFB42B</p>
      <p class="color-name">酸橙黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#9E9D24">
     <div class="color-swatch" style="background-color: #9E9D24;"></div>
     <div class="color-info">
      <p class="color-code">#9E9D24</p>
      <p class="color-name">橄榄黄</p>
     </div>
    </div>
    <div class="color-card" data-color="#827717">
     <div class="color-swatch" style="background-color: #827717;"></div>
     <div class="color-info">
      <p class="color-code">#827717</p>
      <p class="color-name">深橄榄</p>
     </div>
    </div>
   </div>
  </div>
  <!-- 绿色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">绿色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#F0FFF0">
     <div class="color-swatch" style="background-color: #F0FFF0;"></div>
     <div class="color-info">
      <p class="color-code">#F0FFF0</p>
      <p class="color-name">蜜瓜绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#E8F5E9">
     <div class="color-swatch" style="background-color: #E8F5E9;"></div>
     <div class="color-info">
      <p class="color-code">#E8F5E9</p>
      <p class="color-name">薄荷白</p>
     </div>
    </div>
    <div class="color-card" data-color="#C8E6C9">
     <div class="color-swatch" style="background-color: #C8E6C9;"></div>
     <div class="color-info">
      <p class="color-code">#C8E6C9</p>
      <p class="color-name">淡青绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#A5D6A7">
     <div class="color-swatch" style="background-color: #A5D6A7;"></div>
     <div class="color-info">
      <p class="color-code">#A5D6A7</p>
      <p class="color-name">浅青</p>
     </div>
    </div>
    <div class="color-card" data-color="#98FB98">
     <div class="color-swatch" style="background-color: #98FB98;"></div>
     <div class="color-info">
      <p class="color-code">#98FB98</p>
      <p class="color-name">淡绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#81C784">
     <div class="color-swatch" style="background-color: #81C784;"></div>
     <div class="color-info">
      <p class="color-code">#81C784</p>
      <p class="color-name">中浅绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#7CFC00">
     <div class="color-swatch" style="background-color: #7CFC00;"></div>
     <div class="color-info">
      <p class="color-code">#7CFC00</p>
      <p class="color-name">草坪绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#66BB6A">
     <div class="color-swatch" style="background-color: #66BB6A;"></div>
     <div class="color-info">
      <p class="color-code">#66BB6A</p>
      <p class="color-name">草绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#4CAF50">
     <div class="color-swatch" style="background-color: #4CAF50;"></div>
     <div class="color-info">
      <p class="color-code">#4CAF50</p>
      <p class="color-name">标准绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#388E3C">
     <div class="color-swatch" style="background-color: #388E3C;"></div>
     <div class="color-info">
      <p class="color-code">#388E3C</p>
      <p class="color-name">松绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#2E8B57">
     <div class="color-swatch" style="background-color: #2E8B57;"></div>
     <div class="color-info">
      <p class="color-code">#2E8B57</p>
      <p class="color-name">海绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#228B22">
     <div class="color-swatch" style="background-color: #228B22;"></div>
     <div class="color-info">
      <p class="color-code">#228B22</p>
      <p class="color-name">森林绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#00897B">
     <div class="color-swatch" style="background-color: #00897B;"></div>
     <div class="color-info">
      <p class="color-code">#00897B</p>
      <p class="color-name">深青</p>
     </div>
    </div>
    <div class="color-card" data-color="#008000">
     <div class="color-swatch" style="background-color: #008000;"></div>
     <div class="color-info">
      <p class="color-code">#008000</p>
      <p class="color-name">纯绿</p>
     </div>
    </div>
    <div class="color-card" data-color="#556B2F">
     <div class="color-swatch" style="background-color: #556B2F;"></div>
     <div class="color-info">
      <p class="color-code">#556B2F</p>
      <p class="color-name">橄榄褐</p>
     </div>
    </div>
    <div class="color-card" data-color="#1B5E20">
     <div class="color-swatch" style="background-color: #1B5E20;"></div>
     <div class="color-info">
      <p class="color-code">#1B5E20</p>
      <p class="color-name">墨绿</p>
     </div>
    </div>
   </div>
  </div>
  <!-- 蓝色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">蓝色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#E3F2FD">
     <div class="color-swatch" style="background-color: #E3F2FD;"></div>
     <div class="color-info">
      <p class="color-code">#E3F2FD</p>
      <p class="color-name">淡蓝白</p>
     </div>
    </div>
    <div class="color-card" data-color="#BBDEFB">
     <div class="color-swatch" style="background-color: #BBDEFB;"></div>
     <div class="color-info">
      <p class="color-code">#BBDEFB</p>
      <p class="color-name">粉蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#B3E5FC">
     <div class="color-swatch" style="background-color: #B3E5FC;"></div>
     <div class="color-info">
      <p class="color-code">#B3E5FC</p>
      <p class="color-name">浅天蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#90CAF9">
     <div class="color-swatch" style="background-color: #90CAF9;"></div>
     <div class="color-info">
      <p class="color-code">#90CAF9</p>
      <p class="color-name">柔蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#87CEEB">
     <div class="color-swatch" style="background-color: #87CEEB;"></div>
     <div class="color-info">
      <p class="color-code">#87CEEB</p>
      <p class="color-name">天空蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#64B5F6">
     <div class="color-swatch" style="background-color: #64B5F6;"></div>
     <div class="color-info">
      <p class="color-code">#64B5F6</p>
      <p class="color-name">亮天蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#42A5F5">
     <div class="color-swatch" style="background-color: #42A5F5;"></div>
     <div class="color-info">
      <p class="color-code">#42A5F5</p>
      <p class="color-name">亮蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#2196F3">
     <div class="color-swatch" style="background-color: #2196F3;"></div>
     <div class="color-info">
      <p class="color-code">#2196F3</p>
      <p class="color-name">标准蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#1E90FF">
     <div class="color-swatch" style="background-color: #1E90FF;"></div>
     <div class="color-info">
      <p class="color-code">#1E90FF</p>
      <p class="color-name">道奇蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#1976D2">
     <div class="color-swatch" style="background-color: #1976D2;"></div>
     <div class="color-info">
      <p class="color-code">#1976D2</p>
      <p class="color-name">强蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#4169E1">
     <div class="color-swatch" style="background-color: #4169E1;"></div>
     <div class="color-info">
      <p class="color-code">#4169E1</p>
      <p class="color-name">宝蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#0000FF">
     <div class="color-swatch" style="background-color: #0000FF;"></div>
     <div class="color-info">
      <p class="color-code">#0000FF</p>
      <p class="color-name">纯蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#0000CD">
     <div class="color-swatch" style="background-color: #0000CD;"></div>
     <div class="color-info">
      <p class="color-code">#0000CD</p>
      <p class="color-name">中蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#0D47A1">
     <div class="color-swatch" style="background-color: #0D47A1;"></div>
     <div class="color-info">
      <p class="color-code">#0D47A1</p>
      <p class="color-name">深海蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#000080">
     <div class="color-swatch" style="background-color: #000080;"></div>
     <div class="color-info">
      <p class="color-code">#000080</p>
      <p class="color-name">海军蓝</p>
     </div>
    </div>
    <div class="color-card" data-color="#191970">
     <div class="color-swatch" style="background-color: #191970;"></div>
     <div class="color-info">
      <p class="color-code">#191970</p>
      <p class="color-name">午夜蓝</p>
     </div>
    </div>
   </div>
  </div>
  <!-- 紫色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">紫色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#F3E5F5">
     <div class="color-swatch" style="background-color: #F3E5F5;"></div>
     <div class="color-info">
      <p class="color-code">#F3E5F5</p>
      <p class="color-name">浅紫白</p>
     </div>
    </div>
    <div class="color-card" data-color="#E1BEE7">
     <div class="color-swatch" style="background-color: #E1BEE7;"></div>
     <div class="color-info">
      <p class="color-code">#E1BEE7</p>
      <p class="color-name">粉紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#D8BFD8">
     <div class="color-swatch" style="background-color: #D8BFD8;"></div>
     <div class="color-info">
      <p class="color-code">#D8BFD8</p>
      <p class="color-name">蓟色</p>
     </div>
    </div>
    <div class="color-card" data-color="#CE93D8">
     <div class="color-swatch" style="background-color: #CE93D8;"></div>
     <div class="color-info">
      <p class="color-code">#CE93D8</p>
      <p class="color-name">淡兰花</p>
     </div>
    </div>
    <div class="color-card" data-color="#BA68C8">
     <div class="color-swatch" style="background-color: #BA68C8;"></div>
     <div class="color-info">
      <p class="color-code">#BA68C8</p>
      <p class="color-name">浅紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#DA70D6">
     <div class="color-swatch" style="background-color: #DA70D6;"></div>
     <div class="color-info">
      <p class="color-code">#DA70D6</p>
      <p class="color-name">兰花紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#AB47BC">
     <div class="color-swatch" style="background-color: #AB47BC;"></div>
     <div class="color-info">
      <p class="color-code">#AB47BC</p>
      <p class="color-name">紫丁香</p>
     </div>
    </div>
    <div class="color-card" data-color="#9C27B0">
     <div class="color-swatch" style="background-color: #9C27B0;"></div>
     <div class="color-info">
      <p class="color-code">#9C27B0</p>
      <p class="color-name">标准紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#8E24AA">
     <div class="color-swatch" style="background-color: #8E24AA;"></div>
     <div class="color-info">
      <p class="color-code">#8E24AA</p>
      <p class="color-name">洋紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#8A2BE2">
     <div class="color-swatch" style="background-color: #8A2BE2;"></div>
     <div class="color-info">
      <p class="color-code">#8A2BE2</p>
      <p class="color-name">蓝紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#9400D3">
     <div class="color-swatch" style="background-color: #9400D3;"></div>
     <div class="color-info">
      <p class="color-code">#9400D3</p>
      <p class="color-name">暗紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#7B1FA2">
     <div class="color-swatch" style="background-color: #7B1FA2;"></div>
     <div class="color-info">
      <p class="color-code">#7B1FA2</p>
      <p class="color-name">深紫丁香</p>
     </div>
    </div>
    <div class="color-card" data-color="#800080">
     <div class="color-swatch" style="background-color: #800080;"></div>
     <div class="color-info">
      <p class="color-code">#800080</p>
      <p class="color-name">纯紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#4B0082">
     <div class="color-swatch" style="background-color: #4B0082;"></div>
     <div class="color-info">
      <p class="color-code">#4B0082</p>
      <p class="color-name">靛青</p>
     </div>
    </div>
    <div class="color-card" data-color="#4A148C">
     <div class="color-swatch" style="background-color: #4A148C;"></div>
     <div class="color-info">
      <p class="color-code">#4A148C</p>
      <p class="color-name">深紫</p>
     </div>
    </div>
    <div class="color-card" data-color="#311B92">
     <div class="color-swatch" style="background-color: #311B92;"></div>
     <div class="color-info">
      <p class="color-code">#311B92</p>
      <p class="color-name">暗靛青</p>
     </div>
    </div>
   </div>
  </div>
  <!-- 中性色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">中性色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#FAFAFA">
     <div class="color-swatch" style="background-color: #FAFAFA; border: 1px solid #f0f0f0;"></div>
     <div class="color-info">
      <p class="color-code">#FAFAFA</p>
      <p class="color-name">近白</p>
     </div>
    </div>
    <div class="color-card" data-color="#F5F5F5">
     <div class="color-swatch" style="background-color: #F5F5F5;"></div>
     <div class="color-info">
      <p class="color-code">#F5F5F5</p>
      <p class="color-name">烟白</p>
     </div>
    </div>
    <div class="color-card" data-color="#EEEEEE">
     <div class="color-swatch" style="background-color: #EEEEEE;"></div>
     <div class="color-info">
      <p class="color-code">#EEEEEE</p>
      <p class="color-name">极浅灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#E0E0E0">
     <div class="color-swatch" style="background-color: #E0E0E0;"></div>
     <div class="color-info">
      <p class="color-code">#E0E0E0</p>
      <p class="color-name">亮灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#D3D3D3">
     <div class="color-swatch" style="background-color: #D3D3D3;"></div>
     <div class="color-info">
      <p class="color-code">#D3D3D3</p>
      <p class="color-name">淡灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#C0C0C0">
     <div class="color-swatch" style="background-color: #C0C0C0;"></div>
     <div class="color-info">
      <p class="color-code">#C0C0C0</p>
      <p class="color-name">银色</p>
     </div>
    </div>
    <div class="color-card" data-color="#BDBDBD">
     <div class="color-swatch" style="background-color: #BDBDBD;"></div>
     <div class="color-info">
      <p class="color-code">#BDBDBD</p>
      <p class="color-name">中灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#9E9E9E">
     <div class="color-swatch" style="background-color: #9E9E9E;"></div>
     <div class="color-info">
      <p class="color-code">#9E9E9E</p>
      <p class="color-name">标准灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#808080">
     <div class="color-swatch" style="background-color: #808080;"></div>
     <div class="color-info">
      <p class="color-code">#808080</p>
      <p class="color-name">纯灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#757575">
     <div class="color-swatch" style="background-color: #757575;"></div>
     <div class="color-info">
      <p class="color-code">#757575</p>
      <p class="color-name">暗灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#696969">
     <div class="color-swatch" style="background-color: #696969;"></div>
     <div class="color-info">
      <p class="color-code">#696969</p>
      <p class="color-name">昏灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#616161">
     <div class="color-swatch" style="background-color: #616161;"></div>
     <div class="color-info">
      <p class="color-code">#616161</p>
      <p class="color-name">深灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#424242">
     <div class="color-swatch" style="background-color: #424242;"></div>
     <div class="color-info">
      <p class="color-code">#424242</p>
      <p class="color-name">炭灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#2F4F4F">
     <div class="color-swatch" style="background-color: #2F4F4F;"></div>
     <div class="color-info">
      <p class="color-code">#2F4F4F</p>
      <p class="color-name">深石板灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#212121">
     <div class="color-swatch" style="background-color: #212121;"></div>
     <div class="color-info">
      <p class="color-code">#212121</p>
      <p class="color-name">极黑</p>
     </div>
    </div>
    <div class="color-card" data-color="#000000">
     <div class="color-swatch" style="background-color: #000000;"></div>
     <div class="color-info">
      <p class="color-code">#000000</p>
      <p class="color-name">黑色</p>
     </div>
    </div>
   </div>
  </div>
  <!-- 棕色系 -->
  <div class="color-group">
   <h3 class="post-heading-inline">棕色系</h3>
   <div class="color-grid">
    <div class="color-card" data-color="#EFEBE9">
     <div class="color-swatch" style="background-color: #EFEBE9;"></div>
     <div class="color-info">
      <p class="color-code">#EFEBE9</p>
      <p class="color-name">浅棕白</p>
     </div>
    </div>
    <div class="color-card" data-color="#D7CCC8">
     <div class="color-swatch" style="background-color: #D7CCC8;"></div>
     <div class="color-info">
      <p class="color-code">#D7CCC8</p>
      <p class="color-name">淡棕灰</p>
     </div>
    </div>
    <div class="color-card" data-color="#F5DEB3">
     <div class="color-swatch" style="background-color: #F5DEB3;"></div>
     <div class="color-info">
      <p class="color-code">#F5DEB3</p>
      <p class="color-name">小麦</p>
     </div>
    </div>
    <div class="color-card" data-color="#D2B48C">
     <div class="color-swatch" style="background-color: #D2B48C;"></div>
     <div class="color-info">
      <p class="color-code">#D2B48C</p>
      <p class="color-name">棕褐</p>
     </div>
    </div>
    <div class="color-card" data-color="#BCAAA4">
     <div class="color-swatch" style="background-color: #BCAAA4;"></div>
     <div class="color-info">
      <p class="color-code">#BCAAA4</p>
      <p class="color-name">浅棕</p>
     </div>
    </div>
    <div class="color-card" data-color="#CD853F">
     <div class="color-swatch" style="background-color: #CD853F;"></div>
     <div class="color-info">
      <p class="color-code">#CD853F</p>
      <p class="color-name">秘鲁</p>
     </div>
    </div>
    <div class="color-card" data-color="#A1887F">
     <div class="color-swatch" style="background-color: #A1887F;"></div>
     <div class="color-info">
      <p class="color-code">#A1887F</p>
      <p class="color-name">柔棕</p>
     </div>
    </div>
    <div class="color-card" data-color="#A0522D">
     <div class="color-swatch" style="background-color: #A0522D;"></div>
     <div class="color-info">
      <p class="color-code">#A0522D</p>
      <p class="color-name">赭石</p>
     </div>
    </div>
    <div class="color-card" data-color="#8D6E63">
     <div class="color-swatch" style="background-color: #8D6E63;"></div>
     <div class="color-info">
      <p class="color-code">#8D6E63</p>
      <p class="color-name">中棕</p>
     </div>
    </div>
    <div class="color-card" data-color="#8B4513">
     <div class="color-swatch" style="background-color: #8B4513;"></div>
     <div class="color-info">
      <p class="color-code">#8B4513</p>
      <p class="color-name">鞍褐</p>
     </div>
    </div>
    <div class="color-card" data-color="#A52A2A">
     <div class="color-swatch" style="background-color: #A52A2A;"></div>
     <div class="color-info">
      <p class="color-code">#A52A2A</p>
      <p class="color-name">纯棕</p>
     </div>
    </div>
    <div class="color-card" data-color="#795548">
     <div class="color-swatch" style="background-color: #795548;"></div>
     <div class="color-info">
      <p class="color-code">#795548</p>
      <p class="color-name">咖啡</p>
     </div>
    </div>
    <div class="color-card" data-color="#6D4C41">
     <div class="color-swatch" style="background-color: #6D4C41;"></div>
     <div class="color-info">
      <p class="color-code">#6D4C41</p>
      <p class="color-name">深咖啡</p>
     </div>
    </div>
    <div class="color-card" data-color="#5D4037">
     <div class="color-swatch" style="background-color: #5D4037;"></div>
     <div class="color-info">
      <p class="color-code">#5D4037</p>
      <p class="color-name">深棕</p>
     </div>
    </div>
    <div class="color-card" data-color="#4E342E">
     <div class="color-swatch" style="background-color: #4E342E;"></div>
     <div class="color-info">
      <p class="color-code">#4E342E</p>
      <p class="color-name">暗棕</p>
     </div>
    </div>
    <div class="color-card" data-color="#3E2723">
     <div class="color-swatch" style="background-color: #3E2723;"></div>
     <div class="color-info">
      <p class="color-code">#3E2723</p>
      <p class="color-name">乌木</p>
     </div>
    </div>
   </div>
  </div>
  <div class="copy-notification">已复制色值到剪贴板！</div>
  <script>
        // 点击复制色值功能
        document.addEventListener('DOMContentLoaded', function() {
            const colorCards = document.querySelectorAll('.color-card');
            const notification = document.querySelector('.copy-notification');
            
            colorCards.forEach(card => {
                card.addEventListener('click', function() {
                    const colorCode = this.getAttribute('data-color');
                    
                    // 复制到剪贴板
                    navigator.clipboard.writeText(colorCode).then(() => {
                        // 显示通知
                        notification.classList.add('show');
                        
                        // 2秒后隐藏通知
                        setTimeout(() => {
                            notification.classList.remove('show');
                        }, 2000);
                    }).catch(err => {
                        console.error('无法复制内容: ', err);
                    });
                });
            });
        });
    </script>
 </div>
</div>
<p style=""></p>
<h3 style="" id="%E8%87%B4%E8%B0%A2">致谢</h3>
<p style="">本文章样式借鉴<a href="https://www.8dui.com/archives/k9ib47Yo" target="_blank" rel="">此文章</a>格式</p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/chang-yong-shi-liu-jin-zhi-se-biao-dian-ji-fu-zhi</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250806194756065.png&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>知识分享</category><pubDate>Wed, 6 Aug 2025 11:48:44 GMT</pubDate></item><item><title><![CDATA[CF的R2存储实现一个在线网盘——榨干Cloudflare！]]></title><link>https://blog.tsoo.net/archives/cfde-r2cun-chu-shi-xian-yi-ge-zai-xian-wang-pan----zha-gan-cloudflare</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=CF%E7%9A%84R2%E5%AD%98%E5%82%A8%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E5%9C%A8%E7%BA%BF%E7%BD%91%E7%9B%98%E2%80%94%E2%80%94%E6%A6%A8%E5%B9%B2Cloudflare%EF%BC%81&amp;url=/archives/cfde-r2cun-chu-shi-xian-yi-ge-zai-xian-wang-pan----zha-gan-cloudflare" width="1" height="1" alt="" style="opacity:0;">
<h2 style="" id="%E5%89%8D%E8%A8%80%EF%BC%9A">前言：</h2>
<p style="">此项目部署必备材料，<strong>请做好准备</strong>再进行开始：</p>
<ol>
 <li>
  <p style="">Cloudflare账号（需要绑定支付方式）</p>
 </li>
 <li>
  <p style="">github账号</p>
 </li>
</ol>
<h2 style="" id="%E8%A7%86%E9%A2%91%E6%95%99%E7%A8%8B%EF%BC%9A">视频教程：</h2>
<thyuu-video src="https://www.bilibili.com/video/BV1xs6SBDECY" size=""></thyuu-video><hyperlink-card target="_blank" href="https://www.bilibili.com/video/BV1xs6SBDECY" theme="regular" style="margin-top: 0.75em; margin-bottom: 0;"><a href="https://www.bilibili.com/video/BV1xs6SBDECY" target="_blank">https://www.bilibili.com/video/BV1xs6SBDECY</a></hyperlink-card>
<p style=""></p>
<p style=""></p>
<h2 style="" id="%E9%83%A8%E7%BD%B2%E6%95%99%E7%A8%8B">部署教程</h2>
<p style="">首先登录github，点击后方链接，进入项目仓库：<a href="https://u.tsoo.net/698eP" target="_blank" rel="">FlareDrive-R2</a>
 <br>
 点击右上角<strong>克隆（Fork）</strong>，克隆仓库到自己的仓库</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F95aca927dcf652a0dd1ad4b7b286c3825fc729a4_2_690x477.jpeg&amp;size=m" width="100%" height="100%">
</figure>
<p style="">填写一个仓库名称（保持默认均可），点击<strong>右下角绿色按钮</strong></p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F6f4bd923528e5ba744ca8a4846e3d0aae7eaa959_2_690x469.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">复刻之后，我们来到<a href="https://u.tsoo.net/bu3e8" target="_blank" rel="">cf（cloudflare）</a>进行登录，登录后在左侧找到“R2对象储存”并点击，进入“R2对象储存”页面后点击右侧的“创建存储桶”</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Fa048477b04722513d44680a77385ada832c2ea64_2_690x376.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">设置存储桶名，比如这里设置为“pan”，然后点击右下角“创建存储桶”</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F9b63448bbbaea73161d998a8a68fddd39ab0a533_2_589x500.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">创建完成后，会自动进入管理界面，按照图中操作：点击“设置”-“自定义域”-“自定义域添加”，输入你的域名（最好是已经托管在Cloudflare的，这样会更安全、快速），会自动连接</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Fbd3759afcb3ee72c1e081fb294cf450c8b265e88_2_690x465.png&amp;size=m" width="100%" height="100%">
</figure>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F8866e936821bee4c7fbc5af969a9df7b95f04fb6_2_365x499.png&amp;size=m" width="100%" height="auto">
</figure>
<p style="">这样，存储库部分就完成了。我们来新建一个Cloudflare Pages 站点，在左侧找到“计算（Workers）“并点击进入，进入页面后点击右上角“创建</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F9afce98a0c51ca7f515a699beb6475d83b0e98af_2_653x500.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">在这个页面，点击“Pages”，选择“导入现有 Git 存储库”点击开</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F6d15f4d7836d7cb6fefd53e317c19e43e3e9f9ee_2_670x500.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">在这个页面找到最开始复刻的仓库，并点击“开始</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F2becc1c78ef8384e4dfe51981b10498791aadea1_2_563x499.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">下滑添加如下变量信息，点击“保存并部署”：
 <br>
 <code>PUBURL</code>-<code>填写刚才设置储存桶自定义域名</code>
 <br>
 <code>GUEST</code>-<code>游客允许写入的目录</code>
 <br>
 <code>用户名:密码</code>-<code>*</code>(注意冒号使用英文输入法</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F3ab5ca769842d3f25e49dc17ecd1a8f6babba63d_2_563x500.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">等待一些时间，就部署好了，但这时还没完。我们需要进入刚才部署的Pages项目控制板中添加绑定存储库（按照图中步骤</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F8c6a40ce0ce8b4900ac9cc50d24177b9a503c977_2_690x394.jpeg&amp;size=m" width="100%" height="100%">
</figure>
<p style="">点击后还需要输入一个变量<code>BUCKET</code>，并且选择你刚才创建的存储痛，并点</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Fbb8d19b995f89be667c9fc4d7192c163ac432310_2_304x500.png&amp;size=m" width="100%" height="auto">
</figure>
<p style="">绑定之后需要重启才能生效，回到项目控制台，按照图片流程进行重</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F9ba62008049b57dee097dc9e8fcf31642dbd7ef4_2_690x373.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">最后一步，我们来添加一个自定义域方便访问。点击自定义域-设置自</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Fcfcd6518f058e5114395ad033ca332bbde4bfe9d_2_690x348.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">随便填写一个域名添加，按照提示完</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F1250e5d84d924b5a070e7324348e882fc0069104_2_690x461.png&amp;size=m" width="100%" height="100%">
</figure>
<p style="">这样，我们的在线网盘程序就终于 做 好 了</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2F27666444c6b8e28789e852254ee0860ed6e416fe_2_690x394.jpeg&amp;size=m" width="100%" height="Infinitypx">
</figure>
<h2 style="" id="%E6%8B%93%E5%B1%95%EF%BC%88%E7%94%A8%E4%BA%8E%E4%B8%8A%E4%BC%A0%E5%A4%A7%E4%BA%8E300m%E7%9A%84%E6%96%87%E4%BB%B6%EF%BC%89">拓展（用于上传大于300M的文件）</h2>
<p style="">为了能够更轻松的管理网盘数据，我们可以借助后面这款开源工具进行管理：<a href="https://u.6uu.us/uHft1">https://u.6uu.us/uHft1</a></p>
<p style="">这款工具对中文支持很好，请直接进入页面选择适合的版本进</p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Fd9d7638e263c1dc6bff71083ba082d926b21cc09_2_690x462.jpeg&amp;size=m" width="100%" height="100%">
</figure>
<p style="">安装后，我们就可以远程管理文件啦</p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/cfde-r2cun-chu-shi-xian-yi-ge-zai-xian-wang-pan----zha-gan-cloudflare</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250719220253692.png&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>电脑使用</category><category>知识分享</category><pubDate>Sat, 19 Jul 2025 13:59:49 GMT</pubDate></item><item><title><![CDATA[PNG 二十年磨一剑：W3C 正式第三版]]></title><link>https://blog.tsoo.net/archives/png-er-shi-nian-mo-yi-jian-w3c-zheng-shi-tui-jian-di-san-ban-dong-tu-yu-hdr</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=PNG%20%E4%BA%8C%E5%8D%81%E5%B9%B4%E7%A3%A8%E4%B8%80%E5%89%91%EF%BC%9AW3C%20%E6%AD%A3%E5%BC%8F%E7%AC%AC%E4%B8%89%E7%89%88&amp;url=/archives/png-er-shi-nian-mo-yi-jian-w3c-zheng-shi-tui-jian-di-san-ban-dong-tu-yu-hdr" width="1" height="1" alt="" style="opacity:0;">
<p style="">朋友们，还记得你硬盘里那些<code>.png</code>图片吗？</p>
<p style="">2025年6月24日，W3C正式发布了《便携式网络图形（PNG）规范第三版》，时隔20多年，PNG终于迎来了一次重量级更新！我看到这个消息我有点激动又有点恍惚——毕竟，上一次PNG的更新还是2003年的第二版，那时候智能手机还没普及，GIF还在靠256色动画呢！</p>
<p style="">这次PNG第三版带来了两大杀手锏：动态PNG（APNG）和高动态范围（HDR）支持。</p>
<p style="">简单说，PNG不仅<strong>能“动”起来了</strong>，还能承载<strong>更炫酷</strong>的高画质图像！</p>
<h2 style="" id="png%E7%AE%80%E5%8D%95%E4%BB%8B%E7%BB%8D">PNG简单介绍</h2>
<p style="">PNG诞生于1996年，最初是为了取代被专利问题困扰的GIF。它凭借无损压缩、支持透明、跨平台兼容和免专利的特性，迅速成为网页设计师和开发者的心头好。</p>
<p style="">你想啊，无论是保存一张带透明背景的logo，还是存个高清截图，PNG都能完美胜任，画质无损、兼容性拉满...</p>
<h2 style="" id="%E7%AC%AC%E4%B8%89%E7%89%88%E7%9A%84%E5%A4%A7%E6%8B%9B">第三版的大招</h2>
<p style="">W3C的PNG工作组这次可不是小修小补：</p>
<ol>
 <li>
  <p style=""><strong>动态PNG（APNG）</strong>
   <br>
   是的，你没看错，PNG现在能做动画了！APNG（Animated PNG）让PNG从静态图片升级成了能“动”的多才多艺选手。其实APNG的概念早就不新鲜，Mozilla在2001年就提出了这个方案，Firefox等浏览器也早就支持它。相比GIF的256色限制和“马赛克”画质，APNG支持更丰富的颜色、更高的透明度，还能保持无损压缩
   <br>
   以前，APNG因为没被官方规范收录，有些软件和浏览器支持得不太好。这次第三版直接把APNG纳入核心标准，等于给它颁了个“官方认证”，以后，开发者用APNG会更放心，浏览器和软件的支持也会更统一。---GIF，你的动画王座现在真要被撼动了！</p>
 </li>
 <li>
  <p style=""><strong>高动态范围（HDR）支持</strong>
   <br>
   现在HDR（高动态范围）技术无处不在，从手机到4K电视，HDR让图像的色彩更鲜艳、明暗细节更丰富。第三版PNG新增了对HDR的支持，意味着它能存储和展示超高动态范围的图像——亮的地方更亮，暗的地方更深，色彩层次感拉满！
   <br>
   对于摄影师、游戏开发者、UI设计师来说，这是个大福音。比如，你用HDR PNG保存一张夕阳照片，天空的橙红色和暗部的细节都能完美呈现；或者保存一张CG渲染图，视觉冲击力直接爆表！PNG从此不再只是“普通图片格式”，而是能应对专业场景的高端选手。</p>
 </li>
</ol>
<h2 style="" id="%E6%9B%B4%E6%96%B0%E6%84%8F%E4%B9%89">更新意义</h2>
<p style="">PNG能屹立近30年，靠的是它的开放性、可靠性和多功能性。这次第三版的更新，补齐了PNG在现代场景的短板，让它更有竞争力</p>
<ul>
 <li>
  <p style=""><strong>遗留问题</strong>：APNG的标准化结束了它多年的“灰色地带”状态。有了W3C的背书，APNG的兼容性会更广，开发者再也不用担心“这个浏览器支不支持”的问题。</p>
 </li>
 <li>
  <p style=""><strong>显示技术</strong>：HDR支持让PNG在高画质时代不掉队。</p>
 </li>
 <li>
  <p style=""><strong>巩固核心优势</strong>：无损压缩、Alpha透明、跨平台兼容、免专利，这些PNG的看家本领一个没丢，还好了</p>
 </li>
</ul>
<h2 style="" id="%E7%BB%93%E5%B0%BE">结尾</h2>
<p style="">下一个20年，它还会给我们带来什么惊喜呢？让我们拭目以待！</p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/png-er-shi-nian-mo-yi-jian-w3c-zheng-shi-tui-jian-di-san-ban-dong-tu-yu-hdr</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250712231934187.png&amp;size=m" type="image/jpeg" length="0"/><category>电脑使用</category><category>知识分享</category><pubDate>Sat, 12 Jul 2025 15:20:51 GMT</pubDate></item><item><title><![CDATA[使用 PeerJS 构建点对点文件传输 Web 应用]]></title><link>https://blog.tsoo.net/archives/shi-yong-peerjs-gou-jian-dian-dui-dian-wen-jian-chuan-shu-web-ying-yong</link><description><![CDATA[<img src="https://blog.tsoo.net/plugins/feed/assets/telemetry.gif?title=%E4%BD%BF%E7%94%A8%20PeerJS%20%E6%9E%84%E5%BB%BA%E7%82%B9%E5%AF%B9%E7%82%B9%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93%20Web%20%E5%BA%94%E7%94%A8&amp;url=/archives/shi-yong-peerjs-gou-jian-dian-dui-dian-wen-jian-chuan-shu-web-ying-yong" width="1" height="1" alt="" style="opacity:0;">
<h1 style="" id="%E4%BD%BF%E7%94%A8-peerjs-%E6%9E%84%E5%BB%BA%E7%82%B9%E5%AF%B9%E7%82%B9%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93-web-%E5%BA%94%E7%94%A8">使用 PeerJS 构建点对点文件传输 Web 应用</h1>
<p style="">我希望有一种传送文件且不需要占用服务器磁盘的方法，于是<strong>灵犀传</strong>出现了，一款基于 <strong>PeerJS</strong>、<strong>QRCode.js</strong> 和现代 Web 技术构建的简洁且用户友好的点对点（P2P）文件传输 Web 应用。该应用允许用户在设备间直接传输文件，无需依赖中央服务器，利用 WebRTC 实现快速且安全的传输。</p>
<p style="">点击后方链接试用：<hyperlink-inline-card target="_blank" href="https://me.tsoo.net/dianduidian-app/" theme="inline"><a href="https://me.tsoo.net/dianduidian-app/" target="_blank">https://me.tsoo.net/dianduidian-app/</a></hyperlink-inline-card></p>
<figure style="align-items: start; display: flex; flex-direction: column" data-content-type="image">
 <img src="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimages.6uu.us%2F20250621183740594.gif&amp;size=m" width="100%" height="100%">
</figure>
<h2 style="" id="%E9%A1%B9%E7%9B%AE%E6%A6%82%E8%BF%B0">项目概述</h2>
<p style="">灵犀传 旨在以简约的界面和强大的功能简化文件分享。它支持两种模式：</p>
<ul>
 <li>
  <p style=""><strong>分享模式</strong>：用户选择文件，生成可分享的链接或二维码，然后等待接收者连接。</p>
 </li>
 <li>
  <p style=""><strong>接收模式</strong>：用户粘贴分享链接，连接到分享者并下载文件。</p>
 </li>
</ul>
<p style="">该应用具有以下主要功能：</p>
<ul>
 <li>
  <p style="">通过拖放或点击选择文件进行分享。</p>
 </li>
 <li>
  <p style="">生成分享链接或二维码，方便跨设备连接。</p>
 </li>
 <li>
  <p style="">显示实时传输进度、速度和连接状态。</p>
 </li>
 <li>
  <p style="">支持多接收者同时连接（分享者端）。</p>
 </li>
 <li>
  <p style="">提供错误处理和网络重试机制，确保可靠的连接。</p>
 </li>
</ul>
<h2 style="" id="%E6%8A%80%E6%9C%AF%E6%A0%88">技术栈</h2>
<p style="">灵犀传 使用了以下技术：</p>
<ul>
 <li>
  <p style=""><strong>HTML5</strong> 和 <strong>CSS3</strong>：构建响应式和现代化的用户界面。</p>
 </li>
 <li>
  <p style=""><strong>JavaScript</strong>：处理核心逻辑和动态交互。</p>
 </li>
 <li>
  <p style=""><strong>PeerJS</strong>：简化 WebRTC 的实现，用于建立 P2P 连接。</p>
 </li>
 <li>
  <p style=""><strong>QRCode.js</strong>：生成二维码，便于移动设备扫描链接。</p>
 </li>
 <li>
  <p style=""><strong>WebRTC</strong>：通过 ICE 服务器（STUN）实现点对点数据传输。</p>
 </li>
 <li>
  <p style=""><strong>CSS 变量</strong> 和 <strong>渐变背景</strong>：打造美观的暗色主题界面。</p>
 </li>
 <li>
  <p style=""><strong>FileReader API</strong>：分片读取文件以优化大文件传输。</p>
 </li>
</ul>
<h2 style="" id="%E8%AE%BE%E8%AE%A1">设计</h2>
<h3 style="" id="1.-%E7%94%A8%E6%88%B7%E4%BD%93%E9%AA%8C%E4%BC%98%E5%85%88">1. 用户体验优先</h3>
<p style="">灵犀传 的界面设计以简洁和直观为核心：</p>
<ul>
 <li>
  <p style=""><strong>拖放支持</strong>：用户可以拖放文件或点击选择，简化操作。</p>
 </li>
 <li>
  <p style=""><strong>实时反馈</strong>：通过进度条、速度显示和状态通知，让用户随时了解传输情况。</p>
 </li>
 <li>
  <p style=""><strong>通知系统</strong>：使用动画通知提示成功或错误信息。</p>
 </li>
 <li>
  <p style=""><strong>二维码支持</strong>：方便移动设备用户通过扫描快速加入。</p>
 </li>
</ul>
<h3 style="" id="2.-webrtc-%E5%92%8C-peerjs">2. WebRTC 和 PeerJS</h3>
<p style="">WebRTC 提供了浏览器原生的 P2P 数据传输能力，但其配置较为复杂。PeerJS 通过封装 WebRTC 提供了更简单的 API，用于：</p>
<ul>
 <li>
  <p style="">建立信令服务器连接以交换 ICE 候选者。</p>
 </li>
 <li>
  <p style="">管理点对点数据通道，传输文件分片。</p>
 </li>
 <li>
  <p style="">处理连接错误和断开事件。</p>
 </li>
</ul>
<p style="">为了提高连接成功率，我配置了多个 PeerJS 信令服务器（包括 NTT、PeerJS 官方服务器等）并实现了自动重试机制。如果一个服务器连接失败，应用会切换到下一个服务器，最多重试 3 次。</p>
<h3 style="" id="3.-%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93%E4%BC%98%E5%8C%96">3. 文件传输优化</h3>
<p style="">为了支持大文件传输，我将文件分片处理：</p>
<ul>
 <li>
  <p style=""><strong>分片大小</strong>：每个分片 256KB，平衡了传输效率和内存使用。</p>
 </li>
 <li>
  <p style=""><strong>进度更新</strong>：每 500 毫秒更新一次进度和速度，避免过于频繁的 DOM 操作。</p>
 </li>
 <li>
  <p style=""><strong>缓冲区管理</strong>：监控 PeerJS 连接的缓冲区大小，避免数据堆积导致性能下降。</p>
 </li>
</ul>
<h3 style="" id="4.-%E9%94%99%E8%AF%AF%E5%A4%84%E7%90%86">4. 错误处理</h3>
<p style="">网络环境复杂，WebRTC 连接可能因防火墙、NAT 穿越失败等原因中断。我实现了以下错误处理机制：</p>
<ul>
 <li>
  <p style=""><strong>超时检测</strong>：接收者在连接分享者时设置 15 秒超时。</p>
 </li>
 <li>
  <p style=""><strong>重试逻辑</strong>：连接失败时自动重试，最多尝试 3 次。</p>
 </li>
 <li>
  <p style=""><strong>用户提示</strong>：通过通知系统显示具体的错误信息（如“对方设备已离线”或“网络错误”）。</p>
 </li>
</ul>
<h2 style="" id="%E5%AE%9E%E7%8E%B0%E7%BB%86%E8%8A%82">实现细节</h2>
<p style="">以下是灵犀传 核心功能的代码解析和实现思路。</p>
<h3 style="" id="1.-%E5%88%9D%E5%A7%8B%E5%8C%96-peerjs">1. 初始化 PeerJS</h3>
<p style="">应用启动时初始化 PeerJS 实例，连接到信令服务器：</p>
<pre><code class="language-javascript">function initPeer() {
  if (peer) peer.destroy();
  const server = PEERJS_SERVERS[currentServerIndex];
  updateStatus(`正在连接信令服务器... (${currentServerIndex + 1}/${PEERJS_SERVERS.length})`);
  try {
    peer = new Peer({ ...server, debug: 2, config: ICE_SERVERS });
    peer.on('open', id =&gt; {
      peerIdReady = true;
      retryCount = 0;
      updateStatus('网络已就绪', false);
    });
    peer.on('connection', handleNewConnection);
    peer.on('error', handlePeerError);
  } catch (error) {
    handlePeerError(error);
  }
}
</code></pre>
<ul>
 <li>
  <p style="">使用多个信令服务器（<code>PEERJS_SERVERS</code>）提高可靠性。</p>
 </li>
 <li>
  <p style="">配置 STUN 服务器（Google 提供的免费 STUN）以辅助 NAT 穿越。</p>
 </li>
 <li>
  <p style="">监听 <code>open</code>、<code>connection</code> 和 <code>error</code> 事件，分别处理连接成功、新连接建立和错误情况。</p>
 </li>
</ul>
<h3 style="" id="2.-%E6%96%87%E4%BB%B6%E5%88%86%E4%BA%AB%E6%B5%81%E7%A8%8B">2. 文件分享流程</h3>
<p style="">分享者选择文件后，生成包含 Peer ID 的分享链接：</p>
<pre><code class="language-javascript">function generateShareLink() {
  if (!peerIdReady) return showNotification('error', '网络未就绪，请稍等');
  const shareLink = `${window.location.origin}${window.location.pathname}?peerId=${peer.id}`;
  getEl('shareLink').innerHTML = `&lt;a href="${shareLink}" target="_blank"&gt;${shareLink}&lt;/a&gt;`;
  getEl('shareStep2').classList.remove('hidden');
  getEl('shareStep1').style.opacity = "0.5";
  updateStatus('已生成链接，等待接收者连接...', true);
}
</code></pre>
<p style="">当接收者连接时，分享者发送文件信息和分片：</p>
<pre><code class="language-javascript">function sendFile(conn) {
  if (!file) return conn.send({ type: 'error', payload: '分享者未选择文件' });
  const CHUNK_SIZE = 256 * 1024;
  const reader = new FileReader();
  let offset = 0, lastUpdate = Date.now(), lastLoaded = 0;
  conn.send({ type: 'file-info', payload: { name: file.name, size: file.size } });
  reader.onload = e =&gt; {
    conn.send({ type: 'file-chunk', payload: e.target.result });
    offset += e.target.result.byteLength;
    if (offset &lt; file.size) {
      if (conn.bufferedAmount &gt; CHUNK_SIZE * 2) setTimeout(sendNextChunk, 100);
      else sendNextChunk();
    } else {
      conn.send({ type: 'file-complete' });
    }
  };
  const sendNextChunk = () =&gt; reader.readAsArrayBuffer(file.slice(offset, offset + CHUNK_SIZE));
  sendNextChunk();
}
</code></pre>
<ul>
 <li>
  <p style="">使用 <code>FileReader</code> 按分片读取文件。</p>
 </li>
 <li>
  <p style="">监控 <code>bufferedAmount</code> 避免数据堆积。</p>
 </li>
 <li>
  <p style="">发送 <code>file-info</code>、<code>file-chunk</code> 和 <code>file-complete</code> 三种消息类型，分别传递文件元数据、分片数据和完成信号。</p>
 </li>
</ul>
<h3 style="" id="3.-%E6%96%87%E4%BB%B6%E6%8E%A5%E6%94%B6%E6%B5%81%E7%A8%8B">3. 文件接收流程</h3>
<p style="">接收者粘贴链接后，解析 Peer ID 并建立连接：</p>
<pre><code class="language-javascript">function connectToPeer() {
  const url = getEl('shareUrlInput').value;
  const match = url.match(/peerId=([a-zA-Z0-9-]+)/);
  if (!match) return showNotification('error', '链接格式无效');
  updateStatus('正在连接分享者...', true);
  activeConn = peer.connect(match[1], { reliable: true });
  activeConn.on('open', () =&gt; {
    getEl('receiveStep2').classList.remove('hidden');
    getEl('receiveStep1').classList.add('hidden');
    activeConn.send({ type: 'request-file' });
  });
}
</code></pre>
<p style="">接收文件分片并保存：</p>
<pre><code class="language-javascript">function handleFileData(data) {
  if (data.type === 'file-info') {
    totalBytes = data.payload.size;
    getEl('fileName').textContent = data.payload.name;
    getEl('fileSize').textContent = (totalBytes / 1024 / 1024).toFixed(2) + ' MB';
    getEl('downloadButton').disabled = false;
  } else if (data.type === 'file-chunk') {
    receivedBytes += data.payload.byteLength;
    receivedChunks.push(data.payload);
    const progress = (receivedBytes / totalBytes) * 100;
    getEl('downloadProgress').style.width = `${progress}%`;
  } else if (data.type === 'file-complete') {
    const blob = new Blob(receivedChunks);
    const a = document.createElement('a');
    a.href = URL.createObjectURL(blob);
    a.download = getEl('fileName').textContent;
    a.click();
  }
}
</code></pre>
<ul>
 <li>
  <p style="">收集分片到 <code>receivedChunks</code> 数组。</p>
 </li>
 <li>
  <p style="">传输完成后，使用 <code>Blob</code> 合并分片并触发下载。</p>
 </li>
</ul>
<h3 style="" id="4.-%E7%94%A8%E6%88%B7%E7%95%8C%E9%9D%A2">4. 用户界面</h3>
<p style="">界面使用 CSS 变量和现代样式打造：</p>
<ul>
 <li>
  <p style=""><strong>进度条</strong>：使用 CSS 过渡动画平滑显示进度。</p>
 </li>
 <li>
  <p style=""><strong>通知动画</strong>：通过 <code>opacity</code> 和 <code>transform</code> 实现淡入淡出效果。</p>
 </li>
</ul>
<pre><code class="language-css">.progress-bar {
  height: 8px; background: var(--background-light); border-radius: 4px; overflow: hidden; margin: 20px 0;
}
.progress-fill {
  height: 100%; background: var(--primary-color); transition: width 0.3s ease;
}
.notification {
  padding: 12px 20px; border-radius: 8px; opacity: 0; transform: translateY(-20px); transition: all 0.3s;
}
.notification.show {
  opacity: 1; transform: translateY(0);
}
</code></pre>
<h2 style="" id="%E9%81%87%E5%88%B0%E7%9A%84%E9%97%AE%E9%A2%98">遇到的问题</h2>
<ol>
 <li>
  <p style=""><strong>网络限制</strong>：某些网络（如企业防火墙）可能阻止 WebRTC 连接。</p>
  <ul>
   <li>
    <p style="">解决方案：提供多个信令服务器和 STUN 服务器，增加连接成功率。</p>
   </li>
  </ul>
 </li>
 <li>
  <p style=""><strong>大文件传输</strong>：大文件可能导致浏览器内存溢出。</p>
  <ul>
   <li>
    <p style="">解决方案：分片传输并及时清理缓冲区。</p>
   </li>
  </ul>
 </li>
 <li>
  <p style=""><strong>移动端兼容性</strong>：部分移动浏览器对 WebRTC 支持不一致。</p>
  <ul>
   <li>
    <p style="">解决方案：通过二维码简化移动端连接，并测试主流浏览器（如 Chrome、Safari）。</p>
   </li>
  </ul>
 </li>
</ol>
<h2 style="" id="%E4%BB%8D%E7%84%B6%E6%B2%A1%E6%9C%89%E5%AE%9E%E7%8E%B0%E7%9A%84">仍然没有实现的</h2>
<ul>
 <li>
  <p style=""><strong>加密传输</strong>：为数据通道添加端到端加密，增强安全性。</p>
 </li>
 <li>
  <p style=""><strong>多文件支持</strong>：允许用户一次分享多个文件。</p>
 </li>
 <li>
  <p style=""><strong>断点续传</strong>：记录已传输的分片，支持中途断开后恢复。</p>
 </li>
 <li>
  <p style=""><strong>自定义 Peer ID</strong>：让用户设置易记的 Peer ID，简化连接。</p>
 </li>
 <li>
  <p style=""><strong>文件预览</strong>：在接收端支持图片或视频的预览功能。</p>
 </li>
</ul>
<h2 style="" id="%E6%80%BB%E7%BB%93">总结</h2>
<p style="">灵犀传 展示了如何利用 PeerJS 和 WebRTC 构建一个高效的 P2P 文件传输应用。通过简洁的界面、实时反馈和可靠的错误处理，它为用户提供了流畅的分享体验。这个项目不仅让我深入理解了 WebRTC 的工作原理，还让我在前端设计和性能优化方面积累了宝贵经验。</p>
<p style="">如果您想尝试灵犀传，可以直接在浏览器中运行代码，或访问 <a href="https://u.tsoo.net/9a6dY" target="_blank" rel="">GitHub 仓库</a> 获取源码。欢迎提出建议或贡献代码！</p>
<p style=""></p>
<h4 style="" id="%E5%86%99%E5%9C%A8%E6%9C%80%E5%90%8E">写在最后</h4>
<p style="">浩渺云海间，缘分如丝牵，若您为网站之精髓所动，可于下方订阅之卷，或诸平台觅得契合之径，唯需寄一封电邮之名，便与吾辈缔结灵犀，共享智慧之光，永续共鸣。</p>
<p style=""></p>
<follow-card text-align="center" show-title="true" title-text="订阅最新内容推送" show-multiline="false"></follow-card>
<p style=""></p>]]></description><guid isPermaLink="false">/archives/shi-yong-peerjs-gou-jian-dian-dui-dian-wen-jian-chuan-shu-web-ying-yong</guid><dc:creator>bbb-lsy07</dc:creator><enclosure url="https://blog.tsoo.net/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fimg.tsoo.net%2F20250621185725427.png&amp;size=m" type="image/jpeg" length="0"/><category>生活</category><category>知识分享</category><pubDate>Sat, 21 Jun 2025 10:52:35 GMT</pubDate></item></channel></rss>