<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>SEO优化技术社区</title>
    <link>https://seo.ga</link>
    <description>SEO优化技术社区，专注搜索引擎优化实战操作笔记，整理内部 SEO 技术研究、项目实践、工具运维与案例复盘平台</description>
    <managingEditor>tools@seo.ga (SEO优化技术社区)</managingEditor>
    <pubDate>Fri, 31 Jul 2026 19:40:06 +0700</pubDate>
    <lastBuildDate>Fri, 31 Jul 2026 19:40:06 +0700</lastBuildDate>
    <item>
      <title>针对落地页独立站点域名筛选技巧</title>
      <link>https://seo.ga/p/post/17</link>
      <description>针对落地页独立站点域名筛选技巧 落地页独立站点域名筛选，是非常重要的工作，我们会在所有站群页面上挂上落地页独立站点的域名，方便用户可以快速找到我们的落地页站点，方便引导用户进行注册转化 所以，落地页独立站点的域名非常关键，最核心的要点有几个几点： 1、域名尽量和官网域名接近，提升用户的信任度；比如我们做凯发的落地页站点域名，因为凯发的官网域名是 k8.com 所以我们的落地页的域名尽量和k8.co...</description>
      <content:encoded><![CDATA[<h2 id="针对落地页独立站点域名筛选技巧">针对落地页独立站点域名筛选技巧</h2>
<p>落地页独立站点域名筛选，是非常重要的工作，我们会在所有站群页面上挂上落地页独立站点的域名，方便用户可以快速找到我们的落地页站点，方便引导用户进行注册转化</p>
<p>所以，落地页独立站点的域名非常关键，最核心的要点有几个几点：</p>
<ul>
<li>1、域名尽量和官网域名接近，提升用户的信任度；比如我们做凯发的落地页站点域名，因为凯发的官网域名是 k8.com 所以我们的落地页的域名尽量和k8.com 近似、或者包含k8.com</li>
<li>2、一定要严格过滤安全检测，重点是被墙、污染、报毒、微信拦截等因素，我们可以通过多个工具进行检测</li>
</ul>
<h3 id="一-使用link114批量过滤">一、使用Link114批量过滤</h3>
<p>2.1、我们可以通过Link114检测这些因素</p>
<p><img src="/file/img/remote/2026/07/31/ba3c7780-d093-4bc9-81b3-c4406400a0bc.png" alt="image-20251219123921957" loading="lazy" decoding="async"/></p>
<p>比如检测结果像这样的：【落地页独立站域名，最重要是不能被墙、不能被污染、不能被拦截，要让用户可以随时打开】</p>
<p>像下面这些飘红的，<code>不良建站史</code>、<code>微信拦截</code>、<code>域名被墙</code> 这几项，任何一项有问题都不能要；</p>
<p>另外，需要特别注意 <code>历史标题</code>，如果历史标题是色站、博彩的也不要；</p>
<p><img src="/file/img/remote/2026/07/31/9f67f89f-4053-4e07-869c-2d8bdc1fc957.png" alt="image-20251219124128424" loading="lazy" decoding="async"/></p>
<h3 id="2-2-使用jucha进行第二次过滤">2.2、使用Jucha进行第二次过滤</h3>
<p>建议使用聚查的 <code>离线批量查询</code> 如果需要过滤的域名不多，可以使用 聚查 —— 离线批量查询—— 离线查询（手动输入）；如果批量查询的域名比较多，可以使用 聚查——离线批量查询——离线查询（文件上传），将需要查询的域名保存到txt记事本中，一行一个域名，上传txt文件到工具里面批量查询；<img src="/file/img/remote/2026/07/31/8ead4c2b-b036-4ad2-8fa5-6543289e7b97.png" alt="image-20251219150540236" loading="lazy" decoding="async"/></p>
<p>针对 落地页独立站点域名，我们可以使用 聚查 批量查询以下参数</p>
<p><img src="/file/img/remote/2026/07/31/0c538531-56b7-4ba9-9979-579436f3ca20.png" alt="image-20251219150909847" loading="lazy" decoding="async"/></p>
<p>提交任务之后，记得点击下面的 <code>返回至离线查询列表</code></p>
<p><img src="/file/img/remote/2026/07/31/f160d688-1e53-408f-b3e9-59ff2c30a260.png" alt="image-20251219154241424" loading="lazy" decoding="async"/></p>
<p>在离线查询列表中，找到刚刚提交的离线查询任务，点击后面对应的 <code>提交</code> ，然后这个离线查询任务都会开始执行，一般5分钟左右就可以完成查询；</p>
<p><img src="/file/img/remote/2026/07/31/9e2ca00a-13b3-4921-a24c-7a4121914556.png" alt="image-20251219154330889" loading="lazy" decoding="async"/></p>
<p>等到查询完成之后，下载结果报表，打开之后，重点注意以下几项参数：</p>
<p>特别是关于安全的几项：<code>QQ检测</code> 、 <code>微信检测</code>、<code>被墙检测</code> 这三项是最重要的，有<code>危险</code>、<code>被墙</code>、<code>污染</code> 的域名，一定要过滤掉；</p>
<p>其次，注意一下 建站历史标题，有博彩、色站、影视等行业的要过滤掉；然后就是<code>备案黑名单</code> 有问题的域名要过滤掉；</p>
<p><img src="/file/img/remote/2026/07/31/7829993d-d4d3-4d1f-a3f0-82795ed039a7.png" alt="image-20251219154531400" loading="lazy" decoding="async"/></p>
<p>处理完这些就可以购买域名了</p>
<p>关于落地页独立站搭建的方法可以查看这篇笔记：<a href="https://seo.ga/p/post/18" target="_blank" rel="nofollow ugc noopener noreferrer">利用CloudFlare的Page服务搭建落地页站点的方法</a></p>
<p>建议只使用一级域名搭建这个独立站，不要使用带www的域名搭建；</p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/17</guid>
      <pubDate>Fri, 31 Jul 2026 19:38:18 +0700</pubDate>
    </item>
    <item>
      <title>利用CloudFlare的Page服务搭建落地页站点的方法</title>
      <link>https://seo.ga/p/post/18</link>
      <description>利用CloudFlare的Page服务搭建落地页站点的方法 Cloudflare是一个全球CDN服务商，因为在全球各个数据中心布局了多个机房服务器，所以我们在全球各地打开通过Cloudflare服务的网站都会非常快。Cloudflare也提供了一个Page的服务，可以使用Cloudflare的page服务搭建第三方站点，可以使用Cloudflare自己分配的二级域名，当然也可以绑定我们自己的域名，...</description>
      <content:encoded><![CDATA[<h2 id="利用cloudflare的page服务搭建落地页站点的方法">利用CloudFlare的Page服务搭建落地页站点的方法</h2>
<p>Cloudflare是一个全球CDN服务商，因为在全球各个数据中心布局了多个机房服务器，所以我们在全球各地打开通过Cloudflare服务的网站都会非常快。Cloudflare也提供了一个Page的服务，可以使用Cloudflare的page服务搭建第三方站点，可以使用Cloudflare自己分配的二级域名，当然也可以绑定我们自己的域名，下面说一下详细的操作方法</p>
<h2 id="1-注册cloudflare账户-添加域名到cloudflare账户">1、注册Cloudflare账户，添加域名到Cloudflare账户</h2>
<p>这个比较简单，详细可以参考这篇笔记  <a href="https://seo.ga/p/post/13" target="_blank" rel="nofollow ugc noopener noreferrer">域名解析平台www.cloudflare.com注册配置教程</a> 注册Cloudflare账户，并将计划用来做落地页的域名添加到Cloudflare账户中，并修改域名dns地址，让域名状态变成活动；</p>
<h2 id="2-利用cloudflare的worker-pages服务寻找独立页站点">2、利用Cloudflare的Worker &amp; Pages服务寻找独立页站点</h2>
<ul>
<li>1、点击页面顶部的 <code>添加</code> 按钮，在下拉菜单中点击 <code>页面</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/63b597d4-2c6d-4dd2-95fd-e15664f469f8.png" alt="image-20251217190715126" loading="lazy" decoding="async"/></p>
<ul>
<li>2、点击 <code>拖放文件</code> 对应的按钮 <code>开始使用</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/48dae0e8-0fe8-43ed-a96f-28b6799243a6.png" alt="image-20251217190806230" loading="lazy" decoding="async"/></p>
<ul>
<li>3、<code>项目名称</code> 我们可以使用域名的前缀，比如我准备使用 k8917.com 这个域名来做独立的落地页站点，项目名称就可以使用 <code>k8917</code> 只要不和别人的名称重复，就可以使用，能使用的名称，后面就会显示 <code>创建项目</code> 按钮，点击 <code>创建项目</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/a95d7001-bdaf-454b-b15c-1cf28995fe5e.png" alt="image-20251217190925803" loading="lazy" decoding="async"/></p>
<ul>
<li>4、项目创建成功之后，就可以上传我们做好的落地页文件，记得先打包成 zip 格式的文件，这次我使用了首页文件 index.html js文件 bootstrap.js 和 robots.txt 文件，一起打包成zip文件，可以直接拖放到上传区域；上传成功之后，就会显示压缩包里面的文件</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/15fd49c6-9cae-4df2-a322-3443e0991773.png" alt="image-20251217191148651" loading="lazy" decoding="async"/></p>
<p>文件上传完成后，点击右下角的 <code>部署站点</code></p>
<p><img src="/file/img/remote/2026/07/31/ddf98d3b-2860-491a-812e-b6695e70f0c7.png" alt="image-20251217191326650" loading="lazy" decoding="async"/></p>
<ul>
<li>5、站点部署成功之后，会显示 <code>成功！</code> 并且会为我们的项目分配一个默认的 二级域名站点，像我分配的就是这个  <a href="https://k8917.pages.dev/" target="_blank" rel="nofollow ugc noopener noreferrer">https://k8917.pages.dev/</a> ，这个显示部署成功之后，可以直接打开访问的，如果无法访问，可以使用Ctrl+F5强制刷新</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/3e9fd454-592c-4a8a-adea-b6d988d4e310.png" alt="image-20251217191421808" loading="lazy" decoding="async"/></p>
<p>这是打开   <a href="https://k8917.pages.dev/" target="_blank" rel="nofollow ugc noopener noreferrer">https://k8917.pages.dev/</a>  站点预览的效果，现在可以全球访问了；</p>
<p><img src="/file/img/remote/2026/07/31/b0bd0704-9693-4413-a773-37300da35845.png" alt="image-20251217191611453" loading="lazy" decoding="async"/></p>
<ul>
<li>6、为这个项目绑定上我们独立的域名</li>
</ul>
<p>点击页面底部的 <code>继续处理项目</code></p>
<p><img src="/file/img/remote/2026/07/31/aee6fbcc-7e35-4095-b790-b0d6967aaac1.png" alt="image-20251217191722912" loading="lazy" decoding="async"/></p>
<p>在头部菜单点击 <code>自定义域</code> —— 点击页面中间的 <code>设置自定义域</code></p>
<p><img src="/file/img/remote/2026/07/31/d46b1313-578b-4b0f-8040-7f30cd29b3b6.png" alt="image-20251217191817976" loading="lazy" decoding="async"/></p>
<p>将我们自己的域名填写到输入框，点击 <code>继续</code></p>
<p><img src="/file/img/remote/2026/07/31/d826a3af-9551-4fc9-813c-b364be0ad186.png" alt="image-20251217191926868" loading="lazy" decoding="async"/></p>
<p>这一步需要配置DNS，如果我们的域名已经添加到这个Cloudflare账户并已经激活成功，那么这一步可以直接点击 <code>激活域</code> 系统会自动帮我们添加相关解析记录；</p>
<p><img src="/file/img/remote/2026/07/31/dc8a99a3-f7a0-4c81-bfbc-148cc86ebc0c.png" alt="image-20251217192023558" loading="lazy" decoding="async"/></p>
<p>这个是系统在自动帮我们设置相关的域名解析记录</p>
<p><img src="/file/img/remote/2026/07/31/f2ae3a83-d055-4d24-bae7-09d97033236d.png" alt="image-20251217192148585" loading="lazy" decoding="async"/></p>
<p>如果显示的状态是 <code>正在验证</code>，我们可以点击后面的 <code>完成DNS设置</code></p>
<p><img src="/file/img/remote/2026/07/31/89a62d12-a142-45ff-91f6-f1abf10b2380.png" alt="image-20251217192318171" loading="lazy" decoding="async"/></p>
<p>在弹窗中点击 <code>检查DNS记录</code></p>
<p><img src="/file/img/remote/2026/07/31/1b5c24a4-972a-4919-8403-0f062708f186.png" alt="image-20251217192414614" loading="lazy" decoding="async"/></p>
<p>或者在这个页面强制刷新 Ctrl+F5 正常情况下这个很快就会显示 <code>活动</code> 状态 ，这个时候就可以打开我们自己的域名检查网站的情况了</p>
<p><img src="/file/img/remote/2026/07/31/c9165585-657d-4153-aea5-b0539ba6f329.png" alt="image-20251217192508817" loading="lazy" decoding="async"/></p>
<p>这种可以正常访问了，就表示我们设置成功了！</p>
<p><img src="/file/img/remote/2026/07/31/2d7e0b56-a27d-40da-a0b3-9129a517a1c4.png" alt="image-20251217192628421" loading="lazy" decoding="async"/></p>
<h2 id="3-关于开户域名更新怎么处理">3、关于开户域名更新怎么处理？</h2>
<ul>
<li>1、登录我们的Cloudflare账户，在左侧菜单中找到 <code>计算和AI</code>——点击子菜单 <code>Workers 和 Pages</code> ，在页面右侧就可以看到我们创建的独立站点项目，点击我们需要修改的项目；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/074b38d5-7cae-4c38-b927-87b5452e87d8.png" alt="image-20251217193020485" loading="lazy" decoding="async"/></p>
<ul>
<li>2、在 <code>部署</code> 菜单中 —— 点击右侧 <code>创建部署</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/3edfb01e-ef6e-4911-b66f-b4efa589ede5.png" alt="image-20251217192817546" loading="lazy" decoding="async"/></p>
<ul>
<li>3、将我们修改好最新的落地页文件打包压缩成zip格式，在这个页面配置如下：选择 <code>生产</code> 环境，将压缩的zip文件拖放到 文件上传区域，点击底部的 <code>保存并部署</code> 就可以将旧的开户链接更新为新的了。</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/e12ed894-4cef-4dc2-856f-ee5afe207c6f.png" alt="image-20251217193240250" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/18</guid>
      <pubDate>Fri, 31 Jul 2026 19:39:42 +0700</pubDate>
    </item>
    <item>
      <title>域名平台unstoppabledomains.com账户注册及域名批量注册的方法</title>
      <link>https://seo.ga/p/post/16</link>
      <description>域名平台unstoppabledomains.com账户注册及域名批量注册的方法 一、域名平台unstoppabledomains.com账户注册的方法 1、打开网站的登录页面 点击底部的 Sign Up 进入注册窗口； 2、填写好邮箱、密码、点击 Sign Up 进行注册 3、去邮箱点击一个激活邮件 4、打开激活邮件中的链接，点击 Continue 即可激活账户； 5、激活成功之后，登录自己的账...</description>
      <content:encoded><![CDATA[<h2 id="域名平台unstoppabledomains-com账户注册及域名批量注册的方法">域名平台unstoppabledomains.com账户注册及域名批量注册的方法</h2>
<h2 id="一-域名平台unstoppabledomains-com账户注册的方法">一、域名平台unstoppabledomains.com账户注册的方法</h2>
<ul>
<li>1、打开网站的登录页面 <a href="https://unstoppabledomains.com/auth" target="_blank" rel="nofollow ugc noopener noreferrer">https://unstoppabledomains.com/auth</a> 点击底部的 <code>Sign Up</code> 进入注册窗口；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/8334787d-9032-420f-98eb-c060da65db41.png" alt="image-20251121152551395" loading="lazy" decoding="async"/></p>
<ul>
<li>2、填写好邮箱、密码、点击 <code>Sign Up</code> 进行注册</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/73bab997-710a-45c8-aeff-2a0eaa62ed18.png" alt="image-20251121153620681" loading="lazy" decoding="async"/></p>
<ul>
<li>3、去邮箱点击一个激活邮件</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/b83a5d7d-45da-4bc7-b3a8-38ce0e9c210f.png" alt="image-20251121153742847" loading="lazy" decoding="async"/></p>
<ul>
<li>4、打开激活邮件中的链接，点击  <code>Continue</code> 即可激活账户；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/e5ac90d2-14d5-4fca-a2ec-b737bd319ec5.png" alt="image-20251121154027370" loading="lazy" decoding="async"/></p>
<ul>
<li>5、激活成功之后，登录自己的账户，进入 域名预设 ，配置一套域名的联系信息</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/c65769ef-736b-46be-8a26-f96228b67ce4.png" alt="image-20251121155455943" loading="lazy" decoding="async"/></p>
<p>首先我们去Google搜索 <code>美国身份生成器</code></p>
<p><img src="/file/img/remote/2026/07/31/394a2fa8-1b0a-40ce-b6fe-84987389f6ee.png" alt="去Google搜索 美国身份生成器 " loading="lazy" decoding="async"/></p>
<p>随机打开一个网站，上面可以生成美国人的联系资料，可以点击 <code>刷新数据</code> 每次生成不同的数据，生成完之后，复制相关信息去网站里面填写联系信息</p>
<p><img src="/file/img/remote/2026/07/31/f38b3e4e-cc58-49a0-98dd-c37c1bb3f989.png" alt="生成美国人的联系资料，可以点击 刷新数据 每次生成不同的数据，生成完之后，复制相关信息去网站里面填写联系信息" loading="lazy" decoding="async"/></p>
<p>注意：邮箱 一定要填写自己的邮箱，注册域名的时候，有时候需要进入邮箱点击激活链接；</p>
<p><img src="/file/img/remote/2026/07/31/0306561a-1f9a-4ba4-aef8-231bdd65a9ed.png" alt="image-20251121155857175" loading="lazy" decoding="async"/></p>
<ul>
<li>6、配置好之后就可以去注册域名了。</li>
</ul>
<h2 id="二-域名批量注册">二、域名批量注册</h2>
<ul>
<li>1、打开批量注册的网址 <a href="https://unstoppabledomains.com/zh-cn/bulk-search" target="_blank" rel="nofollow ugc noopener noreferrer">https://unstoppabledomains.com/zh-cn/bulk-search</a></li>
</ul>
<p>从这里也可以进入批量搜索；</p>
<p><img src="/file/img/remote/2026/07/31/fd751bac-7c13-4158-9d17-d4a76315549c.png" alt="image-20251205221717248" loading="lazy" decoding="async"/></p>
<ul>
<li>将筛选了的域名粘贴进来，域名之间可以使用英文空格间隔，点击 <code>搜索域名</code> 下面会显示可以域名的域名以及价格，点击 <code>Results</code> 前面的勾选框，全选所有可以注册的域名，点击 <code>Add to Cart All</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/f7ce9482-6213-4813-8530-e42945147078.png" alt="image-20251121145025780" loading="lazy" decoding="async"/></p>
<ul>
<li>2、点击 <code>转到购物车</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/b0e1d66c-23dc-4b91-8f0f-6f144e27d819.png" alt="image-20251121145248293" loading="lazy" decoding="async"/></p>
<ul>
<li>3、可以看到加入购买车的域名，默认是选择域名隐私保护的，每个单价 5美元，点击 <code>Go to Checkout</code> 进入付款界面；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/bae60202-382d-4d55-bdb0-b4b6ccb2c7e1.png" alt="image-20251121145416746" loading="lazy" decoding="async"/></p>
<ul>
<li>4、这个域名平台支持信用卡、Paypal、以及加密货币付款，很方便；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/28c2f3e0-c7b4-4c27-8814-ab460dbaa58c.png" alt="image-20251121145636521" loading="lazy" decoding="async"/></p>
<p>记得选择 <code>加密</code> 支付，这个渠道目前费率是最低的，大概只有1%的费率，信用卡需要1.8%的费率，Paypal大概是2.5%的费率；</p>
<p><img src="/file/img/remote/2026/07/31/8f86173f-dabd-4f79-8204-19997242417d.png" alt="image-20251212165453517" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/1cdacee6-c6db-4a8f-8929-ee5054748fda.png" alt="image-20251212195400476" loading="lazy" decoding="async"/></p>
<p>选择 <code>加密</code> 支付之后，点击 确认付款，进入加密货币钱包选择页面，我们选择 <code>关联其他钱包</code></p>
<p><img src="/file/img/remote/2026/07/31/1b36c2db-966a-4a15-aaac-590ec1e83380.png" alt="image-20251212165312907" loading="lazy" decoding="async"/></p>
<p>在新的弹窗页面中，点击 <code>WalletConnect</code> ，这个时候会自动创建钱包连接的二维码，请截图将连接的二维码图片发给我，我使用经费钱包连接进行付款；</p>
<p><img src="/file/img/remote/2026/07/31/47833f76-95d4-406f-9bc3-d3bb86eb7dae.png" alt="image-20251212165335329" loading="lazy" decoding="async"/></p>
<ul>
<li>5、付款完成后，提示域名注册成功，可以从个人账户将域名列表下载回来，方便记录到站群管理报表中。</li>
</ul>
<p>另外，需要特别注意：这个平台注册域名后，需要去邮箱中激活域名联系的邮件，可能是第一次使用新邮箱注册域名，需要去激活一个邮件，后面再注册域名应该就不需要了，不过，需要定期检测邮件；</p>
<p>如下图：点击邮件中的激活链接</p>
<p><img src="/file/img/remote/2026/07/31/049a5dbb-4293-43ff-8324-5143f97d47fb.png" alt="image-20251121151215028" loading="lazy" decoding="async"/></p>
<p>打开激活链接之后，会提示需要在什么日期之前确认邮件</p>
<p><img src="/file/img/remote/2026/07/31/30734157-6641-457a-85d5-ba2a76f2c6a9.png" alt="image-20251121151323097" loading="lazy" decoding="async"/></p>
<p>看到激活成功的提示就可以了</p>
<p><img src="/file/img/remote/2026/07/31/0691972f-9e2a-4b21-ae4f-3e1df44eb163.png" alt="image-20251121151350171" loading="lazy" decoding="async"/></p>
<h3 id="特别说明">特别说明：</h3>
<p>Outlook邮箱可能会将一个域名、服务器平台的邮件放到垃圾箱中，注意定期检查邮件的垃圾箱里面的邮件，像这种正常的服务器商邮件，记得移到收件箱，并标注不要再发到垃圾箱，防止遗漏了邮件！！！</p>
<p><img src="/file/img/remote/2026/07/31/3e09ab9f-1dc9-403c-992c-0d65e916ac24.png" alt="image-20251121151611853" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/16</guid>
      <pubDate>Fri, 31 Jul 2026 19:37:00 +0700</pubDate>
    </item>
    <item>
      <title>域名服务商 www.cosmotown.com 批量解析域名教程</title>
      <link>https://seo.ga/p/post/15</link>
      <description>域名服务商 批量解析域名教程 1、登录自己的 Cosmotown 账户，点击 Domains —— Search 在下面的窗口中，可以把域名管理报表中需要批量修改名称服务器的域名复制到Notepad++，然后将换行替换为英文逗号，下面的说明中有说，多个域名使用英文逗号间隔，比如： 2、搜索会显示查询到的域名数量，默认每页显示10条，可以把数量调整到最大，勾选全部域名，点击 Manage Domai...</description>
      <content:encoded><![CDATA[<h2 id="域名服务商-www-cosmotown-com-批量解析域名教程">域名服务商 <a href="http://www.cosmotown.com" target="_blank" rel="nofollow ugc noopener noreferrer">www.cosmotown.com</a> 批量解析域名教程</h2>
<ul>
<li>
<p>1、登录自己的 Cosmotown 账户，点击  <code>Domains</code> —— <code>Search</code> 在下面的窗口中，可以把域名管理报表中需要批量修改名称服务器的域名复制到Notepad++，然后将换行替换为英文逗号，下面的说明中有说，多个域名使用英文逗号间隔，比如：</p>
<pre><code class="language-html">seo1.ga,seo2.ga,seo3.ga,seo4.ga,seo5.ga
</code></pre>
</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/d17d009e-4814-4688-aed6-86ca0a9d59f7.png" alt="image-20251110154707463" loading="lazy" decoding="async"/></p>
<ul>
<li>2、搜索会显示查询到的域名数量，默认每页显示10条，可以把数量调整到最大，勾选全部域名，点击 <code>Manage Domains</code> —— <code>Domains NameServes</code> 进入域名名称服务器修改界面；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/066442f5-8258-429b-bf5a-256a81612c28.png" alt="image-20251110154737127" loading="lazy" decoding="async"/></p>
<ul>
<li>3、这个界面会显示需要修改的域名有哪些，在下面填写域名对应的名称服务器网址；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/a852dd82-950a-4bc4-b1e7-eed8ced16abf.png" alt="image-20251110154847445" loading="lazy" decoding="async"/></p>
<p>具体的域名名称服务器地址可以从Cloudflare账户中，随便点开一个状态显示为 <code>名称服务器无效</code> 的域名，就可以查看到域名名称服务器地址；随机点击一个域名状态为 <code>名称服务器无效</code></p>
<p><img src="/file/img/remote/2026/07/31/1771ee73-a919-4d9e-acba-c80686279e18.png" alt="image-20251110155432928" loading="lazy" decoding="async"/></p>
<p>下面有域名对应的名称服务器地址，一般情况下一个Cloudflare账户会对应同一组域名服务器地址；</p>
<p><img src="/file/img/remote/2026/07/31/79114f66-17ae-4b4e-b52b-7e9644525965.png" alt="image-20251110155443027" loading="lazy" decoding="async"/></p>
<ul>
<li>4、批量修改成功之后，Cosmotown页面会显示修改的结果状态，都成功了大概等5分钟Cloudflare里面的域名就会显示为 <code>活动</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/ad454af1-6263-4503-b862-e32b4441d978.png" alt="image-20251110155550412" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/15</guid>
      <pubDate>Fri, 31 Jul 2026 19:35:48 +0700</pubDate>
    </item>
    <item>
      <title>域名解析平台www.cloudflare.com注册配置教程</title>
      <link>https://seo.ga/p/post/13</link>
      <description>域名解析平台www.cloudflare.com注册配置教程 这个域名解析平台 cloudflare 在全球范围内做的是最好的，国内也比较好的，像 dnspod 也不错，但是需要实名认证；目前我们重点使用的域名解析平台就是 cloudflare 这个平台了，下面讲解详细的注册、配置、解析流程。 一、Cloudflare账户注册流程 1、打开网站首页 这个是中文版本的页面；点击 登录 按钮，进入登录...</description>
      <content:encoded><![CDATA[<h2 id="域名解析平台www-cloudflare-com注册配置教程">域名解析平台www.cloudflare.com注册配置教程</h2>
<p>这个域名解析平台 cloudflare 在全球范围内做的是最好的，国内也比较好的，像 dnspod 也不错，但是需要实名认证；目前我们重点使用的域名解析平台就是 cloudflare 这个平台了，下面讲解详细的注册、配置、解析流程。</p>
<h2 id="一-cloudflare账户注册流程">一、Cloudflare账户注册流程</h2>
<ul>
<li>1、打开网站首页  <a href="https://www.cloudflare.com/zh-cn/" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.cloudflare.com/zh-cn/</a> 这个是中文版本的页面；点击 <code>登录</code> 按钮，进入登录/注册界面</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/7dc3b150-9609-4d92-b50b-bd9e9b379d46.png" alt="image-20251109121914983" loading="lazy" decoding="async"/></p>
<p>点击底部的 <code>注册</code> 按钮</p>
<p><img src="/file/img/remote/2026/07/31/c6e397fc-18b4-4bdb-a6a1-40b448d0472f.png" alt="image-20251109122026611" loading="lazy" decoding="async"/></p>
<ul>
<li>2、注册信息很简单，只要填写 邮箱、密码、勾选人机验证，然后点击下面的 <code>注册</code> 按钮；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/4b0d779c-5363-4e07-874e-9f861065abe9.png" alt="image-20251109122648385" loading="lazy" decoding="async"/></p>
<p>后续我们肯定会使用多个cloudflare账户的【主要是为了降低风险，之前我在测试的时候，一个账户添加了3000多个域名，后来cloudflare官方发邮件联系我，让我开通企业账户否则禁用我的cloudflare账户，因为是站群域名、流量比较大、占用了cloudflare非常多的资源，他们要求必须开通企业账户，一个月好几千美元，后面没有开通企业账户，我的那个Cloudflare账户被禁用了！！！所以每个账户不要放太多域名，分散降低风险！！】</p>
<p>建议使用Typora创建一个 笔记文件，专门存放你的cloudflare 域名解析账户的信息，建议保存以下信息，因为会经常用到：</p>
<hr/>
<h3 id="cloudflare-1号账户-权重站测试账户-jensen-outlook-coom">CloudFlare 1号账户  权重站测试账户  <a href="mailto:jensen@outlook.coom">jensen@outlook.coom</a></h3>
<p>用户名：</p>
<pre><code class="language-html">jensen@outlook.coom
</code></pre>
<p>密码：</p>
<pre><code class="language-html">oC%KjC9asfdlITg7asd
</code></pre>
<p>Global API Key:</p>
<pre><code class="language-html">b54a257732689e434767b15asdfasfdasdf530
</code></pre>
<p>DNS Api Key:</p>
<pre><code class="language-html">
</code></pre>
<p>DNS地址：</p>
<pre><code class="language-html">nash.ns.cloudflare.com
</code></pre>
<pre><code class="language-html">teagan.ns.cloudflare.com
</code></pre>
<p>API信息：</p>
<pre><code class="language-html">export CF_Key=&#34;b54a257732689e434767b15asdfasfdasdf530&#34;
export CF_Email=&#34;jensen@outlook.coom&#34;
</code></pre>
<hr/>
<ul>
<li>3、注册之后，需要去邮箱里面点击激活邮件，点击邮件中的 <code>验证您的电子邮件</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/6fa9b407-ce8a-4b5a-9446-c27fc765e7b8.png" alt="image-20251109125607386" loading="lazy" decoding="async"/></p>
<ul>
<li>4、激活完账户之后，点击页面右上角头像的按钮，在下拉菜单中点击 <code>配置文件</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/c3fca6cf-86e6-4b61-bd05-54977147348c.png" alt="image-20251109125740417" loading="lazy" decoding="async"/></p>
<ul>
<li>5、在 <code>个人简介</code> 页面点击左侧的 <code>API令牌</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/2f625425-b243-450c-912f-bc8c091ff8af.png" alt="image-20251109125853838" loading="lazy" decoding="async"/></p>
<ul>
<li>6、在页面下面找到 <code>Global API Key</code> 点击后面对应的 <code>查看</code> 按钮</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/51f83d0b-b328-47b4-a0d7-8a61a6203101.png" alt="image-20251109125950882" loading="lazy" decoding="async"/></p>
<ul>
<li>7、查看API密钥，需要输入账户的注册密码进行验证</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/0f268faf-6787-49fb-b403-fba20c062278.png" alt="image-20251109130100758" loading="lazy" decoding="async"/></p>
<p>验证成功之后，就会显示一串数字、字母组合的代码，这个就是您账户的api密钥，后面在批量解析域名、批量修改域名、批量为域名申请ssl证书的时候，都需要使用到api密钥的，这个api密钥一定要保存好，不要让别人知道了！！！可以保存到前面第2步的cloudflare账户记录文件中，按照格式记录好，方便后续使用；</p>
<p><img src="/file/img/remote/2026/07/31/60ca27f3-8b75-46f3-b29c-f3b49a5a8ffc.png" alt="image-20251109130220615" loading="lazy" decoding="async"/></p>
<p>8、创建Cloudflare账户域名dns编辑api key，操作方法如下：</p>
<p>登录 Cloudflare账户——点击顶部的 <code>Profile</code>—— 进入 <code>My Profile</code>管理页面，点击左侧菜单 <code>Api Tokens</code>——在页面右侧点击 <code>Create Token</code> 创建dns 编辑api key</p>
<p><img src="/file/img/remote/2026/07/31/d401807a-ed75-48ac-86e1-b9e01a582197.png" alt="image-20251217171020225" loading="lazy" decoding="async"/></p>
<p>点击页面上的 <code>Edit zone DNS</code> 后面对应的 <code>Use template</code> 使用这个编辑域名的dns模板</p>
<p><img src="/file/img/remote/2026/07/31/3f47b935-7e94-4ace-aa46-48393996e68a.png" alt="image-20251217171300600" loading="lazy" decoding="async"/></p>
<p>在 域名dns模板编辑页面，我们要设置这个参数 选择 <code>All zones</code>，即给予编辑所有域名dns的权限；</p>
<p><img src="/file/img/remote/2026/07/31/f9daba37-fef1-405b-a8e8-07f7d1e563dd.png" alt="image-20251217171421026" loading="lazy" decoding="async"/></p>
<p>设置好之后，点击页面底部的 <code>Continue to summary</code></p>
<p><img src="/file/img/remote/2026/07/31/aa8758eb-db78-46a1-8991-5652adde69c6.png" alt="image-20251217171526099" loading="lazy" decoding="async"/></p>
<p>点击 <code>Create Token</code> 创建api key</p>
<p><img src="/file/img/remote/2026/07/31/17ec56a3-35c2-4cf9-95de-913a89954aa3.png" alt="image-20251217171603897" loading="lazy" decoding="async"/></p>
<p>然后，我们就可以看到创建的api key了，可以把这个api key记录到文档中，这个api key主要是用于 彩虹dns 管理系统中，方便批量编辑、增加域名的dns解析，可以参考这个笔记： <a href="https://seo.ga/p/post/14" target="_blank" rel="nofollow ugc noopener noreferrer">彩虹DNS工具安装配置及使用教程</a></p>
<p><img src="/file/img/remote/2026/07/31/af46b305-f4c2-4bbb-a03b-90430e2b1eb3.png" alt="image-20251217171723057" loading="lazy" decoding="async"/></p>
<h2 id="二-cloudflare平台解析域名的教程">二、Cloudflare平台解析域名的教程</h2>
<p>Cloudflare平台解析域名，可以分为手动操作和批量操作两种，我们先讲手动通过cloudflare解析域名；</p>
<h3 id="2-1-cloudflare平台手动解析域名">2.1、Cloudflare平台手动解析域名</h3>
<ul>
<li>1、登录自己的Cloudflare账户之后，如果您的账户还没有添加过域名，在 账户主页 就会显示添加域名的配置界面</li>
</ul>
<p>把要使用cloudflare解析的域名粘贴进去，选择 手动输入dns记录，关于Ai部分的配置建议参考下图的配置；然后点击 <code>继续</code></p>
<p><img src="/file/img/remote/2026/07/31/e47ba2d8-1545-474c-91c0-7484c0702262.png" alt="image-20251109130739452" loading="lazy" decoding="async"/></p>
<ul>
<li>2、然后是平台让我们选择需要使用的套餐，一般我们使用 Free 免费套餐</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/499305c1-874d-4e9c-a67b-5f19e0d1d6af.png" alt="image-20251109130938245" loading="lazy" decoding="async"/></p>
<ul>
<li>3、这一步让我们添加域名的解析记录，因为我们的网站还没有建好，所以暂时先不选择解析记录，直接点击底部的 <code>继续前往激活</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/a7763478-d1e7-4c0d-a9cd-f16d84642812.png" alt="image-20251109131029224" loading="lazy" decoding="async"/></p>
<p>直接点击弹窗中的 <code>确认</code></p>
<p><img src="/file/img/remote/2026/07/31/9aa6c963-f0f4-44b3-8d64-7e19665b4f88.png" alt="image-20251109131135375" loading="lazy" decoding="async"/></p>
<ul>
<li>4、这一步cloudflare平台就会给出你域名的名称服务器地址，如下图：</li>
</ul>
<p>我们需要复制这两个地址，去域名注册平台，将对应域名的名称服务器（Name Server） 更换为图中指定的地址</p>
<p><img src="/file/img/remote/2026/07/31/2104310e-0169-4e68-8570-112bf982fb24.png" alt="image-20251109131214888" loading="lazy" decoding="async"/></p>
<ul>
<li>5、每个域名注册平台，修改域名NS记录的方法都会有些区别，但是整体思路是一样的，基本都在 域名管理 - 勾选需要修改的域名 - 找到Name Server相关的选项，进入就可以修改了；</li>
</ul>
<p>下面以 Cosmotown为例：</p>
<p>登录Cosmotown平台之后，点击  <code>Domains</code> 找到自己要修改NS记录的域名，勾选对应的域名，点击顶部的 <code>Manage Domains</code> 菜单，在下拉菜单中 点击 <code>Domain NameServers</code> 选项</p>
<p><img src="/file/img/remote/2026/07/31/b9fe9301-2acb-4906-9000-6ade91b884d9.png" alt="image-20251109131436960" loading="lazy" decoding="async"/></p>
<ul>
<li>6、一般一个域名至少需要2条Name Servers的地址，部分平台会更多，像namesilo平台有3条Name Servers的记录，我们在修改域名的Name Server记录的时候，需要先删除原来默认的，然后将Cloudflare给我们指定的记录复制过来；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/9880439c-0ed2-4185-8113-0429dc1f7ff7.png" alt="image-20251109131742194" loading="lazy" decoding="async"/></p>
<p>修改好之后，点击 <code>保存</code></p>
<ul>
<li>
<p>7、刚刚添加的域名，在Cloudflare账户中一般会显示 <code>名称服务器无效</code> ，因为我们才刚刚修改了域名的名称服务器，一般需要5到10分钟才能生效；</p>
<p><img src="/file/img/remote/2026/07/31/4a1f3b32-200e-4bc0-9626-9482e0b50078.png" alt="image-20251109132126739" loading="lazy" decoding="async"/></p>
</li>
</ul>
<p>域名生效之后，状态就会显示 <code>活动</code></p>
<p><img src="/file/img/remote/2026/07/31/5f351ab9-afee-4b70-b956-7fc2520a0618.png" alt="image-20251109144858244" loading="lazy" decoding="async"/></p>
<h3 id="2-2-使用工具批量解析域名">2.2、使用工具批量解析域名</h3>
<p>这个我单独写了一篇笔记，请查看  <a href="https://seo.ga/p/post/12" target="_blank" rel="nofollow ugc noopener noreferrer">👉 Cloudflare批量添加域名+批量解析域名</a></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/13</guid>
      <pubDate>Fri, 31 Jul 2026 19:24:54 +0700</pubDate>
    </item>
    <item>
      <title>Cloudflare批量添加域名+批量解析域名</title>
      <link>https://seo.ga/p/post/12</link>
      <description>Cloudflare批量添加域名+批量解析域名 介于前期使用Cloudflare上线大量站群，导致Cloudflare账户被禁用，Cloudflare官方发邮件要求我必须开通企业账户，一个企业账户一年1万多美元的费用；因此，大家在后续使用Cloudflare账户解析域名时，尽量保持每个账户内的域名数量小于500个。当你的Cloudflare账户的域名数量快到达500个时，请注册新的Cloudfla...</description>
      <content:encoded><![CDATA[<h2 id="cloudflare批量添加域名-批量解析域名">Cloudflare批量添加域名+批量解析域名</h2>
<p>介于前期使用Cloudflare上线大量站群，导致Cloudflare账户被禁用，Cloudflare官方发邮件要求我必须开通企业账户，一个企业账户一年1万多美元的费用；因此，大家在后续使用Cloudflare账户解析域名时，尽量保持每个账户内的域名数量小于500个。当你的Cloudflare账户的域名数量快到达500个时，请注册新的Cloudflare账户，用于后续站群的域名解析！！！</p>
<ul>
<li>1、解压域名解析工具Cloudflare批量解析2026工具，可以按照下面的格式命名，方便区分多个Cloudflare账户分开解析域名；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/a33eb409-6511-4e5e-9ace-20a966649f38.png" alt="image-20251110151248050" loading="lazy" decoding="async"/></p>
<ul>
<li>2、首先需要设置软件的api接口参数，使用Notepad++ 打开 工具目录下的 config.ini 文件，如下图：</li>
</ul>
<p>api_key= 后面填写自己Cloudflare账户的Globe API Key 【详细的操作方法可以从这篇笔记中查看 👉 <a href="https://seo.ga/p/post/13" target="_blank" rel="nofollow ugc noopener noreferrer">https://seo.ga/p/post/13</a> 】</p>
<p>api_email= 后面填写自己Cloudflare账户的登录邮箱；</p>
<p>下面的解析项目，一般wordpress网站，我们解析 www 和 at</p>
<p>像侠客镜像程序要求解析 www、at、m、wap 这4个二级域名；</p>
<p>泛站群，我们是做的9个二级域名、泛内页站群，所以我们在做泛站群域名解析的时候，是增加了9条解析记录，<code>www,m,@,cn,pc,h5,wap,app,bit</code> 【如果是泛二级域名站群，一般是解析 at 和 star 两项】</p>
<p><img src="/file/img/remote/2026/07/31/c8afea14-c45f-4e80-87b1-f89fd186426c.png" alt="泛站群，我们是做的9个二级域名" loading="lazy" decoding="async"/></p>
<p>MYY CMS站群，我们需要增加 <code>www,@,m</code> 三条解析记录；</p>
<p>小偷镜像站群，我们需要增加 <code>www,m,@,h5,wap</code> 五条解析记录，上站的时候，我们是把 <code>www</code> 和 <code>@</code> 配置在一个网站里面，剩下的三条记录分别上线3个站点，所以小偷镜像站群是每个域名上线4个镜像站点；</p>
<p>需要解析的项目，将等号后面的数字修改为1，不需要解析的项目，把等号后面的数字修改为0</p>
<p><img src="/file/img/remote/2026/07/31/51b2337a-38d6-4b04-b3d0-ae2ea8315469.png" alt="image-20251110152218030" loading="lazy" decoding="async"/></p>
<ul>
<li>3、从站群管理报表中找到 <code>主站解析值</code> 复制需要解析的域名记录 【公式是：域名,解析IP】</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/f74c211a-7040-488a-b322-e39fe8f080df.png" alt="image-20251110152403337" loading="lazy" decoding="async"/></p>
<p>将域名解析记录复制到 Cloudflare批量解析工具目录下 <code>解析_A记录_ip.txt</code> 文件中，一行一条记录；</p>
<p><img src="/file/img/remote/2026/07/31/21e388c4-6f42-4bb9-befe-975011e4e18b.png" alt="image-20251110152312795" loading="lazy" decoding="async"/></p>
<ul>
<li>4、使用 管理员身份 运行 <code>cfapi.exe</code> 主文件，打开解析的软件窗口，点击 <code>导入数据</code> ，选择上一步保存的文件，然后点击 <code>添加域名</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/29f4b829-190f-40cb-98fb-954b6140714a.png" alt="image-20251110152542327" loading="lazy" decoding="async"/></p>
<ul>
<li>5、Cloudflare账户有一个规则：账户下<strong>激活的域名数量</strong>需要大于<strong>未激活的域名数量</strong>，第一次批量添加域名时最多只能添加50，如下图：</li>
</ul>
<p>前50个域名 <code>操作提示</code> 显示是OK</p>
<p><img src="/file/img/remote/2026/07/31/e6a9c814-81bb-43e8-bc2c-2a6953354df5.png" alt="image-20251110152949161" loading="lazy" decoding="async"/></p>
<p>剩下的域名全部失败有报错信息：</p>
<p><img src="/file/img/remote/2026/07/31/6a23dd1e-d11a-457e-9ccc-44da5d3203e4.png" alt="image-20251110154027443" loading="lazy" decoding="async"/></p>
<ul>
<li>6、我们需要先将前面添加的50个域名，修改好名称服务器，保证域名状态是激活的状态，才能继续添加域名；第二次也只能添加50个域名，等这一组50个域名激活成功之后，从第三次和之后，可以每次添加100个域名，多于100个域名时，软件每次添加完100个域名之后会停下等待，Cloudflare官网设定每个小时最多添加100个域名；</li>
</ul>
<p>关于 Cosmotown平台的域名批量修改域名名称服务器的方法请查看这篇文章 <a href="https://seo.ga/p/post/11" target="_blank" rel="nofollow ugc noopener noreferrer">👉 域名服务商 www.cosmotown.com 批量解析域名教程</a></p>
<p>按照上面的笔记修改好域名名称服务器地址之后，查看Cloudflare账户里面的域名状态为 活动 之后，我们可以继续操作；</p>
<p>先点击 <code>导出失败</code> 把前面添加失败的域名解析记录导出，可以命令添加一个日期，然后再导入到批量解析工具中，再点击 <code>添加域名</code></p>
<p><img src="/file/img/remote/2026/07/31/6fcb4523-96f4-48d0-9f8d-0defd329ac07.png" alt="image-20251110160230154" loading="lazy" decoding="async"/></p>
<ul>
<li>7、当域名的状态都为 <code>活动</code> 之后我们就可以去继续建站了。</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/0511066d-f8d4-426d-badb-69dfa2a998f1.png" alt="image-20251110160501095" loading="lazy" decoding="async"/></p>
<h3 id="cloudflare批量工具下载链接"><a href="#">Cloudflare批量工具下载链接</a></h3>
]]></content:encoded>
      <guid>https://seo.ga/p/post/12</guid>
      <pubDate>Fri, 31 Jul 2026 14:54:07 +0700</pubDate>
    </item>
    <item>
      <title>彩虹DNS工具安装配置及使用教程</title>
      <link>https://seo.ga/p/post/14</link>
      <description>彩虹DNS工具安装配置及使用教程 一、彩虹DNS工具功能说明 彩虹聚合DNS管理系统（https://github.com/netcccyun/dnsmgr） 是一款基于ThinkPHP开发的网站程序，可实现在单一网站内管理多个平台的域名解析，目前已支持的域名解析平台有：阿里云、腾讯云、华为云、百度云、西部数码、火山引擎、DNSLA、CloudFlare、Namesilo、PowerDNS。 功能...</description>
      <content:encoded><![CDATA[<h2 id="彩虹dns工具安装配置及使用教程">彩虹DNS工具安装配置及使用教程</h2>
<h2 id="一-彩虹dns工具功能说明">一、彩虹DNS工具功能说明</h2>
<p>彩虹聚合DNS管理系统（https://github.com/netcccyun/dnsmgr） 是一款基于ThinkPHP开发的网站程序，可实现在单一网站内管理多个平台的域名解析，目前已支持的域名解析平台有：阿里云、腾讯云、华为云、百度云、西部数码、火山引擎、DNSLA、CloudFlare、Namesilo、PowerDNS。</p>
<p>功能特性：</p>
<p>- 多用户管理，可为每个用户可分配不同的域名解析权限；</p>
<p>- 提供API接口，可获取域名单独的登录链接，方便各种IDC系统对接；</p>
<p>- 容灾切换功能，支持ping、tcp、http(s)检测协议并自动暂停/修改域名解析，并支持发送通知；</p>
<p>- 定时切换功能，设置在指定时间/周期，自动修改/开启/暂停/删除域名解析；</p>
<p>- CF优选IP功能，支持获取最新的Cloudflare优选IP，并自动更新到解析记录；</p>
<p>- SSL证书申请与自动部署功能，支持从Let’s Encrypt等渠道申请SSL证书，并自动部署到各种面板、云服务商、服务器等；</p>
<p>- 支持邮件、微信公众号、Telegram、钉钉、飞书、企业微信等多种通知渠道。</p>
<p><strong>演示截图</strong></p>
<p>添加域名账户</p>
<p><img src="/file/img/remote/2026/07/31/717a06ab-4053-4f8a-8609-a1490a692cc7.png" alt="添加域名账户" loading="lazy" decoding="async"/></p>
<p>域名管理列表</p>
<p><img src="/file/img/remote/2026/07/31/ff94bda5-49d4-4fc8-8b0e-1118491cae12.png" alt="域名管理列表" loading="lazy" decoding="async"/></p>
<p>域名DNS解析管理，支持批量操作</p>
<p><img src="/file/img/remote/2026/07/31/b9539fb0-cac7-49cc-9541-4cce90a32202.png" alt="域名DNS解析管理，支持批量操作" loading="lazy" decoding="async"/></p>
<p>用户管理添加用户，支持为用户开启API接口</p>
<p><img src="/file/img/remote/2026/07/31/ee558c30-cc2d-40fe-9f5a-e40eb7ac56eb.png" alt="用户管理添加用户，支持为用户开启API接口" loading="lazy" decoding="async"/></p>
<p>CF优选IP功能，添加优选IP任务</p>
<p><img src="/file/img/remote/2026/07/31/e8de5e2c-8826-481d-a50b-58801edd8a73.png" alt="CF优选IP功能，添加优选IP任务" loading="lazy" decoding="async"/></p>
<p>SSL证书申请功能</p>
<p><img src="/file/img/remote/2026/07/31/f44beb55-665c-44b6-8491-7b737a9cd976.png" alt="SSL证书申请功能" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/3f098b44-b904-460a-9cd5-72e255c53932.png" alt="SSL证书申请功能" loading="lazy" decoding="async"/></p>
<p>SSL证书自动部署功能</p>
<p><img src="/file/img/remote/2026/07/31/402fc923-eb88-4b2a-a400-ba5badbffd94.png" alt="SSL证书自动部署功能" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/8457c6dc-7346-454c-b2fa-4aac0b59fea2.png" alt="SSL证书自动部署功能" loading="lazy" decoding="async"/></p>
<p>简单总结：</p>
<p>这个彩虹DNS工具可以批量管理cloudflare等平台的域名批量解析、包括修改解析、删除解析、增加解析等；</p>
<p>可以配合这个工具合作 <a href="https://seo.ga/p/post/12" target="_blank" rel="nofollow ugc noopener noreferrer">Cloudflare批量添加域名+批量解析域名</a> ，主要弥补这个工具无法批量修改域名解析的问题；</p>
<h2 id="二-彩虹dns工具安装配置说明">二、彩虹DNS工具安装配置说明</h2>
<ul>
<li>1、进入服务器宝塔面板- 点击 <code>网站</code> - <code>添加站点</code> ，网站的配置参数如下：主要是配置使用的域名、根目录是自动生成的、选择数据库 Mysql，PHP可以使用PHP8.2版本；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/0c103cff-fb7d-4f28-8fe0-1acd211109b1.png" alt="进入服务器宝塔面板- 点击 网站 - 添加站点 " loading="lazy" decoding="async"/></p>
<ul>
<li>2、下载最新版本的彩虹dns源码，项目地址 <a href="https://github.com/netcccyun/dnsmgr" target="_blank" rel="nofollow ugc noopener noreferrer">https://github.com/netcccyun/dnsmgr</a></li>
</ul>
<p>目前最新版本是 2.11版本，下载页面 <a href="https://github.com/netcccyun/dnsmgr/releases/tag/2.11.0" target="_blank" rel="nofollow ugc noopener noreferrer">https://github.com/netcccyun/dnsmgr/releases/tag/2.11.0</a></p>
<p><img src="/file/img/remote/2026/07/31/1b2ef711-cad4-48de-bd08-646dae628c3a.png" alt="目前最新版本是 2.11版本，下载页面 https://github.com/netcccyun/dnsmgr/releases/tag/2.11.0" loading="lazy" decoding="async"/></p>
<p>复制上图中彩虹dns工具源码包的下载链接，进入宝塔面板，进行远程下载</p>
<p><img src="/file/img/remote/2026/07/31/450b4349-4e17-4678-89d2-c6f9a4cd0c27.png" alt="复制上图中彩虹dns工具源码包的下载链接，进入宝塔面板，进行远程下载 " loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/391a713c-47c0-42a4-a15b-080a8f4fe052.png" alt="复制上图中彩虹dns工具源码包的下载链接，进入宝塔面板，进行远程下载 " loading="lazy" decoding="async"/></p>
<p>解压源码包之后，记得删除下载的源码包文件；</p>
<p><img src="/file/img/remote/2026/07/31/0b343864-0dff-42a9-b582-a3c48a9ed6ec.png" alt="image-20251129140204573" loading="lazy" decoding="async"/></p>
<ul>
<li>
<p>3、调整网站的配置，主要有2个位置需要调整</p>
<ul>
<li>3.1、修改项目的运行目录为 <code>/public</code> ，进入宝塔面板-<code>网站</code>-点击对应的站点-<code>网站目录</code> 如下图，点击 <code>运行目录</code> 后面的下拉菜单，选择 <code>/public</code> 然后 <code>保存</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/aa1ae6bb-4b18-4002-a79c-141a94ab06bb.png" alt="image-20251129140416825" loading="lazy" decoding="async"/></p>
<ul>
<li>3.2、设置项目的<code>伪静态</code>代码，进入 <code>伪静态</code>——点击 <code>当前</code> 下拉菜单，找到 <code>thinkphp</code> ，然后保存</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/38aceed3-c902-4937-839b-6bb379367c87.png" alt="image-20251129140620711" loading="lazy" decoding="async"/></p>
</li>
<li>
<p>4、配置好这些之后，可以解析域名、打开网站首页，自动进入安装界面；</p>
</li>
</ul>
<p>安装配置很简单，主要配置数据库信息，以及后台登录的用户名和密码信息；</p>
<p><img src="/file/img/remote/2026/07/31/3178971d-9854-4101-9048-260c1e981b7f.png" alt="image-20251129141226701" loading="lazy" decoding="async"/></p>
<ul>
<li>5、安装成功之后，会看到以下提示信息</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/9eebcc1f-caab-4af2-9270-0ed2f70e7c21.png" alt="image-20251129141330333" loading="lazy" decoding="async"/></p>
<ul>
<li>6、重新打开网站首页，会自动进入后台登录界面；</li>
</ul>
<h2 id="三-彩虹dns工具使用说明">三、彩虹DNS工具使用说明</h2>
<h3 id="1-关于添加cloudflare账户到彩虹dns工具中">1、关于添加cloudflare账户到彩虹dns工具中；</h3>
<ul>
<li>1、登录彩虹dns工具后台，先添加<code>域名账户</code>，登录 彩虹dns后台，点击左侧菜单 <code>域名账户</code> — 右侧页面点击 <code>添加</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/d0b41db6-aa45-460f-9054-ea27086a7642.png" alt="image-20251129141522449" loading="lazy" decoding="async"/></p>
<ul>
<li>2、配置详情如下：重点配置 所属平台 ，我们多数是使用的Cloudflare，邮箱地址和备注 我们都填写对应的Cloudflare注册邮箱，API密钥，建议使用自定义的DNS apikey，具体获得cloudflare apikey的方法可以参考这篇笔记 <strong><a href="https://seo.ga/p/post/13" target="_blank" rel="nofollow ugc noopener noreferrer">域名解析平台www.cloudflare.com注册配置教程</a></strong></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/ecb9d565-b5cf-47c0-96ca-3324440ab70d.png" alt="image-20251129141828833" loading="lazy" decoding="async"/></p>
<h3 id="2-批量添加cloudflare账户中的域名到彩虹dns工具中">2、批量添加Cloudflare账户中的域名到彩虹dns工具中；</h3>
<ul>
<li>3、批量添加域名，进入左侧菜单 <code>域名管理</code> ，在右侧点击 <code>批量操作</code> 在下拉子菜单中选择 <code>添加域名</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/f482950d-91e7-4f6f-84ed-cb3435fb92db.png" alt="image-20251129142129402" loading="lazy" decoding="async"/></p>
<ul>
<li>
<p>4、我们在 <code>域名账户</code> 中选择刚刚添加的账户，点击右侧的 <code>获取域名</code> ，程序会自动从我们的cloudflare账户获取账户下的域名，当域名获取完成之后，我们点击页面上 <code>选择域名</code> 后面的多选框，选择全部域名，点击页面底部的 <code>确定添加</code> 将Cloudflare账户中的域名全部添加到我们的彩虹dns工具中；</p>
<p>如果后续这个账户中有新增加一些域名，我们可以再来执行一遍这个流程，将新的域名全选添加到彩虹dns工具中；</p>
</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/ac98639b-e88a-4f90-a3a8-2b3969d37c74.png" alt="image-20251129142315346" loading="lazy" decoding="async"/></p>
<ul>
<li>5、重新进入 <code>域名管理</code> 就可以看到我们刚刚添加到彩虹dns工具中的域名了；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/263c880a-8508-4dc7-9eda-48c117247bfb.png" alt="image-20251129142758119" loading="lazy" decoding="async"/></p>
<h3 id="3-批量修改-删除-添加域名解析">3、批量修改、删除、添加域名解析</h3>
<ul>
<li>6、这套系统有一个问题，就是不能批量搜索域名，默认的搜索功能只能单独搜索域名；目前我是使用比较笨的办法，在页面上使用Ctrl+F5查找的方式，把需要批量修改的域名都勾选了，批量添加上相同的域名备注，下次就可以搜索域名备注批量修改一组域名；</li>
</ul>
<p>进入 <code>域名管理</code> 可以在底部设置每页显示的域名数量，最多可以设置每页显示100个域名，但是我们很多时候域名是多于100个的，为了方便在一个页面上查找所有的域名，我们可以在URL中将 <code>pageSize</code> 参数的值设置为1000个（只要大于你账户总的域名数量即可），就可以在一个页面展示所有域名；</p>
<p><img src="/file/img/remote/2026/07/31/8e26933f-56d0-42e5-aa4f-636aab9c3cb7.png" alt="image-20251129211032081" loading="lazy" decoding="async"/></p>
<p>然后就可以在这个页面使用 Ctrl+F 打开浏览器上的查找窗口，搜索我们需要修改解析的域名；</p>
<p><img src="/file/img/remote/2026/07/31/1f93ede3-72ef-4ccf-9ff3-78a06f6f0b4b.png" alt="image-20251129180713982" loading="lazy" decoding="async"/></p>
<p>选择好需要修改的域名，点击 <code>批量操作</code>—— <code>修改域名备注</code> 修改这一组域名的备注，方便下次可以一次复制出同一组域名；</p>
<p><img src="/file/img/remote/2026/07/31/66a22f7e-f368-41a0-a7ad-54cf0f0304ce.png" alt="image-20251129180814247" loading="lazy" decoding="async"/></p>
<p>域名备注可以使用 服务器编号+日期+备用参数，像下图标注：</p>
<p><code>121NLinFz-1129-103To121</code> 表示 当前服务器编号是 <code>121NLinFz</code>，11月29日操作的站点，从103号服务器转移到121服务器；</p>
<p><img src="/file/img/remote/2026/07/31/1a70ab06-1066-4d71-8861-9b30917b4036.png" alt="image-20251129204640510" loading="lazy" decoding="async"/></p>
<p>下次如果需要修改这组域名的解析、或者是添加解析，就可以搜索这个域名备注信息，就可以同添加同一个备注的域名全部搜索出来</p>
<p><img src="/file/img/remote/2026/07/31/0603b7b5-03d9-4695-a7c7-965a34160b40.png" alt="image-20251129204937860" loading="lazy" decoding="async"/></p>
<p><code>批量操作</code> 中可以批量 <code>添加解析</code> 或者 <code>修改解析</code></p>
<p><img src="/file/img/remote/2026/07/31/b6efe8b4-a005-42d0-a83b-b97aef266a0b.png" alt="image-20251129205044620" loading="lazy" decoding="async"/></p>
<p>批量 <code>修改解析</code> 弹出的窗口如下：设置好主机记录、以及对应的记录值即可；</p>
<p>单站常用的主机记录有：@ www m wap</p>
<p>泛内页站群常用的主机记录有：@ www m wap h5 pc bit cn app</p>
<p>泛二级域名站群常用的主机记录有：@ *</p>
<p>记录值：就是服务器的ip</p>
<p>TTL：一般使用默认，或者600，这个600表示600秒，即10分钟dns缓存；</p>
<p><img src="/file/img/remote/2026/07/31/51984c92-6a2b-43a1-ab88-3dd1835e77ce.png" alt="image-20251129205308695" loading="lazy" decoding="async"/></p>
<p>这是批量 <code>添加解析</code> 的操作方法：如下图</p>
<p>主机记录&amp;记录值：填写二级域名名称+空格+解析ip，如： www 121.23.34.126  一条记录一行；</p>
<p>记录类型：选择 A</p>
<p>开启反代：选择 是 这个是开启cloudflare的cdn功能，主要是隐藏服务器的真实ip，ping的时候无法直接检测到域名真实解析ip；</p>
<p>TTL：使用默认的 600</p>
<p>配置好之后，点击 <code>确定添加</code> 工具会为每个域名都添加上面设置的解析记录；</p>
<p><img src="/file/img/remote/2026/07/31/886b96e4-4d73-42ac-93dd-215beb0fde11.png" alt="image-20251129210038850" loading="lazy" decoding="async"/></p>
<p>批量添加解析配置格式：</p>
<pre><code class="language-html">www 204.12.217.18
@ 204.12.217.18
wap 204.12.217.18
m 204.12.217.18
h5 204.12.217.18
cn 204.12.217.18
app 204.12.217.18
pc 204.12.217.18
bit 204.12.217.18
</code></pre>
<h3 id="补充说明">补充说明：</h3>
<p>刚刚批量操作了一批域名发现，无法批量删除域名的解析记录，只能批量删除域名，如果要删除域名的记录，只能打开域名，单独删除、修改、或者为某个域名批量增加解析</p>
<p><img src="/file/img/remote/2026/07/31/5f8da7c9-9d24-43c6-a62c-3468eddda4eb.png" alt="image-20251129214730308" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/14</guid>
      <pubDate>Fri, 31 Jul 2026 19:26:57 +0700</pubDate>
    </item>
    <item>
      <title>域名服务商 www.cosmotown.com 批量注册域名教程</title>
      <link>https://seo.ga/p/post/11</link>
      <description>域名服务商 www.cosmotown.com 批量注册域名教程 最近通过Google搜索才发这个平台 www.cosmotown.com 有批量注册域名的功能，如果注册域名少的话，可以直接参考 域名服务商 www.cosmotown.com 注册配置说明 这篇笔记说明，如果需要注册的域名比较多，就可以使用本篇讲的批量注册功能； 开始之前：请确保账户有足够的信用额度 请确保您的 Cosmotown...</description>
      <content:encoded><![CDATA[<h2 id="域名服务商-www-cosmotown-com-www-cosmotown-com-批量注册域名教程">域名服务商 <a href="www.cosmotown.com">www.cosmotown.com</a> 批量注册域名教程</h2>
<p>最近通过Google搜索才发这个平台 <a href="www.cosmotown.com">www.cosmotown.com</a> 有批量注册域名的功能，如果注册域名少的话，可以直接参考 <a href="https://seo.ga/p/post/3" target="_blank" rel="nofollow ugc noopener noreferrer">https://seo.ga/p/post/3</a> 域名服务商 <a href="www.cosmotown.com">www.cosmotown.com</a> 注册配置说明 这篇笔记说明，如果需要注册的域名比较多，就可以使用本篇讲的批量注册功能；</p>
<p>开始之前：请确保账户有足够的信用额度</p>
<p>请确保您的 Cosmotown 账户内有足够的余额。请注意，我们目前不支持通过 PayPal 或信用卡进行批量注册付款。</p>
<ul>
<li>
<ol>
<li>登录您的 Cosmotown 账户。</li>
</ol>
</li>
<li>
<ol start="2">
<li>在 <code>Main Menu</code> 下，有 <code>Bulk Registration</code> 选项。</li>
</ol>
</li>
</ul>
<p>在 <code>Domains list</code> 中填写自己需要购买 的域名，如果要购买的域名很多，也可以使用上传 .csv 文件的方式，批量查询 域名</p>
<p><img src="/file/img/remote/2026/07/31/6daee6bf-7a26-4f71-afe1-1ed5bf0030cf.png" alt="在 " loading="lazy" decoding="async"/></p>
<ul>
<li>
<ol start="3">
<li>上一步查询完成后，在页面右侧会显示可以注册的域名，下面会显示你账户的余额，以及本次订单需要的金额，点击底下的 <code>Register</code> 就可以开始注册了 。</li>
</ol>
</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/c395b67e-5731-42f9-8827-a8ca2eee865d.png" alt="点击底下的 " loading="lazy" decoding="async"/></p>
<ul>
<li>
<ol start="4">
<li>点击注册之后，会有一个小弹窗提醒，直接点击 确定 即可；</li>
</ol>
</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/93a429f3-bf2c-45a1-9af4-3e32095ad6f8.png" alt="点击注册之后，会有一个小弹窗提醒，直接点击 确定 即可" loading="lazy" decoding="async"/></p>
<ul>
<li>5、确认之后，就会进入域名状态的列表，域名进行等待注册列表，状态会显示 <code>PENDING</code>，当域名注册成功之后就会显示 <code>COMPLETE</code></li>
</ul>
]]></content:encoded>
      <guid>https://seo.ga/p/post/11</guid>
      <pubDate>Fri, 31 Jul 2026 14:49:53 +0700</pubDate>
    </item>
    <item>
      <title>域名服务商 www.spaceship.com 注册配置说明</title>
      <link>https://seo.ga/p/post/10</link>
      <description>域名服务商 www.spaceship.com 注册配置说明 1、打开网站首页 点击右侧的头像进入登录、注册弹窗页面 2、点击 Sign Up 进入注册页面 3、填写注册信息，包括姓、名、邮箱、登录用户名 【我们去Google搜索 美国身份生成器 随机打开一个网站，上面可以生成美国人的联系资料，可以点击 刷新数据 每次生成不同的数据，生成完之后，复制相关信息去网站里面填写联系信息】 4、选择密码验...</description>
      <content:encoded><![CDATA[<h2 id="域名服务商-www-spaceship-com-www-spaceship-com-注册配置说明">域名服务商 <a href="www.spaceship.com">www.spaceship.com</a> 注册配置说明</h2>
<ul>
<li>1、打开网站首页 点击右侧的头像进入登录、注册弹窗页面</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/dd58f2c9-4989-4b35-8518-a4dcf4338639.png" alt="image-20251106095440730" loading="lazy" decoding="async"/></p>
<ul>
<li>2、点击 <code>Sign Up</code> 进入注册页面</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/acb8b409-fa8a-4686-ab47-2d37d65be462.png" alt="image-20251106095510483" loading="lazy" decoding="async"/></p>
<ul>
<li>3、填写注册信息，包括姓、名、邮箱、登录用户名 【我们去Google搜索 <code>美国身份生成器</code> 随机打开一个网站，上面可以生成美国人的联系资料，可以点击 <code>刷新数据</code> 每次生成不同的数据，生成完之后，复制相关信息去网站里面填写联系信息】</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/fbf2c709-84cd-470e-8ce8-9f6aa903b697.png" alt="image-20251106095719537" loading="lazy" decoding="async"/></p>
<ul>
<li>4、选择密码验证，填写密码、勾选人机验证，点击注册</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/a61e25ea-0c2b-43f7-93b4-3168bfd4280d.png" alt="image-20251106095829629" loading="lazy" decoding="async"/></p>
<ul>
<li>
<p>5、填写注册邮箱收到的激活码</p>
</li>
<li>
<p><img src="/file/img/remote/2026/07/31/70bb7e42-e209-43af-a642-b54acd9614d4.png" alt="image-20251106100112942" loading="lazy" decoding="async"/></p>
</li>
<li>
<p>6、验证成功之后就可以进入用户中心了</p>
</li>
</ul>
]]></content:encoded>
      <guid>https://seo.ga/p/post/10</guid>
      <pubDate>Fri, 31 Jul 2026 14:46:38 +0700</pubDate>
    </item>
    <item>
      <title>利用Windows工具机安装Python环境执行批量任务脚本的教程</title>
      <link>https://seo.ga/p/post/9</link>
      <description>利用Windows工具机安装Python环境执行批量任务脚本的教程 做SEO经常需要使用批量脚本，执行一些批量的任务，特别是操作站群seo的人员，多站群、经常需要操作相同步骤的任务，这种需求可以很好的利用Python脚本来解决，下面记录一下详细的Python脚本环境安装、配置教程 一、Windows服务器环境及Python安装说明 1、windows服务器环境说明 这是一台安装windows 20...</description>
      <content:encoded><![CDATA[<h2 id="利用windows工具机安装python环境执行批量任务脚本的教程">利用Windows工具机安装Python环境执行批量任务脚本的教程</h2>
<p>做SEO经常需要使用批量脚本，执行一些批量的任务，特别是操作站群seo的人员，多站群、经常需要操作相同步骤的任务，这种需求可以很好的利用Python脚本来解决，下面记录一下详细的Python脚本环境安装、配置教程</p>
<h2 id="一-windows服务器环境及python安装说明">一、Windows服务器环境及Python安装说明</h2>
<ul>
<li>1、windows服务器环境说明</li>
</ul>
<p>这是一台安装windows 2022系统的服务器</p>
<p><img src="/file/img/remote/2026/07/31/f5fd2989-1cd3-4305-99cb-22800dfe67d5.png" alt="windows服务器环境说明" loading="lazy" decoding="async"/></p>
<p>基于这个环境，通过Chatgpt判断推荐安装Python 3.12 或者 Python 3.13版本 【另外一台Windows 2025系统服务器，Chatgpt推荐安装 3.14版本的Python】</p>
<p><img src="/file/img/remote/2026/07/31/ab441df1-f1e5-4631-a749-c49ce93e91e1.png" alt="Chatgpt判断推荐安装Python 3.12 或者 Python 3.13版本" loading="lazy" decoding="async"/></p>
<p>下载地址： <a href="https://www.python.org/downloads/windows/" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.python.org/downloads/windows/</a></p>
<p>选择：</p>
<p> Windows installer (64-bit)</p>
<ul>
<li>2、Python环境安装说明</li>
</ul>
<p>按照前一步说明下载对应版本的Python安装文件，然后进行安装</p>
<p>安装时一定勾选：</p>
<p> Add python.exe to PATH</p>
<p>然后选择：</p>
<p> Customize installation</p>
<p>建议安装路径：</p>
<p> C:\Python312\</p>
<p>或者：</p>
<p> C:\Python313\</p>
<p>安装完成后，重新打开 PowerShell，测试：</p>
<p> python –version<br/>
 python -m pip –version</p>
<p>如果正常，会显示类似：</p>
<p> Python 3.12.x<br/>
 pip xx.x</p>
<p><img src="/file/img/remote/2026/07/31/ec5b6ce3-e632-4014-abbf-722089302e3d.png" alt="下载对应版本的Python安装文件，然后进行安装" loading="lazy" decoding="async"/></p>
<ul>
<li>
<p>3、创建 Python 虚拟环境</p>
<p>进入项目目录：</p>
<p> cd C:\tools\chrome-appeal</p>
<p>创建虚拟环境：</p>
<p> python -m venv venv</p>
<p>激活虚拟环境：</p>
<p> .\venv\Scripts\activate</p>
<p>看到前面出现：</p>
<p> (venv)</p>
<p>说明虚拟环境已启用。</p>
<p>升级 pip：</p>
<p> python -m pip install --upgrade pip</p>
<p>安装脚本需要的依赖：</p>
<p> python -m pip install pyautogui pyperclip pillow opencv-python</p>
<p>如果你的脚本还用到表格文件，可以再装：</p>
<p> python -m pip install pandas openpyxl</p>
<p>检查依赖：</p>
<p> python -m pip list</p>
</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/49b038d5-7f2c-4121-aab6-8f44db408b6e.png" alt="创建 Python 虚拟环境" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/9</guid>
      <pubDate>Fri, 31 Jul 2026 14:43:34 +0700</pubDate>
    </item>
    <item>
      <title>MYYCMS站群数据库管理笔记 Debian 12 服务器 Redis 数据库文件查找、确认、备份与迁移教程</title>
      <link>https://seo.ga/p/post/8</link>
      <description>MYYCMS站群数据库管理笔记 Debian 12 服务器 Redis 数据库文件查找、确认、备份与迁移教程 目前MYYCMS站群排名效果非常不错，MYYCMS站群标记 &lt;!-- https://github.com/program-myyjjpp --&gt; ，本站最近有记录一些MYYCMS站群排名的案例，确实非常不错。MYYCMS站群使用PHP环境，利用Mysql配合Redis数据库，网站访问速度...</description>
      <content:encoded><![CDATA[<h1 id="myycms站群数据库管理笔记-debian-12-服务器-redis-数据库文件查找-确认-备份与迁移教程">MYYCMS站群数据库管理笔记 Debian 12 服务器 Redis 数据库文件查找、确认、备份与迁移教程</h1>
<p>目前MYYCMS站群排名效果非常不错，MYYCMS站群标记 <code>&lt;!-- https://github.com/program-myyjjpp --&gt;</code> ，本站最近有记录一些MYYCMS站群排名的案例，确实非常不错。MYYCMS站群使用PHP环境，利用Mysql配合Redis数据库，网站访问速度非常快，一台服务器可以平稳运行2500个站点左右。目前在管理MYYCMS站群的过程中，有遇到服务器硬盘出现故障的，今天记录一下MYYCMS站群服务器出现故障，怎么查找 Redis数据库文件，并转移到新的服务器上恢复数据，MYYCMS站群服务器运行环境说明：</p>
<p> Debian 12<br/>
 Nginx 1.30<br/>
 PHP 8.2<br/>
 MySQL 8.0<br/>
 宝塔面板 V11.7<br/>
 Redis 7.4.7<br/>
 Redis 数据主要在 DB1</p>
<p>本教程重点解决三个问题：</p>
<ol>
<li>
<p>Redis 的 DB1 数据有没有对应的服务器文件？</p>
</li>
<li>
<p>Redis 的数据文件具体存放在哪里？</p>
</li>
<li>
<p>老服务器 Redis 数据如何迁移到新服务器？</p>
</li>
</ol>
<p><img src="/file/img/remote/2026/07/31/c707cf22-e6d7-4ab2-8f3d-445d6dce3e1e.png" alt="MYYCMS站群数据库管理笔记 Debian 12 服务器 Redis 数据库文件查找、确认、备份与迁移教程" loading="lazy" decoding="async"/></p>
<h2 id="一-先理解-redis-的数据文件机制">一、先理解 Redis 的数据文件机制</h2>
<p>Redis 数据默认存放在内存中。如果开启了持久化，Redis 会把内存数据保存到磁盘文件里。Redis 官方文档说明，Redis 主要有两种持久化方式：RDB 快照和 AOF 追加日志。RDB 会把某个时间点的数据集保存成快照文件，默认文件名通常是 <code>dump.rdb</code>；AOF 则会记录写操作日志，用于重放恢复数据。</p>
<p>常见持久化文件如下：</p>
<p>类型</p>
<p>常见文件/目录</p>
<p>说明</p>
<p>RDB</p>
<p><code>dump.rdb</code></p>
<p>Redis 数据快照文件</p>
<p>AOF</p>
<p><code>appendonly.aof</code> 或 <code>appendonlydir/</code></p>
<p>Redis 写操作追加日志</p>
<p>配置文件</p>
<p><code>redis.conf</code></p>
<p>Redis 配置文件</p>
<p>在本次服务器中，宝塔 Redis 面板显示：</p>
<p> AOF appendonly：关闭<br/>
 RDB 持久化：开启<br/>
 持久化文件存储路径：/www/server/redis/</p>
<p>所以当前主要关注的是：</p>
<p> /www/server/redis/dump.rdb</p>
<p>MYYCMS站群 使用的Redis数据库默认 持久化配置</p>
<p><img src="/file/img/remote/2026/07/31/99f6a0e1-2fd2-47a7-81fa-310682b9884e.png" alt="MYYCMS站群 使用的Redis数据库默认 持久化配置" loading="lazy" decoding="async"/></p>
<h2 id="二-redis-db1-会不会单独生成一个文件">二、Redis DB1 会不会单独生成一个文件？</h2>
<p>不会。</p>
<p>Redis 的 DB0、DB1、DB2 等是逻辑数据库，不是独立文件。即使数据主要保存在 DB1，Redis 也不会生成：</p>
<p> db1.rdb<br/>
 redis_db1.rdb<br/>
 dump_db1.rdb</p>
<p>而是把整个 Redis 实例里的所有逻辑库一起保存到同一个 RDB 或 AOF 持久化文件中。</p>
<p>也就是说，如果 DB1 数据已经落盘，它会和 DB0、DB2 等一起保存在：</p>
<p> /www/server/redis/dump.rdb</p>
<p>本次服务器实际检查结果中，<code>/www/server/redis/</code> 目录下确实存在：</p>
<p> dump.rdb</p>
<p>文件大小约：</p>
<p> 1.29 GB</p>
<p>修改时间：</p>
<p> 2026-05-25 12:11:35</p>
<p>这说明 Redis 已经生成过 RDB 快照文件，并且数据量较大。</p>
<hr/>
<h2 id="三-如何确认-redis-数据文件的真实路径">三、如何确认 Redis 数据文件的真实路径？</h2>
<p>不要只看宝塔面板，也不要只凭目录猜。最准确的方法是通过 Redis 当前运行配置确认。</p>
<h3 id="1-查看-redis-数据目录和-rdb-文件名">1. 查看 Redis 数据目录和 RDB 文件名</h3>
<p>执行：</p>
<p>redis-cli CONFIG GET dir
redis-cli CONFIG GET dbfilename</p>
<p>如果 Redis 设置了密码：</p>
<p>redis-cli -a ‘你的Redis密码’ CONFIG GET dir
redis-cli -a ‘你的Redis密码’ CONFIG GET dbfilename</p>
<p>Redis 官方文档说明，<code>CONFIG GET</code> 用于读取当前 Redis 服务器的运行配置参数。(<a href="https://redis.io/docs/latest/commands/config-get/?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">Redis</a>)</p>
<p>如果返回类似：</p>
<p>dir
/www/server/redis</p>
<p>dbfilename
dump.rdb</p>
<p>那么 Redis RDB 文件路径就是：</p>
<p>/www/server/redis/dump.rdb</p>
<p>计算规则很简单：</p>
<p>RDB完整路径 = dir + “/” + dbfilename</p>
<hr/>
<h3 id="2-查看-aof-是否开启">2. 查看 AOF 是否开启</h3>
<p>执行：</p>
<p>redis-cli CONFIG GET appendonly
redis-cli CONFIG GET appendfilename
redis-cli CONFIG GET appenddirname</p>
<p>如果返回：</p>
<p>appendonly
no</p>
<p>说明 AOF 没有开启。</p>
<p>如果返回：</p>
<p>appendonly
yes</p>
<p>则说明 AOF 开启，需要继续确认 AOF 文件或目录。Redis 官方说明，RDB 和 AOF 可以同时开启；如果 AOF 开启，启动恢复时通常会优先使用更高持久性保障的 AOF 数据。(<a href="https://raw.githubusercontent.com/redis/redis/6.0/redis.conf?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">GitHub</a>)</p>
<hr/>
<h3 id="3-一条命令查看核心配置">3. 一条命令查看核心配置</h3>
<p>推荐直接执行：</p>
<p>redis-cli CONFIG GET dir dbfilename appendonly appendfilename appenddirname save</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ CONFIG GET dir dbfilename appendonly appendfilename appenddirname save</p>
<p>重点看：</p>
<p>dir
dbfilename
appendonly
appendfilename
appenddirname
save</p>
<hr/>
<h2 id="四-如何在宝塔文件管理器中确认-redis-文件">四、如何在宝塔文件管理器中确认 Redis 文件？</h2>
<p>在宝塔面板中进入：</p>
<p>/www/server/redis/</p>
<p>重点检查这些文件：</p>
<p>dump.rdb
redis.log
redis.pid
redis.conf
appendonly.aof
appendonlydir/</p>
<p>你这台服务器实际看到的是：</p>
<p>/www/server/redis/dump.rdb</p>
<p>并且文件信息大致为：</p>
<p>文件名：dump.rdb
大小：1.29 GB
权限/所有者：644/redis
修改时间：2026-05-25 12:11:35</p>
<p>所以当前 Redis 的主要数据落盘文件就是：</p>
<p>/www/server/redis/dump.rdb</p>
<hr/>
<h2 id="五-如何确认-db1-是否真的有数据">五、如何确认 DB1 是否真的有数据？</h2>
<h3 id="1-查看-redis-所有逻辑库的数据概况">1. 查看 Redis 所有逻辑库的数据概况</h3>
<p>执行：</p>
<p>redis-cli INFO keyspace</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ INFO keyspace</p>
<p>如果 DB1 有数据，会看到类似：</p>
<p># Keyspace
db1:keys=123456,expires=1000,avg_ttl=xxxx</p>
<p>说明：</p>
<p>字段</p>
<p>含义</p>
<p><code>db1</code></p>
<p>第 1 号逻辑数据库</p>
<p><code>keys</code></p>
<p>key 总数量</p>
<p><code>expires</code></p>
<p>设置了过期时间的 key 数量</p>
<p><code>avg_ttl</code></p>
<p>平均 TTL</p>
<hr/>
<h3 id="2-单独查看-db1-的-key-数量">2. 单独查看 DB1 的 key 数量</h3>
<p>执行：</p>
<p>redis-cli -n 1 DBSIZE</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ -n 1 DBSIZE</p>
<p>如果返回：</p>
<p>(integer) 500000</p>
<p>说明 DB1 里有 500000 个 key。</p>
<hr/>
<h3 id="3-抽样查看-db1-中的-key">3. 抽样查看 DB1 中的 key</h3>
<p>执行：</p>
<p>redis-cli -n 1 SCAN 0 COUNT 20</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ -n 1 SCAN 0 COUNT 20</p>
<p>这可以抽样查看 DB1 中的部分 key。</p>
<p>注意：不要在生产环境随便执行 <code>KEYS *</code>，如果 key 很多，可能阻塞 Redis。</p>
<hr/>
<h2 id="六-如何确认-rdb-是否最新保存成功">六、如何确认 RDB 是否最新保存成功？</h2>
<h3 id="1-查看持久化状态">1. 查看持久化状态</h3>
<p>执行：</p>
<p>redis-cli INFO persistence</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ INFO persistence</p>
<p>重点看：</p>
<p>rdb_bgsave_in_progress
rdb_last_bgsave_status
rdb_last_save_time</p>
<p>正常状态应该类似：</p>
<p>rdb_bgsave_in_progress:0
rdb_last_bgsave_status:ok</p>
<p>含义：</p>
<p>字段</p>
<p>正常值</p>
<p>说明</p>
<p><code>rdb_bgsave_in_progress</code></p>
<p><code>0</code></p>
<p>当前没有正在执行 BGSAVE</p>
<p><code>rdb_last_bgsave_status</code></p>
<p><code>ok</code></p>
<p>最近一次 RDB 保存成功</p>
<p><code>rdb_last_save_time</code></p>
<p>时间戳</p>
<p>最近一次保存时间</p>
<hr/>
<h3 id="2-手动生成最新-rdb-快照">2. 手动生成最新 RDB 快照</h3>
<p>迁移前，建议在老服务器执行一次：</p>
<p>redis-cli BGSAVE</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ BGSAVE</p>
<p>Redis 官方文档说明，RDB 快照可以通过 <code>SAVE</code> 或 <code>BGSAVE</code> 手动触发；<code>BGSAVE</code> 会在后台生成快照，通常比 <code>SAVE</code> 更适合生产环境。(<a href="https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">Redis</a>)</p>
<p>执行后再次检查：</p>
<p>redis-cli INFO persistence
ls -lh /www/server/redis/dump.rdb</p>
<p>确认：</p>
<p>rdb_last_bgsave_status:ok</p>
<p>并且 <code>dump.rdb</code> 修改时间已经更新。</p>
<hr/>
<h2 id="七-redis-数据迁移方案-直接复制-dump-rdb">七、Redis 数据迁移方案：直接复制 dump.rdb</h2>
<p>如果你的情况是：</p>
<p>老服务器 Redis 使用 RDB
新服务器 Redis 可以被老数据覆盖
AOF 没有开启，或者准备关闭 AOF
新服务器 Redis 版本等于或高于老服务器</p>
<p>那么可以直接复制：</p>
<p>/www/server/redis/dump.rdb</p>
<p>到新服务器对应目录，覆盖新服务器的 Redis RDB 文件。</p>
<p>Redis 启动时会从持久化文件恢复数据；RDB 文件本质是 Redis 某个时间点的数据集快照。(<a href="https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">Redis</a>)</p>
<hr/>
<h2 id="八-迁移前检查清单">八、迁移前检查清单</h2>
<h3 id="老服务器检查">老服务器检查</h3>
<p>redis-cli INFO keyspace
redis-cli INFO persistence
redis-cli CONFIG GET dir dbfilename appendonly save
ls -lh /www/server/redis/dump.rdb</p>
<p>如果有密码：</p>
<p>redis-cli -a ‘你的Redis密码’ INFO keyspace
redis-cli -a ‘你的Redis密码’ INFO persistence
redis-cli -a ‘你的Redis密码’ CONFIG GET dir dbfilename appendonly save
ls -lh /www/server/redis/dump.rdb</p>
<p>确认结果：</p>
<p>dir = /www/server/redis
dbfilename = dump.rdb
appendonly = no
rdb_last_bgsave_status = ok</p>
<hr/>
<h3 id="新服务器检查">新服务器检查</h3>
<p>redis-cli CONFIG GET dir dbfilename appendonly</p>
<p>确认新服务器 Redis 也使用：</p>
<p>dir = /www/server/redis
dbfilename = dump.rdb</p>
<p>如果新服务器返回：</p>
<p>dir
/www/server/redis/redis_cache</p>
<p>dbfilename
dump.rdb</p>
<p>那么你应该把文件放到：</p>
<p>/www/server/redis/redis_cache/dump.rdb</p>
<p>而不是：</p>
<p>/www/server/redis/dump.rdb</p>
<p>所以迁移前一定要以新服务器的 <code>CONFIG GET dir dbfilename</code> 为准。</p>
<hr/>
<h2 id="九-完整迁移步骤">九、完整迁移步骤</h2>
<p>下面以老服务器 Redis 数据文件为：</p>
<p>/www/server/redis/dump.rdb</p>
<p>新服务器 Redis 数据文件也为：</p>
<p>/www/server/redis/dump.rdb</p>
<p>为例。</p>
<hr/>
<h3 id="第一步-老服务器生成最新快照">第一步：老服务器生成最新快照</h3>
<p>在老服务器执行：</p>
<p>redis-cli BGSAVE</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ BGSAVE</p>
<p>等待几秒后检查：</p>
<p>redis-cli INFO persistence
ls -lh /www/server/redis/dump.rdb</p>
<p>确认：</p>
<p>rdb_last_bgsave_status:ok</p>
<hr/>
<h3 id="第二步-老服务器确认-db1-数据">第二步：老服务器确认 DB1 数据</h3>
<p>redis-cli INFO keyspace
redis-cli -n 1 DBSIZE</p>
<p>带密码：</p>
<p>redis-cli -a ‘你的Redis密码’ INFO keyspace
redis-cli -a ‘你的Redis密码’ -n 1 DBSIZE</p>
<p>记录老服务器 DB1 的 key 数量，迁移后用于对比。</p>
<hr/>
<h3 id="第三步-复制-dump-rdb-到新服务器">第三步：复制 dump.rdb 到新服务器</h3>
<p>在老服务器执行：</p>
<p>scp /www/server/redis/dump.rdb root@新服务器IP:/root/dump.rdb</p>
<p>如果 SSH 端口不是 22，例如 2222：</p>
<p>scp -P 2222 /www/server/redis/dump.rdb root@新服务器IP:/root/dump.rdb</p>
<p>如果文件比较大，也可以使用 <code>rsync</code>：</p>
<p>rsync -avP /www/server/redis/dump.rdb root@新服务器IP:/root/dump.rdb</p>
<hr/>
<h3 id="第四步-新服务器停止-redis">第四步：新服务器停止 Redis</h3>
<p>在新服务器执行：</p>
<p>/etc/init.d/redis stop</p>
<p>或者：</p>
<p>systemctl stop redis</p>
<p>如果是宝塔面板安装的 Redis，也可以在宝塔面板中停止 Redis。</p>
<p>不要在 Redis 运行时直接覆盖 <code>dump.rdb</code>。</p>
<hr/>
<h3 id="第五步-备份新服务器原-redis-文件">第五步：备份新服务器原 Redis 文件</h3>
<p>在新服务器执行：</p>
<p>cp /www/server/redis/dump.rdb /www/server/redis/dump.rdb.bak.$(date +%F_%H%M%S) 2&gt;/dev/null</p>
<p>如果新服务器可能有 AOF 文件，也建议先查一下：</p>
<p>find /www/server/redis/ -type f \( -name “*.aof” -o -name “*manifest*” \) 2&gt;/dev/null</p>
<p>如果新服务器 AOF 是开启的，建议先关闭 AOF 或移走旧 AOF 文件，避免 Redis 启动时优先加载 AOF，导致复制过去的 RDB 没有生效。</p>
<hr/>
<h3 id="第六步-覆盖新服务器-dump-rdb">第六步：覆盖新服务器 dump.rdb</h3>
<p>cp /root/dump.rdb /www/server/redis/dump.rdb
chown redis:redis /www/server/redis/dump.rdb
chmod 644 /www/server/redis/dump.rdb</p>
<p>确认文件：</p>
<p>ls -lh /www/server/redis/dump.rdb
ls -l /www/server/redis/dump.rdb</p>
<p>正常权限类似：</p>
<p>-rw-r–r– 1 redis redis 1.29G dump.rdb</p>
<p>你老服务器截图中的权限/所有者是：</p>
<p>644/redis</p>
<p>所以新服务器保持：</p>
<p>chmod 644
chown redis:redis</p>
<p>比较稳妥。</p>
<hr/>
<h3 id="第七步-启动新服务器-redis">第七步：启动新服务器 Redis</h3>
<p>/etc/init.d/redis start</p>
<p>或者：</p>
<p>systemctl start redis</p>
<p>然后检查：</p>
<p>redis-cli PING
redis-cli INFO keyspace
redis-cli -n 1 DBSIZE</p>
<p>正常应该返回：</p>
<p>PONG</p>
<p>并且 <code>INFO keyspace</code> 中应该能看到 DB1 数据，例如：</p>
<p>db1:keys=xxxxx,expires=xxx,avg_ttl=xxxx</p>
<p>如果迁移成功，新服务器：</p>
<p>redis-cli -n 1 DBSIZE</p>
<p>返回的数量应该和老服务器迁移前记录的 DB1 数量接近或一致。</p>
<hr/>
<h2 id="十-迁移后验证方法">十、迁移后验证方法</h2>
<h3 id="1-查看-db1-key-数量">1. 查看 DB1 key 数量</h3>
<p>redis-cli -n 1 DBSIZE</p>
<h3 id="2-抽样查看-db1-key">2. 抽样查看 DB1 key</h3>
<p>redis-cli -n 1 SCAN 0 COUNT 20</p>
<h3 id="3-查看-redis-是否正常运行">3. 查看 Redis 是否正常运行</h3>
<p>redis-cli PING</p>
<p>正常返回：</p>
<p>PONG</p>
<h3 id="4-查看-redis-日志">4. 查看 Redis 日志</h3>
<p>宝塔环境常见日志文件：</p>
<p>/www/server/redis/redis.log</p>
<p>查看最后 100 行：</p>
<p>tail -n 100 /www/server/redis/redis.log</p>
<p>重点看是否有：</p>
<p>DB loaded from disk
Ready to accept connections</p>
<p>或者是否出现：</p>
<p>Can’t handle RDB format version
Fatal error loading the DB
Permission denied</p>
<hr/>
<h2 id="十一-常见问题处理">十一、常见问题处理</h2>
<h3 id="问题-1-复制了-dump-rdb-但新服务器没有数据">问题 1：复制了 dump.rdb，但新服务器没有数据</h3>
<p>优先检查：</p>
<p>redis-cli CONFIG GET dir dbfilename appendonly</p>
<p>可能原因：</p>
<p>原因</p>
<p>说明</p>
<p>文件放错目录</p>
<p>Redis 实际 <code>dir</code> 不是 <code>/www/server/redis</code></p>
<p>文件名不对</p>
<p>Redis 实际 <code>dbfilename</code> 不是 <code>dump.rdb</code></p>
<p>Redis 没重启</p>
<p>Redis 只会在启动时加载 RDB</p>
<p>AOF 开启</p>
<p>Redis 可能优先加载 AOF</p>
<p>权限错误</p>
<p>Redis 用户无法读取 <code>dump.rdb</code></p>
<p>解决：</p>
<p>chown redis:redis /www/server/redis/dump.rdb
chmod 644 /www/server/redis/dump.rdb
/etc/init.d/redis restart</p>
<hr/>
<h3 id="问题-2-redis-启动失败">问题 2：Redis 启动失败</h3>
<p>查看日志：</p>
<p>tail -n 200 /www/server/redis/redis.log</p>
<p>常见原因：</p>
<p>错误</p>
<p>可能原因</p>
<p><code>Permission denied</code></p>
<p>文件权限或目录权限不对</p>
<p><code>Can&#39;t handle RDB format version</code></p>
<p>新服务器 Redis 版本太低</p>
<p><code>No such file or directory</code></p>
<p>RDB 路径不对</p>
<p><code>Out Of Memory</code></p>
<p>新服务器内存不足</p>
<p>如果是版本问题，建议新服务器 Redis 版本等于或高于老服务器。</p>
<hr/>
<h3 id="问题-3-新服务器启动后数据又被覆盖">问题 3：新服务器启动后数据又被覆盖</h3>
<p>可能是你在 Redis 运行时复制了 RDB，之后 Redis 自动执行 RDB 保存，把你复制的文件覆盖了。</p>
<p>正确做法：</p>
<p>停止 Redis
覆盖 dump.rdb
设置权限
启动 Redis</p>
<p>不要在 Redis 运行时覆盖。</p>
<hr/>
<h3 id="问题-4-新服务器已经有-redis-数据-能不能直接覆盖">问题 4：新服务器已经有 Redis 数据，能不能直接覆盖？</h3>
<p>如果新服务器 Redis 里的数据不重要，可以直接覆盖。</p>
<p>如果新服务器 Redis 里已经有重要数据，不建议直接覆盖。直接覆盖 RDB 后重启，相当于用老服务器快照替换新服务器 Redis 全量数据。</p>
<p>这种情况下可以考虑：</p>
<p>DUMP + RESTORE
MIGRATE
业务层重新写入
分库导入</p>
<p>Redis 官方 <code>MIGRATE</code> 命令内部会使用 <code>DUMP</code> 序列化 key，再用 <code>RESTORE</code> 在目标 Redis 中恢复 key，适合更细粒度的迁移。(<a href="https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">Redis</a>)</p>
<hr/>
<h2 id="十二-推荐的最终命令模板">十二、推荐的最终命令模板</h2>
<h3 id="老服务器执行">老服务器执行</h3>
<p># 1. 查看 Redis 数据情况
redis-cli INFO keyspace
redis-cli -n 1 DBSIZE</p>
<h1 id="2-手动生成最新-rdb-快照-1">2. 手动生成最新 RDB 快照</h1>
<p>redis-cli BGSAVE</p>
<h1 id="3-查看-rdb-保存状态">3. 查看 RDB 保存状态</h1>
<p>redis-cli INFO persistence</p>
<h1 id="4-查看-redis-持久化配置">4. 查看 Redis 持久化配置</h1>
<p>redis-cli CONFIG GET dir dbfilename appendonly save</p>
<h1 id="5-确认-rdb-文件">5. 确认 RDB 文件</h1>
<p>ls -lh /www/server/redis/dump.rdb</p>
<h1 id="6-复制到新服务器">6. 复制到新服务器</h1>
<p>scp /www/server/redis/dump.rdb root@新服务器IP:/root/dump.rdb</p>
<p>如果有密码：</p>
<p>redis-cli -a ‘你的Redis密码’ INFO keyspace
redis-cli -a ‘你的Redis密码’ -n 1 DBSIZE
redis-cli -a ‘你的Redis密码’ BGSAVE
redis-cli -a ‘你的Redis密码’ INFO persistence
redis-cli -a ‘你的Redis密码’ CONFIG GET dir dbfilename appendonly save</p>
<hr/>
<h3 id="新服务器执行">新服务器执行</h3>
<p># 1. 确认新服务器 Redis 持久化路径
redis-cli CONFIG GET dir dbfilename appendonly</p>
<h1 id="2-停止-redis">2. 停止 Redis</h1>
<p>/etc/init.d/redis stop</p>
<h1 id="3-备份原有-rdb">3. 备份原有 RDB</h1>
<p>cp /www/server/redis/dump.rdb /www/server/redis/dump.rdb.bak.$(date +%F_%H%M%S) 2&gt;/dev/null</p>
<h1 id="4-覆盖-rdb">4. 覆盖 RDB</h1>
<p>cp /root/dump.rdb /www/server/redis/dump.rdb</p>
<h1 id="5-设置权限">5. 设置权限</h1>
<p>chown redis:redis /www/server/redis/dump.rdb
chmod 644 /www/server/redis/dump.rdb</p>
<h1 id="6-启动-redis">6. 启动 Redis</h1>
<p>/etc/init.d/redis start</p>
<h1 id="7-验证数据">7. 验证数据</h1>
<p>redis-cli PING
redis-cli INFO keyspace
redis-cli -n 1 DBSIZE</p>
<p>如果新服务器 Redis 使用 systemd：</p>
<p>systemctl stop redis
systemctl start redis</p>
<hr/>
<h2 id="十三-本次服务器的最终结论">十三、本次服务器的最终结论</h2>
<p>根据本次排查过程，你这台老服务器的 Redis 数据文件位置是：</p>
<p>/www/server/redis/dump.rdb</p>
<p>当前 Redis 状态可以总结为：</p>
<p>Redis 数据主要在：DB1
AOF：关闭
RDB：开启
RDB 文件：/www/server/redis/dump.rdb
RDB 文件大小：约 1.29 GB
DB1 是否单独文件：不是
迁移方式：可以复制 dump.rdb 到新服务器对应 Redis dir 目录</p>
<p>迁移时最重要的原则是：</p>
<p>先在老服务器 BGSAVE
再复制 dump.rdb
新服务器先停止 Redis
备份新服务器旧 dump.rdb
覆盖 dump.rdb
修正 redis:redis 权限
启动 Redis
检查 DB1 数据</p>
<p>一句话总结：<strong>你可以通过复制 <code>/www/server/redis/dump.rdb</code> 完成 Redis 数据迁移，但必须确认新服务器 Redis 的 <code>dir</code> 和 <code>dbfilename</code>，并且必须在 Redis 停止状态下覆盖文件，启动后再用 <code>INFO keyspace</code> 和 <code>DBSIZE</code> 验证 DB1 数据是否恢复成功。</strong></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/8</guid>
      <pubDate>Fri, 31 Jul 2026 14:42:10 +0700</pubDate>
    </item>
    <item>
      <title>MYYCMS 站群系统数据库修改密码及数据库备份恢复操作笔记</title>
      <link>https://seo.ga/p/post/7</link>
      <description>MYYCMS 站群系统数据库修改密码及数据库备份恢复操作笔记 最新上线了6台MYYCMS站群，目前整体排名效果不错！ 最近这个月，陆续有3台MYYCMS站群服务器出现故障，最近这一台服务器因为硬盘故障，导致服务器无法启动，机房那边紧急帮忙安排了一块新的硬盘，并把旧硬盘挂载到服务器上，测试了两天，终于把旧硬盘上的MYYCMS站群数据，包括MYYCMS站群的源码、Mysql数据库文件，以及Redis数...</description>
      <content:encoded><![CDATA[<h1 id="myycms-站群系统数据库修改密码及数据库备份恢复操作笔记">MYYCMS 站群系统数据库修改密码及数据库备份恢复操作笔记</h1>
<p>最新上线了6台MYYCMS站群，目前整体排名效果不错！</p>
<p>最近这个月，陆续有3台MYYCMS站群服务器出现故障，最近这一台服务器因为硬盘故障，导致服务器无法启动，机房那边紧急帮忙安排了一块新的硬盘，并把旧硬盘挂载到服务器上，测试了两天，终于把旧硬盘上的MYYCMS站群数据，包括MYYCMS站群的源码、Mysql数据库文件，以及Redis数据库文件从旧硬盘转移到新硬盘，并重新配置MYYCMS站群的信息，将MYYCMS站群成功恢复，今天记录一下详细的操作过程。</p>
<h2 id="一-myycms站群服务器环境">一、MYYCMS站群服务器环境</h2>
<p>本次恢复环境：</p>
<p> 系统：Debian 12<br/>
 Web：Nginx 1.30<br/>
 PHP：PHP 8.2<br/>
 数据库：MySQL 8.0.45<br/>
 Redis：Redis 7.4.7<br/>
 面板：宝塔 V11.7<br/>
 站点数量：约 2500 个<br/>
 数据库目录：/www/server/data<br/>
 Redis 目录：/www/server/redis<br/>
 宝塔面板目录：/www/server/panel<br/>
 网站目录：/www/wwwroot<br/>
 旧硬盘挂载目录：/old</p>
<p>本次故障背景：</p>
<p> 服务器硬盘损坏，更换新硬盘并重新安装系统与宝塔环境；<br/>
 旧硬盘挂载到新系统；<br/>
 需要恢复 MYYCMS 站群网站、MySQL 数据库、Redis 数据、宝塔面板站点记录。</p>
<h2 id="二-核心结论">二、核心结论</h2>
<p>这次最关键的经验有 5 条：</p>
<p> 1. 宝塔面板的网站列表、数据库列表，不是单纯扫描 Nginx 配置和 MySQL 文件生成的；<br/>
    宝塔自己还有 SQLite 面板数据库，宝塔面板网站、数据库相关信息存放数据库文件位置 /www/server/panel/data/default.db。<br/>
 ​<br/>
 2. Redis 的 dump.rdb / AOF 恢复后，只要 Redis 能 PING、DBSIZE 正常，说明 Redis 本身基本没问题。<br/>
 ​<br/>
 3. MySQL 8 不能只复制单个业务库目录或 .ibd 文件。<br/>
    必须尽量完整恢复整个 /www/server/data 目录。<br/>
 ​<br/>
 4. MySQL 8 的库表元数据主要在数据字典里，不是只靠数据库目录和 .ibd 文件识别。<br/>
    MySQL 8 已移除旧式 .frm 文件元数据，相关元数据存入数据字典表中。:contentReference[oaicite:0]{index=0}<br/>
 ​<br/>
 5. 完整恢复旧 /www/server/data 后，MySQL root 密码也会恢复成旧硬盘里的密码；<br/>
    如果忘记旧密码，需要用 –skip-grant-tables 重置 root 密码。</p>
<h2 id="三-宝塔面板相关数据恢复">三、宝塔面板相关数据恢复</h2>
<h2 id="1-宝塔站点配置目录">1. 宝塔站点配置目录</h2>
<p>Nginx 站点配置：</p>
<p> /www/server/panel/vhost/nginx/</p>
<p>SSL 证书目录：</p>
<p> /www/server/panel/vhost/cert/</p>
<p>恢复示例：</p>
<p> rsync -a /old/server/panel/vhost/nginx/ /www/server/panel/vhost/nginx/<br/>
 rsync -a /old/server/panel/vhost/cert/ /www/server/panel/vhost/cert/</p>
<p>如果没有 <code>rsync</code>：</p>
<p> cp -a /old/server/panel/vhost/nginx/. /www/server/panel/vhost/nginx/<br/>
 cp -a /old/server/panel/vhost/cert/. /www/server/panel/vhost/cert/</p>
<h2 id="2-宝塔面板数据库">2. 宝塔面板数据库</h2>
<p>恢复好数据库文件之后，无法同步数据库，会提示错误</p>
<p><img src="/file/img/remote/2026/07/31/0114ff11-1d57-4de6-813d-dc69b1cd168f.png" alt="恢复好数据库文件之后，无法同步数据库，会提示错误" loading="lazy" decoding="async"/></p>
<p>宝塔面板自己的数据库一般在：</p>
<p> /www/server/panel/data/default.db</p>
<p>里面包含：</p>
<p>sites      网站列表
databases  数据库列表
config     面板配置，包括 mysql_root
users      面板用户
crontab    计划任务
ftps       FTP 信息
logs       面板日志</p>
<p>查看表：</p>
<p>sqlite3 /www/server/panel/data/default.db “.tables”</p>
<p>查看 <code>config</code> 表结构：</p>
<p>sqlite3 /www/server/panel/data/default.db “PRAGMA table_info(config);”</p>
<p>查看宝塔保存的 MySQL root 密码：</p>
<p>sqlite3 /www/server/panel/data/default.db “SELECT id,mysql_root FROM config;”</p>
<p>如果显示：</p>
<p>1|admin</p>
<p>含义不是用户名是 <code>admin</code>，而是：</p>
<p>宝塔面板当前保存的 MySQL root 密码 = admin</p>
<p>如果 SSH 中实际 MySQL root 密码已经不是 <code>admin</code>，宝塔面板同步数据库就会提示密码错误。</p>
<h2 id="3-修改宝塔保存的-mysql-root-密码">3. 修改宝塔保存的 MySQL root 密码</h2>
<p><img src="/file/img/remote/2026/07/31/6d7eda66-fb17-4817-8d7b-0fcfa6140796.png" alt="image-20260527162602145" loading="lazy" decoding="async"/></p>
<p>先备份：</p>
<p>cp -a /www/server/panel/data/default.db /www/server/panel/data/default.db.bak.$(date +%F-%H%M%S)</p>
<p>tar -czf /root/bt-panel-data-backup-$(date +%F-%H%M%S).tar.gz /www/server/panel/data</p>
<p>修改：</p>
<p>sqlite3 /www/server/panel/data/default.db “UPDATE config SET mysql_root=‘你的真实root密码’ WHERE id=1;”</p>
<p>确认：</p>
<p>sqlite3 /www/server/panel/data/default.db “SELECT id,mysql_root FROM config;”</p>
<p>重启宝塔：</p>
<p>bt restart</p>
<p>然后再进入：</p>
<p>宝塔面板 → 数据库 → MySQL → 同步数据库</p>
<h2 id="四-redis-数据恢复与排查">四、Redis 数据恢复与排查</h2>
<h2 id="1-redis-数据位置">1. Redis 数据位置</h2>
<p>宝塔 Redis 常见目录：</p>
<p>/www/server/redis</p>
<p>查看 Redis 持久化配置：</p>
<p>grep -E “^(dir|dbfilename|appendonly|appendfilename|appenddirname)” /www/server/redis/redis.conf</p>
<p><img src="/file/img/remote/2026/07/31/425339d7-6e23-4c91-b17e-cb94ed1071b0.png" alt="宝塔面板 Redis 持久化配置" loading="lazy" decoding="async"/></p>
<p>常见配置：</p>
<p>dir /www/server/redis
dbfilename dump.rdb
appendonly no</p>
<p>如果启用了 AOF，可能还有：</p>
<p>/www/server/redis/appendonlydir/</p>
<h2 id="2-恢复-redis-数据">2. 恢复 Redis 数据</h2>
<p>停止 Redis：</p>
<p>systemctl stop redis</p>
<p>复制旧数据：</p>
<p>rsync -a /old/server/redis/ /www/server/redis/</p>
<p>没有 <code>rsync</code> 时：</p>
<p>cp -a /old/server/redis/. /www/server/redis/</p>
<p>修复权限：</p>
<p>chown -R root:root /www/server/redis</p>
<p>启动：</p>
<p>systemctl start redis</p>
<h2 id="3-判断-redis-是否恢复成功">3. 判断 Redis 是否恢复成功</h2>
<p>测试：</p>
<p>redis-cli PING</p>
<p>正常返回：</p>
<p>PONG</p>
<p>检查 DB1：</p>
<p>redis-cli -n 1 DBSIZE</p>
<p>本次恢复后结果类似：</p>
<p>(integer) 346390</p>
<p>扫描 key：</p>
<p>redis-cli -n 1 –scan | head -n 20</p>
<p>本次 MYYCMS / Laravel key 格式类似：</p>
<p>laravel_database_seo.bj:article_with_menu_75
laravel_database_xxx.com:category_3_limit_10</p>
<h2 id="4-redis-loading-报错说明">4. Redis <code>LOADING</code> 报错说明</h2>
<p>如果刚执行：</p>
<p>systemctl restart redis
redis-cli -n 1 DBSIZE</p>
<p>马上出现：</p>
<p>(error) LOADING Redis is loading the dataset in memory</p>
<p>这不一定是故障。说明 Redis 正在把 RDB/AOF 加载进内存。</p>
<p>本次日志显示：</p>
<p>Loading RDB produced by version 7.4.7
RDB memory usage when created 4293.41 Mb
Done loading RDB, keys loaded: 346390
DB loaded from disk: 13.833 seconds
Ready to accept connections tcp</p>
<p>说明 Redis 大概 14 秒加载完成。不要反复重启 Redis。</p>
<h2 id="五-文章详情页-500-排查经验">五、文章详情页 500 排查经验</h2>
<h2 id="1-现象">1. 现象</h2>
<p>本次测试站点：</p>
<p><a href="https://www.seo.bj/" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.seo.bj/</a></p>
<p>现象：</p>
<p>首页正常
列表页正常
文章详情页 500
案例详情页 500</p>
<p>Redis 中对应文章 key 存在：</p>
<p>redis-cli -n 1 EXISTS “laravel_database_seo.bj:article_with_menu_75”
redis-cli -n 1 TYPE “laravel_database_seo.bj:article_with_menu_75”
redis-cli -n 1 TTL “laravel_database_seo.bj:article_with_menu_75”</p>
<p>返回：</p>
<p>(integer) 1
string
(integer) -1</p>
<p>读取文章内容：</p>
<p>redis-cli -n 1 GET “laravel_database_seo.bj:article_with_menu_75” | head -c 1000</p>
<p>内容开头：</p>
<p>O:24:“App\Models\SpiderArticle”:30:{…}</p>
<p>说明 Redis 里存的是 PHP serialize 后的 Laravel Eloquent 模型对象。</p>
<h2 id="2-检查模型类是否存在">2. 检查模型类是否存在</h2>
<p>进入站点目录：</p>
<p>cd /www/wwwroot/seo.bj</p>
<p>测试 autoload：</p>
<p>/www/server/php/82/bin/php -r “require ‘vendor/autoload.php’; var_dump(class_exists(‘App\\Models\\SpiderArticle’));”</p>
<p>正常返回：</p>
<p>bool(true)</p>
<p>如果在错误目录执行，比如 <code>/www/wwwlogs/free_waf_log</code>，会报：</p>
<p>require(vendor/autoload.php): Failed to open stream</p>
<p>所以必须进入 Laravel 项目根目录执行。</p>
<h2 id="3-查看-laravel-日志">3. 查看 Laravel 日志</h2>
<p>真正的错误不在 Nginx access log，而在：</p>
<p>/www/wwwroot/seo.bj/storage/logs/laravel.log</p>
<p>查看：</p>
<p>cd /www/wwwroot/seo.bj
tail -n 200 storage/logs/laravel.log</p>
<p>本次关键错误：</p>
<p>SQLSTATE[HY000] [1045] Access denied for user ‘z0eeg4mt05q38888’@’localhost’ (using password: YES)
SQL: select `categoryid`, `id`, `viewcount` from `spider_article` where `spider_article`.`id` = 74 limit 1</p>
<p>结论：</p>
<p>Redis 没问题；
文章详情页读取 Redis 后，还会查询 MySQL 的 spider_article 表；
MySQL 用户或数据库权限异常，导致详情页 500。</p>
<h2 id="六-mysql-数据库恢复重点">六、MySQL 数据库恢复重点</h2>
<h2 id="1-mysql-8-不能只复制业务库目录">1. MySQL 8 不能只复制业务库目录</h2>
<p>错误做法：</p>
<p>cp -rf /old/server/data/z0eeg4mt05q38888 /www/server/data/
cp -rf /old/server/data/undo_001 /www/server/data/
cp -rf /old/server/data/undo_002 /www/server/data/</p>
<p>这种方式会导致：</p>
<p>SHOW DATABASES 看不到业务库；
宝塔同步数据库显示 0 个数据库；
甚至 MySQL 无法启动。</p>
<p>原因：</p>
<p>MySQL 8 的数据库、表、表空间信息依赖数据字典；
只复制业务库目录和 .ibd 文件，MySQL 不一定识别。</p>
<p>MySQL 8 移除了 <code>.frm</code> 等文件式元数据，表结构等信息改由数据字典表保存。</p>
<h2 id="2-正确做法-完整恢复整个-data-目录">2. 正确做法：完整恢复整个 data 目录</h2>
<p>旧目录：</p>
<p>/old/server/data</p>
<p>新目录：</p>
<p>/www/server/data</p>
<p>旧目录应包含：</p>
<p>auto.cnf
ibdata1
#innodb_redo/
#innodb_temp/
mysql/
mysql.ibd
undo_001
undo_002
大量业务库目录</p>
<p>检查：</p>
<p>ls -lah /old/server/data | egrep “mysql$|mysql.ibd|ibdata1|#innodb_redo|#innodb_temp|undo_001|undo_002|auto.cnf”</p>
<p>本次确认旧数据目录完整：</p>
<p>auto.cnf
ibdata1
#innodb_redo
#innodb_temp
mysql
mysql.ibd
undo_001
undo_002</p>
<p>MySQL 8 的 redo log 默认位于数据目录下的 <code>#innodb_redo</code> 目录中，不能混用不同数据目录的 redo 文件。(<a href="https://dev.mysql.com/doc/refman/9.0/en/innodb-redo-log.html?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">dev.mysql.com</a>)</p>
<h2 id="3-安装-rsync">3. 安装 rsync</h2>
<p>新系统如果没有 <code>rsync</code>，会报：</p>
<p>-bash: rsync: command not found</p>
<p>安装：</p>
<p>apt update
apt install -y rsync</p>
<p>Debian 12 官方源提供 <code>rsync</code> 包，适合本地和远程文件复制、备份和镜像同步。(<a href="https://packages.debian.org/bookworm/rsync?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">packages.debian.org</a>)</p>
<h2 id="4-完整恢复-www-server-data">4. 完整恢复 <code>/www/server/data</code></h2>
<p>停止 MySQL：</p>
<p>systemctl stop mysqld
pkill -f mysqld_safe
pkill -f “/www/server/mysql/bin/mysqld”</p>
<p>确认没有进程：</p>
<p>ps aux | grep mysqld | grep -v grep</p>
<p>备份当前坏目录：</p>
<p>mv /www/server/data /www/server/data.mixed-broken.$(date +%F-%H%M%S)
mkdir -p /www/server/data</p>
<p>完整同步旧目录：</p>
<p>rsync -aH –numeric-ids –delete /old/server/data/ /www/server/data/</p>
<p>如果没有 rsync，可用：</p>
<p>cp -a /old/server/data/. /www/server/data/</p>
<p>修复权限：</p>
<p>chown -R mysql:mysql /www/server/data
find /www/server/data -type d -exec chmod 750 {} \;
find /www/server/data -type f -exec chmod 640 {} \;</p>
<p>清理运行时文件：</p>
<p>rm -f /www/server/data/*.pid
rm -f /www/server/data/*.sock
rm -f /www/server/data/*.sock.lock</p>
<p>启动 MySQL：</p>
<p>systemctl start mysqld</p>
<p>查看状态：</p>
<p>systemctl status mysqld –no-pager -l</p>
<h2 id="5-典型错误-redo-文件混用">5. 典型错误：redo 文件混用</h2>
<p>本次曾出现错误：</p>
<p>The redo log file /www/server/data/#innodb_redo/#ib_redo179 comes from other data directory than redo log file /www/server/data/#innodb_redo/#ib_redo0.
Plugin initialization aborted
Failed to initialize DD Storage Engine
Data Dictionary initialization failed</p>
<p>原因：</p>
<p>/www/server/data 中混入了新 MySQL 初始化的 redo 文件和旧硬盘复制过来的 redo 文件；
数据字典、redo、undo、表空间不属于同一套实例。</p>
<p>解决：</p>
<p>不要单独复制 undo 或某些数据库目录；
直接备份当前 /www/server/data；
完整同步 /old/server/data 到 /www/server/data。</p>
<h2 id="七-mysql-root-密码重置">七、MySQL root 密码重置</h2>
<h2 id="1-为什么恢复后-root-密码又不对">1. 为什么恢复后 root 密码又不对？</h2>
<p>完整恢复旧 <code>/www/server/data</code> 后，<code>mysql</code> 系统库也恢复了。</p>
<p>所以：</p>
<p>MySQL 用户表恢复成旧硬盘状态；
root 密码也恢复成旧服务器上的密码；
SSH 和宝塔面板原来保存的新密码都会失效。</p>
<p>这属于正常现象。</p>
<h2 id="2-停止残留-mysql-进程">2. 停止残留 MySQL 进程</h2>
<p>有时候：</p>
<p>systemctl stop mysqld</p>
<p>不能完全停止进程。</p>
<p>检查：</p>
<p>ps aux | grep mysqld | grep -v grep</p>
<p>如果看到：</p>
<p>mysqld_safe
mysqld</p>
<p>先温和停止：</p>
<p>kill mysqld的PID
kill mysqld_safe的PID
sleep 5</p>
<p>如果仍存在：</p>
<p>kill -9 mysqld的PID
kill -9 mysqld_safe的PID</p>
<p>确认：</p>
<p>ps aux | grep mysqld | grep -v grep</p>
<p>必须没有输出。</p>
<h2 id="3-用-skip-grant-tables-启动">3. 用 skip-grant-tables 启动</h2>
<p>不要直接执行：</p>
<p>/www/server/mysql/bin/mysqld</p>
<p>直接以 root 执行会报：</p>
<p>Fatal error: Please read “Security” section of the manual to find out how to run mysqld as root!</p>
<p>MySQL 官方不建议用 Unix <code>root</code> 用户运行 mysqld，应使用普通用户，例如 <code>mysql</code> 用户。(<a href="https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html?utm_source=chatgpt.com" target="_blank" rel="nofollow ugc noopener noreferrer">dev.mysql.com</a>)</p>
<p>正确方式：</p>
<p>/www/server/mysql/bin/mysqld_safe –defaults-file=/etc/my.cnf –skip-grant-tables –skip-networking –user=mysql &amp;</p>
<p>等待：</p>
<p>sleep 10</p>
<p>登录：</p>
<p>mysql -uroot</p>
<p>注意这里不加 <code>-p</code>。</p>
<p>MySQL 官方说明，重置 root 密码可以先停止 MySQL，然后用 <code>--skip-grant-tables</code> 启动，使本地可以无密码连接，完成后再恢复正常启动。</p>
<h2 id="4-修改-root-密码">4. 修改 root 密码</h2>
<p>进入 MySQL 后：</p>
<p>FLUSH PRIVILEGES;
SELECT user, host, plugin FROM mysql.user WHERE user=‘root’;</p>
<p>修改 root 密码：</p>
<p>ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的新root密码’;
FLUSH PRIVILEGES;
exit;</p>
<p>如果存在 <code>root@127.0.0.1</code>，也可以一起修改：</p>
<p>ALTER USER ‘root’@‘127.0.0.1’ IDENTIFIED WITH mysql_native_password BY ‘你的新root密码’;
FLUSH PRIVILEGES;</p>
<h2 id="5-关闭临时-mysql-正常启动">5. 关闭临时 MySQL，正常启动</h2>
<p>关闭临时实例：</p>
<p>/www/server/mysql/bin/mysqladmin -uroot -p shutdown</p>
<p>输入新 root 密码。</p>
<p>如果失败，手动 kill 残留进程：</p>
<p>ps aux | grep mysqld | grep -v grep
kill mysqld的PID
kill mysqld_safe的PID</p>
<p>正常启动：</p>
<p>systemctl start mysqld</p>
<p>测试：</p>
<p>mysql -uroot -p -e “SHOW DATABASES;” | head -n 50</p>
<p>如果能看到业务库，说明恢复成功。</p>
<h2 id="八-宝塔面板同步-mysql-root-密码">八、宝塔面板同步 MySQL root 密码</h2>
<p>MySQL root 修改后，还要修改宝塔面板保存的 root 密码。</p>
<p>查看：</p>
<p>sqlite3 /www/server/panel/data/default.db “SELECT id,mysql_root FROM config;”</p>
<p>修改：</p>
<p>sqlite3 /www/server/panel/data/default.db “UPDATE config SET mysql_root=‘你的新root密码’ WHERE id=1;”</p>
<p>重启宝塔：</p>
<p>bt restart</p>
<p>然后宝塔面板执行：</p>
<p>数据库 → MySQL → 同步数据库</p>
<h2 id="九-站点数据库用户修复">九、站点数据库用户修复</h2>
<p>如果某个站点 <code>.env</code> 是：</p>
<p>DB_HOST=127.0.0.1
DB_DATABASE=z0eeg4mt05q3ofof
DB_USERNAME=z0eeg4mt05q3ofof
DB_PASSWORD=站点数据库密码</p>
<p>但是 Laravel 日志报：</p>
<p>SQLSTATE[HY000] [1045] Access denied for user ‘z0eeg4mt05q38888’@’localhost’</p>
<p>用 root 登录 MySQL 后执行：</p>
<p>CREATE USER IF NOT EXISTS ‘z0eeg4mt05q38888’@’localhost’ IDENTIFIED BY ‘站点数据库密码’;
ALTER USER ‘z0eeg4mt05q38888’@’localhost’ IDENTIFIED BY ‘站点数据库密码’;
GRANT ALL PRIVILEGES ON `z0eeg4mt05q38888`.* TO ‘z0eeg4mt05q38888’@’localhost’;</p>
<p>CREATE USER IF NOT EXISTS ‘z0eeg4mt05q38888’@‘127.0.0.1’ IDENTIFIED BY ‘站点数据库密码’;
ALTER USER ‘z0eeg4mt05q38888’@‘127.0.0.1’ IDENTIFIED BY ‘站点数据库密码’;
GRANT ALL PRIVILEGES ON `z0eeg4mt05q3ofof`.* TO ‘z0eeg4mt05q38888’@‘127.0.0.1’;</p>
<p>FLUSH PRIVILEGES;</p>
<p>测试：</p>
<p>mysql -uz0eeg4mt05q38888 -p -h127.0.0.1 z0eeg4mt05q38888</p>
<p>查询表：</p>
<p>SELECT id, categoryid, viewcount FROM spider_article WHERE id=74 LIMIT 1;</p>
<h2 id="十-laravel-myycms-缓存清理">十、Laravel / MYYCMS 缓存清理</h2>
<p>数据库权限修复后，进入站点目录：</p>
<p>cd /www/wwwroot/seo.bj</p>
<p>清理缓存：</p>
<p>/www/server/php/82/bin/php artisan config:clear
/www/server/php/82/bin/php artisan cache:clear
/www/server/php/82/bin/php artisan route:clear
/www/server/php/82/bin/php artisan view:clear</p>
<p>重启 PHP-FPM：</p>
<p>/etc/init.d/php-fpm-82 restart</p>
<p>然后访问：</p>
<p><a href="https://www.seo.bj/news/75.html" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.seo.bj/news/75.html</a>
<a href="https://www.seo.bj/cases/74.html" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.seo.bj/cases/74.html</a></p>
<h2 id="十一-批量检查命令">十一、批量检查命令</h2>
<h2 id="1-查所有站点-env-数据库配置">1. 查所有站点 <code>.env</code> 数据库配置</h2>
<p>find /www/wwwroot -name “.env” -type f -print0 | xargs -0 grep -H “DB_DATABASE=”
find /www/wwwroot -name “.env” -type f -print0 | xargs -0 grep -H “DB_USERNAME=”
find /www/wwwroot -name “.env” -type f -print0 | xargs -0 grep -H “DB_PASSWORD=”</p>
<h2 id="2-查-mysql-用户">2. 查 MySQL 用户</h2>
<p>SELECT user, host FROM mysql.user ORDER BY user, host;</p>
<h2 id="3-查-mysql-数据目录">3. 查 MySQL 数据目录</h2>
<p>mysql -uroot -p -e “SHOW VARIABLES LIKE ‘datadir’;”</p>
<h2 id="4-查业务库是否识别">4. 查业务库是否识别</h2>
<p>mysql -uroot -p -e “SHOW DATABASES;” | head -n 100</p>
<h2 id="5-查-redis-db1">5. 查 Redis DB1</h2>
<p>redis-cli PING
redis-cli -n 1 DBSIZE
redis-cli -n 1 –scan | head -n 20</p>
<h2 id="6-查-laravel-错误日志">6. 查 Laravel 错误日志</h2>
<p>tail -n 200 /www/wwwroot/站点目录/storage/logs/laravel.log</p>
<p>或者：</p>
<p>grep -R “SQLSTATE\|RedisException\|Fatal error\|Uncaught\|Access denied\|Class .* not found” /www/wwwroot/ /www/wwwlogs/ -n | tail -n 100</p>
<h2 id="十二-完整恢复流程总结">十二、完整恢复流程总结</h2>
<h2 id="阶段-1-恢复网站和宝塔站点记录">阶段 1：恢复网站和宝塔站点记录</h2>
<p>rsync -a /old/server/panel/vhost/ /www/server/panel/vhost/
rsync -a /old/wwwroot/ /www/wwwroot/
chown -R www:www /www/wwwroot
bt restart</p>
<p>如果旧路径是 <code>/old/www/wwwroot</code>：</p>
<p>rsync -a /old/www/wwwroot/ /www/wwwroot/</p>
<h2 id="阶段-2-恢复-redis">阶段 2：恢复 Redis</h2>
<p>systemctl stop redis
rsync -a /old/server/redis/ /www/server/redis/
systemctl start redis</p>
<p>redis-cli PING
redis-cli -n 1 DBSIZE</p>
<h2 id="阶段-3-恢复-mysql-数据">阶段 3：恢复 MySQL 数据</h2>
<p>systemctl stop mysqld
pkill -f mysqld_safe
pkill -f “/www/server/mysql/bin/mysqld”</p>
<p>mv /www/server/data /www/server/data.bak.$(date +%F-%H%M%S)
mkdir -p /www/server/data</p>
<p>rsync -aH –numeric-ids –delete /old/server/data/ /www/server/data/</p>
<p>chown -R mysql:mysql /www/server/data
find /www/server/data -type d -exec chmod 750 {} \;
find /www/server/data -type f -exec chmod 640 {} \;</p>
<p>rm -f /www/server/data/*.pid
rm -f /www/server/data/*.sock
rm -f /www/server/data/*.sock.lock</p>
<p>systemctl start mysqld</p>
<h2 id="阶段-4-重置-mysql-root-密码">阶段 4：重置 MySQL root 密码</h2>
<p>systemctl stop mysqld
pkill -f mysqld_safe
pkill -f “/www/server/mysql/bin/mysqld”</p>
<p>ps aux | grep mysqld | grep -v grep</p>
<p>如果还有残留 PID：</p>
<p>kill -9 PID</p>
<p>跳过权限表启动：</p>
<p>/www/server/mysql/bin/mysqld_safe –defaults-file=/etc/my.cnf –skip-grant-tables –skip-networking –user=mysql &amp;
sleep 10
mysql -uroot</p>
<p>SQL：</p>
<p>FLUSH PRIVILEGES;
ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的新root密码’;
FLUSH PRIVILEGES;
exit;</p>
<p>关闭临时实例：</p>
<p>/www/server/mysql/bin/mysqladmin -uroot -p shutdown</p>
<p>正常启动：</p>
<p>systemctl start mysqld</p>
<p>测试：</p>
<p>mysql -uroot -p -e “SHOW DATABASES;” | head -n 50</p>
<h2 id="阶段-5-同步宝塔面板-root-密码">阶段 5：同步宝塔面板 root 密码</h2>
<p>sqlite3 /www/server/panel/data/default.db “UPDATE config SET mysql_root=‘你的新root密码’ WHERE id=1;”
bt restart</p>
<p>然后宝塔面板：</p>
<p>数据库 → MySQL → 同步数据库</p>
<h2 id="阶段-6-修复站点数据库用户和-laravel-缓存">阶段 6：修复站点数据库用户和 Laravel 缓存</h2>
<p>CREATE USER IF NOT EXISTS ‘站点数据库用户’@’localhost’ IDENTIFIED BY ‘站点数据库密码’;
ALTER USER ‘站点数据库用户’@’localhost’ IDENTIFIED BY ‘站点数据库密码’;
GRANT ALL PRIVILEGES ON `站点数据库名`.* TO ‘站点数据库用户’@’localhost’;</p>
<p>CREATE USER IF NOT EXISTS ‘站点数据库用户’@‘127.0.0.1’ IDENTIFIED BY ‘站点数据库密码’;
ALTER USER ‘站点数据库用户’@‘127.0.0.1’ IDENTIFIED BY ‘站点数据库密码’;
GRANT ALL PRIVILEGES ON `站点数据库名`.* TO ‘站点数据库用户’@‘127.0.0.1’;</p>
<p>FLUSH PRIVILEGES;</p>
<p>清理站点缓存：</p>
<p>cd /www/wwwroot/站点目录</p>
<p>/www/server/php/82/bin/php artisan config:clear
/www/server/php/82/bin/php artisan cache:clear
/www/server/php/82/bin/php artisan route:clear
/www/server/php/82/bin/php artisan view:clear</p>
<p>/etc/init.d/php-fpm-82 restart</p>
<h2 id="十三-重要注意事项">十三、重要注意事项</h2>
<h2 id="1-不要混合新旧-mysql-数据目录文件">1. 不要混合新旧 MySQL 数据目录文件</h2>
<p>危险操作：</p>
<p>cp -rf undo_001 undo_002 /www/server/data/
cp -rf 某个业务库目录 /www/server/data/
cp -rf 某些 .ibd 文件 /www/server/data/</p>
<p>可能导致：</p>
<p>redo log file comes from other data directory
Failed to initialize DD Storage Engine
Data Dictionary initialization failed</p>
<p>正确方式：</p>
<p>完整恢复同一套 /www/server/data</p>
<h2 id="2-不要直接以-root-用户运行-mysqld">2. 不要直接以 root 用户运行 mysqld</h2>
<p>错误：</p>
<p>/www/server/mysql/bin/mysqld</p>
<p>可能报：</p>
<p>Fatal error: Please read “Security” section of the manual to find out how to run mysqld as root!</p>
<p>正确：</p>
<p>/www/server/mysql/bin/mysqld_safe –defaults-file=/etc/my.cnf –user=mysql &amp;</p>
<p>或：</p>
<p>systemctl start mysqld</p>
<h2 id="3-修改-env-后必须清理-laravel-配置缓存">3. 修改 <code>.env</code> 后必须清理 Laravel 配置缓存</h2>
<p>php artisan config:clear</p>
<p>否则 Laravel 可能继续使用旧配置。</p>
<h2 id="4-宝塔保存的-root-密码和-mysql-实际-root-密码要一致">4. 宝塔保存的 root 密码和 MySQL 实际 root 密码要一致</h2>
<p>MySQL root 修改后，还要同步：</p>
<p>sqlite3 /www/server/panel/data/default.db “UPDATE config SET mysql_root=‘真实root密码’ WHERE id=1;”
bt restart</p>
<h2 id="5-敏感信息泄露后要更换">5. 敏感信息泄露后要更换</h2>
<p>这次排查中曾暴露：</p>
<p>数据库密码
Telegram Bot Token</p>
<p>恢复后建议：</p>
<p>1. 修改数据库用户密码；
2. 更新站点 .env；
3. php artisan config:clear；
4. 重启 PHP-FPM；
5. 到 BotFather 重置 Telegram Bot Token。</p>
<h2 id="十四-最终验证清单">十四、最终验证清单</h2>
<p>恢复完成后逐项检查：</p>
<p>systemctl status mysqld –no-pager -l
systemctl status redis –no-pager
systemctl status nginx –no-pager</p>
<p>MySQL：</p>
<p>mysql -uroot -p -e “SHOW DATABASES;” | head -n 50</p>
<p>Redis：</p>
<p>redis-cli PING
redis-cli -n 1 DBSIZE</p>
<p>宝塔：</p>
<p>数据库 → MySQL → 当前状态
数据库 → MySQL → 同步数据库
网站 → 站点列表</p>
<p>站点：</p>
<p>首页 200
列表页 200
文章详情页 200
案例详情页 200</p>
<p>Laravel 日志：</p>
<p>tail -n 100 /www/wwwroot/站点目录/storage/logs/laravel.log</p>
<p>Nginx 错误日志：</p>
<p>tail -n 100 /www/wwwlogs/站点域名.error.log</p>
<h2 id="十五-一句话总结">十五、一句话总结</h2>
<p>这次 MYYCMS 站群系统恢复的关键不是单独恢复某个数据库文件，而是：</p>
<p>完整恢复宝塔面板数据 + 完整恢复 MySQL /www/server/data + 恢复 Redis 数据 + 重置 MySQL root 密码 + 同步宝塔 mysql_root + 修复站点数据库用户权限。</p>
<p>尤其是 MySQL 8，必须把：</p>
<p>mysql/
mysql.ibd
ibdata1
#innodb_redo/
#innodb_temp/
undo_001
undo_002
业务库目录</p>
<p>作为一整套数据目录恢复，不能拆开复制。</p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/7</guid>
      <pubDate>Fri, 31 Jul 2026 14:40:37 +0700</pubDate>
    </item>
    <item>
      <title>Linux服务器Debian12系统Codex运行时提醒Codex could not find bubblewrap on PATH的解决方法</title>
      <link>https://seo.ga/p/post/6</link>
      <description>Linux服务器Debian12系统Codex运行时提醒Codex could not find bubblewrap on PATH的解决方法 最近为了使用codex开发CMS系统，特意配置了一台Debian 12系统的服务器，用于全程开发自研CMS系统，目前上线了第一版 SEObjV2.01版本的站点，共上线10个站点在测试； 一、codex问题提示说明 这两天在debian 12服务器上运行...</description>
      <content:encoded><![CDATA[<h1 id="linux服务器debian12系统codex运行时提醒codex-could-not-find-bubblewrap-on-path的解决方法">Linux服务器Debian12系统Codex运行时提醒Codex could not find bubblewrap on PATH的解决方法</h1>
<p>最近为了使用codex开发CMS系统，特意配置了一台Debian 12系统的服务器，用于全程开发自研CMS系统，目前上线了第一版 SEObjV2.01版本的站点，共上线10个站点在测试；</p>
<h2 id="一-codex问题提示说明">一、codex问题提示说明</h2>
<p>这两天在debian 12服务器上运行codex时，每次启动都会有一个提示信息：</p>
<p> Codex could not find bubblewrap on PATH. Install bubblewrap with your OS package manager. See the sandbox prerequisites:<br/>
   <a href="https://developers.openai.com/codex/concepts/sandboxing#prerequisites" target="_blank" rel="nofollow ugc noopener noreferrer">https://developers.openai.com/codex/concepts/sandboxing#prerequisites</a>. Codex will use the bundled bubblewrap in the meantime.</p>
<p>codex提示信息截图：</p>
<p><img src="/file/img/remote/2026/07/31/717a91b7-1983-42a4-8189-63e6460861ca.png" alt="codex提示信息截图" loading="lazy" decoding="async"/></p>
<p>趁着最近计划开发新的CMS系统，统一规则服务器的开发环境及开发的通用标准文档，正好把服务器上提示的一些问题统一修复一下；</p>
<h2 id="二-codex问题解决方法">二、Codex问题解决方法</h2>
<p>这个提示<strong>不是报错，只是警告（Warning）</strong>，目前你的 Codex 已经正常启动了，可以正常使用。</p>
<p>从你的输出看：</p>
<p> ⚠ Codex could not find bubblewrap on PATH.<br/>
 Install bubblewrap with your OS package manager.<br/>
 ​<br/>
 Codex will use the bundled bubblewrap in the meantime.</p>
<p>最后这一句最关键：</p>
<p> Codex will use the bundled bubblewrap in the meantime.</p>
<p>意思是：</p>
<blockquote>
<p>系统没有找到 Linux 自带的 bwrap（bubblewrap），但是 Codex 内置了一个 bubblewrap，所以自动使用内置版本继续运行。</p>
</blockquote>
<p>因此：</p>
<p> 当前状态：<br/>
 可正常使用<br/>
 不会影响分析代码<br/>
 不会影响修改文件<br/>
 不会影响生成报告</p>
<h3 id="什么是-bubblewrap">什么是 Bubblewrap</h3>
<p>Bubblewrap（bwrap）是 Linux 下的轻量级沙箱工具。</p>
<p>Codex 在执行：</p>
<p> 读取文件<br/>
 修改代码<br/>
 运行命令</p>
<p>时，会优先放到沙箱中执行。</p>
<p>作用类似：</p>
<p> Docker（重型）<br/>
 ↓<br/>
 Bubblewrap（轻量）<br/>
 ↓<br/>
 普通进程</p>
<p>这样可以防止 AI 执行危险命令。</p>
<h3 id="为什么你的服务器会提示这个">为什么你的服务器会提示这个</h3>
<p>你的环境：</p>
<p> Debian 12<br/>
 SSH<br/>
 Codex CLI</p>
<p>大概率没有安装：</p>
<p> /usr/bin/bwrap</p>
<p>所以 Codex 检测时提示：</p>
<p>找不到系统版 bubblewrap</p>
<p>然后自动切换：</p>
<p>内置 bubblewrap</p>
<p>继续运行。</p>
<h3 id="检查是否安装">检查是否安装</h3>
<p>执行：</p>
<p>which bwrap</p>
<p>如果输出：</p>
<p>/usr/bin/bwrap</p>
<p>说明已安装。</p>
<p>如果输出为空：</p>
<p>(no output)</p>
<p>说明未安装。</p>
<h3 id="debian-12-安装方法">Debian 12 安装方法</h3>
<p><img src="/file/img/remote/2026/07/31/60557ece-e464-40c7-ad7d-36cc21669ae0.png" alt="image-20260608000052655" loading="lazy" decoding="async"/></p>
<p>直接执行：</p>
<p>sudo apt update
sudo apt install -y bubblewrap</p>
<p>安装完成后：</p>
<p>which bwrap</p>
<p>应该返回：</p>
<p>/usr/bin/bwrap</p>
<p>然后重新打开 Codex。</p>
<p>警告一般会消失。</p>
<h3 id="检查版本">检查版本</h3>
<p>bwrap –version</p>
<p>例如：</p>
<p>bubblewrap 0.8.x</p>
<p>或者：</p>
<p>bubblewrap 0.10.x</p>
<p>即可。</p>
<p><img src="/file/img/remote/2026/07/31/fff5c94a-5d37-46ba-9e40-02c4c9c6816e.png" alt="image-20260608000227579" loading="lazy" decoding="async"/></p>
<h3 id="针对你的开发服务器建议">针对你的开发服务器建议</h3>
<p>你这台服务器是：</p>
<p>96GB RAM
16C/32T
Debian 12</p>
<p>我建议直接安装系统版。</p>
<p>执行：</p>
<p>sudo apt update
sudo apt install -y bubblewrap</p>
<p>耗时：</p>
<p>10秒左右</p>
<p>安装包非常小。</p>
<h3 id="安装后验证">安装后验证</h3>
<p>执行：</p>
<p>which bwrap
bwrap –version</p>
<p>然后：</p>
<p>codex</p>
<p>如果没有看到：</p>
<p>could not find bubblewrap on PATH</p>
<p>说明已经正常使用系统版。</p>
<p>按照上述方法修复之后，重新执行 <code>codex</code> 指令时不会再有提示<code>Codex could not find bubblewrap on PATH</code>信息了</p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/6</guid>
      <pubDate>Fri, 31 Jul 2026 14:39:40 +0700</pubDate>
    </item>
    <item>
      <title>MYYCMS站群批量上线时错误提示的解决方法</title>
      <link>https://seo.ga/p/post/5</link>
      <description>MYYCMS站群批量上线时错误提示的解决方法 最近在批量上线MYYCMS站群【（美羊羊站群）MYYCMS站群标记 https://github.com/program-myyjjpp 】时 会遇到500错误 之前可以正常批量上线MYYCMS站群的服务器，最近开始批量上线MYYCMS站群时，也是会提示各种错误 经过多轮对比测试，找到解决方法了： 1、进入宝塔面板，进入 文件 —— /www/wwwr...</description>
      <content:encoded><![CDATA[<h1 id="myycms站群批量上线时错误提示的解决方法">MYYCMS站群批量上线时错误提示的解决方法</h1>
<p>最近在批量上线MYYCMS站群【（美羊羊站群）MYYCMS站群标记 <code>https://github.com/program-myyjjpp</code> 】时 会遇到500错误</p>
<p><img src="/file/img/remote/2026/07/31/7e8cae53-e383-4b6c-9877-c30a66110ba9.png" alt="批量上线MYYCMS站群【（美羊羊站群）MYYCMS站群标记 `https://github.com/program-myyjjpp` 】时 会遇到500错误" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/b879b4a2-cf42-474d-9a3b-66ed3ac62b20.png" alt="批量上线MYYCMS站群【（美羊羊站群）MYYCMS站群标记 `https://github.com/program-myyjjpp` 】时 会遇到500错误" loading="lazy" decoding="async"/></p>
<p>之前可以正常批量上线MYYCMS站群的服务器，最近开始批量上线MYYCMS站群时，也是会提示各种错误</p>
<p>经过多轮对比测试，找到解决方法了：</p>
<ul>
<li>1、进入宝塔面板，进入 <code>文件</code> —— <code>/www/wwwroot</code> 按照修改时间进行排序，这样可以批量选择最新批量上线网站的根目录，需要修改网站根目录权限为 <code>755</code> ，所有者修改为 <code>www</code> ，勾选 <code>应用到子目录</code> 确认之后等待批量完成权限调整；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/2305485b-c23a-4868-827c-4fe4729781e0.png" alt="批量完成权限调整" loading="lazy" decoding="async"/></p>
<ul>
<li>2、进入宝塔面板 <code>网站</code> —— <code>高级设置</code> —— <code>HTTPS管理</code> 需要勾选 <code>HTTPS防窜站</code> 、 <code>部署SSL后自动开户HTTPS</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/cef2b082-9418-4ba0-82ad-ac8353d41af1.png" alt="需要勾选 `HTTPS防窜站` 、 `部署SSL后自动开户HTTPS` " loading="lazy" decoding="async"/></p>
<ul>
<li>3、完成以上两项设置之后，重启一下Nginx，然后就可以执行批量MYYCMS建站；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/e66cf6eb-040f-409e-85fc-5973d2697652.png" alt="执行批量MYYCMS建站" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/5</guid>
      <pubDate>Fri, 31 Jul 2026 14:38:42 +0700</pubDate>
    </item>
    <item>
      <title>Windows Server 2022 内存占用不到 70%，工具却提示“内存不足”的原因与解决方案</title>
      <link>https://seo.ga/p/post/4</link>
      <description>Windows Server 2022 内存占用不到 70%，工具却提示“内存不足”的原因与解决方案 问题现象 一台 Windows Server 2022 Datacenter 工具服务器，主要用于运行 Chrome、VPN 客户端、远程控制工具、自动化脚本等 GUI 程序。 任务管理器中显示： 物理内存：16.0 GB  当前使用：10.8 / 16.0 GB  内存占用：约 68%  可用内...</description>
      <content:encoded><![CDATA[<h1 id="windows-server-2022-内存占用不到-70-工具却提示-内存不足-的原因与解决方案">Windows Server 2022 内存占用不到 70%，工具却提示“内存不足”的原因与解决方案</h1>
<h2 id="问题现象">问题现象</h2>
<p>一台 Windows Server 2022 Datacenter 工具服务器，主要用于运行 Chrome、VPN 客户端、远程控制工具、自动化脚本等 GUI 程序。</p>
<p><img src="/file/img/remote/2026/07/31/7aa97efc-be67-408c-969a-a6740481a1a9.png" alt="Windows Server 2022 内存占用不到 70%，工具却提示“内存不足”的原因与解决方案" loading="lazy" decoding="async"/></p>
<p>任务管理器中显示：</p>
<p> 物理内存：16.0 GB<br/>
 当前使用：10.8 / 16.0 GB<br/>
 内存占用：约 68%<br/>
 可用内存：约 5.2 GB<br/>
 已提交：19.5 / 22.0 GB</p>
<p>表面看，物理内存还有 30% 左右没有用完，但工具仍然弹出错误：</p>
<p> 没有足够的内存继续执行程序。<br/>
 System.Windows.Media.Composition.DUCE.Channel.SyncFlush()<br/>
 System.Windows.Interop.HwndTarget.UpdateWindowSettings()<br/>
 System.Windows.Interop.HwndTarget.UpdateWindowPos()<br/>
 …</p>
<h2 id="问题结论">问题结论</h2>
<p>这个问题不是单纯的“物理内存用满”，而是 <strong>Windows 提交内存接近上限</strong> 导致的。</p>
<p>任务管理器里真正需要重点关注的是：</p>
<p> 已提交：19.5 / 22.0 GB</p>
<p>这表示系统当前已经承诺给程序、驱动、图形界面和后台服务的内存额度接近上限，只剩大约 2.5GB 可提交空间。</p>
<p>当某个工具继续申请较大的内存块，或者 WPF/.NET 图形界面需要继续申请渲染资源时，就可能出现“没有足够的内存继续执行程序”。</p>
<h2 id="为什么物理内存还有-5gb-也会提示内存不足">为什么物理内存还有 5GB，也会提示内存不足？</h2>
<p>Windows 里有两个容易混淆的概念：</p>
<h3 id="1-物理内存">1. 物理内存</h3>
<p>物理内存就是服务器实际安装的 RAM，例如本机是：</p>
<p> 16 GB</p>
<p>任务管理器显示的“内存 68%”，主要反映的是物理内存使用情况。</p>
<h3 id="2-提交内存">2. 提交内存</h3>
<p>提交内存是 Windows 已经承诺给程序使用的内存额度。它不只看物理内存，还会受到页面文件大小影响。</p>
<p>提交上限大致可以理解为：</p>
<p> 提交上限 = 物理内存 + 页面文件</p>
<p>本机显示：</p>
<p> 已提交：19.5 / 22.0 GB</p>
<p>说明虽然物理内存是 16GB，但页面文件配置偏小，导致总提交上限只有约 22GB。</p>
<p>对于长期运行 Chrome、VPN、自动化脚本、远程桌面、GUI 工具的服务器来说，22GB 的提交上限偏紧。</p>
<h2 id="报错堆栈说明了什么">报错堆栈说明了什么？</h2>
<p>错误堆栈中出现：</p>
<p> System.Windows.Media.Composition.DUCE.Channel.SyncFlush()<br/>
 System.Windows.Interop.HwndTarget.UpdateWindowSettings()<br/>
 System.Windows.Interop.HwndTarget.UpdateWindowPos()</p>
<p>这类堆栈通常与 .NET / WPF 图形界面渲染有关。</p>
<p>也就是说，工具不是普通命令行程序，而是需要窗口、控件、图形渲染资源的 GUI 程序。GUI 程序长期运行后，可能出现以下问题：</p>
<p> 提交内存持续上升<br/>
 窗口资源占用过多<br/>
 GDI / User Objects 占用过多<br/>
 桌面堆资源不足<br/>
 32 位程序地址空间不足<br/>
 WPF 渲染资源申请失败</p>
<p>所以即使任务管理器显示物理内存没到 100%，程序仍然可能报内存不足。</p>
<h2 id="最终有效解决方案">最终有效解决方案</h2>
<p>本次实际采用的解决方案是：<strong>增大 Windows 页面文件</strong>。</p>
<p>适合长期跑 Chrome、VPN、自动化工具的服务器配置：</p>
<p> 初始大小：32768 MB<br/>
 最大大小：49152 MB</p>
<p>也就是：</p>
<p> 初始页面文件：32 GB<br/>
 最大页面文件：48 GB</p>
<p>设置完成并重启服务器后，问题成功解决。</p>
<h2 id="页面文件设置路径">页面文件设置路径</h2>
<p>操作路径：</p>
<p> 此电脑<br/>
 → 属性<br/>
 → 高级系统设置<br/>
 → 性能<br/>
 → 设置<br/>
 → 高级<br/>
 → 虚拟内存<br/>
 → 更改</p>
<p>然后执行：</p>
<p> 取消勾选：自动管理所有驱动器的分页文件大小<br/>
 选择系统盘或空间充足的 SSD 磁盘<br/>
 选择：自定义大小<br/>
 初始大小：32768 MB<br/>
 最大大小：49152 MB<br/>
 点击：设置<br/>
 点击：确定<br/>
 重启服务器</p>
<p><img src="/file/img/remote/2026/07/31/6cee9a69-ba99-4b91-b394-f9d4f637ec90.png" alt="设置路径" loading="lazy" decoding="async"/></p>
<h2 id="如何检查当前页面文件大小">如何检查当前页面文件大小？</h2>
<p>可以使用 PowerShell 查看：</p>
<p>Get-CimInstance Win32_PageFileUsage | Select-Object Name, AllocatedBaseSize, CurrentUsage, PeakUsage</p>
<p>返回结果里重点看：</p>
<p>AllocatedBaseSize：页面文件已分配大小
CurrentUsage：当前使用量
PeakUsage：峰值使用量</p>
<h2 id="如何排查哪个进程占用提交内存">如何排查哪个进程占用提交内存？</h2>
<p>打开任务管理器：</p>
<p>任务管理器
→ 详细信息
→ 右键表头
→ 选择列
→ 勾选：提交大小</p>
<p>然后按照“提交大小”排序。</p>
<p>重点检查这些进程：</p>
<p>chrome.exe
VPN 客户端
远程控制工具
python.exe
node.exe
java.exe
dotnet.exe
自动化脚本相关进程
数据库或缓存类进程</p>
<p>也可以使用 PowerShell 查看占用较高的进程：</p>
<p>Get-Process |
Sort-Object -Descending PrivateMemorySize64 |
Select-Object -First 20 Name, Id,
@{Name=“CommitGB”;Expression={[math]::Round($_.PrivateMemorySize64/1GB,2)}},
@{Name=“WorkingSetGB”;Expression={[math]::Round($_.WorkingSet64/1GB,2)}} |
Format-Table -AutoSize</p>
<h2 id="还需要注意-32-位程序限制">还需要注意 32 位程序限制</h2>
<p>如果工具是 32 位程序，即使服务器有 16GB 或更大内存，单个进程也可能因为地址空间限制而报 OutOfMemory。</p>
<p>检查方法：</p>
<p>任务管理器
→ 详细信息</p>
<p>如果进程名后面显示：</p>
<p>*32</p>
<p>说明它是 32 位程序。</p>
<p>优先处理方式：</p>
<p>尽量使用 64 位版本工具
减少单个工具长期运行时间
定期重启工具
避免同时打开大量窗口和标签页</p>
<h2 id="gui-自动化服务器的优化建议">GUI 自动化服务器的优化建议</h2>
<p>这类服务器长期跑浏览器、VPN、自动化工具时，建议做以下优化：</p>
<p>1. 页面文件设置为 32GB - 48GB
2. Chrome 每轮任务后清理多余标签
3. 每隔一段时间重启 Chrome
4. 每隔一段时间重启 VPN 客户端
5. 自动化脚本异常退出时清理残留进程
6. 不要同时开启多个远程桌面会话
7. 定期注销不用的 Windows 用户会话
8. 定期检查任务管理器里的“提交大小”
9. 长期任务建议分批执行，避免 GUI 资源持续泄漏</p>
<h2 id="临时恢复方案">临时恢复方案</h2>
<p>如果已经弹出“内存不足”，可以先这样处理：</p>
<p>1. 关闭当前报错工具
2. 关闭 Chrome 多余标签
3. 退出 VPN / 加速器客户端
4. 检查是否有残留 chrome.exe、python.exe、dotnet.exe 等进程
5. 重启工具
6. 如果仍然报错，重启服务器
7. 重启后立即增大页面文件</p>
<h2 id="本次问题的最终原因总结">本次问题的最终原因总结</h2>
<p>本次问题的核心原因是：</p>
<p>物理内存占用不到 70%，但提交内存已经达到 19.5 / 22.0GB</p>
<p>也就是：</p>
<p>页面文件偏小
提交内存接近上限
工具是 .NET / WPF 图形界面程序
服务器长期运行 Chrome、VPN、自动化工具
GUI 资源和提交内存压力较高</p>
<p>最终通过设置：</p>
<p>初始大小：32768 MB
最大大小：49152 MB</p>
<p>成功解决工具提示“没有足够的内存继续执行程序”的问题。</p>
<h2 id="适用场景">适用场景</h2>
<p>这套处理方法适合以下服务器：</p>
<p>Windows Server 2019
Windows Server 2022
Windows 10 / Windows 11 工具机
长期运行 Chrome 的自动化服务器
长期运行 VPN / 代理 / 加速器的服务器
长期运行 RDP / VNC / NoMachine 的 GUI 服务器
长期运行 .NET / WPF 图形工具的服务器</p>
<h2 id="建议配置">建议配置</h2>
<p>如果服务器内存是 16GB，且长期运行 GUI 自动化任务，建议页面文件设置为：</p>
<p>初始大小：32768 MB
最大大小：49152 MB</p>
<p>如果服务器内存是 32GB，可以根据任务压力设置为：</p>
<p>初始大小：32768 MB
最大大小：65536 MB</p>
<p>如果磁盘空间充足，工具又需要长期无人值守运行，可以适当提高最大值。</p>
<h2 id="最终建议">最终建议</h2>
<p>不要只看任务管理器里的“内存百分比”。</p>
<p>遇到 Windows 工具提示内存不足时，应重点检查：</p>
<p>已提交
提交上限
页面文件大小
提交大小最高的进程
是否为 32 位程序
GUI 窗口数量
Chrome 标签数量
GDI / User Objects 是否异常</p>
<p>对于工具服务器，页面文件不是越小越好。Chrome、VPN、远程桌面、自动化脚本同时运行时，适当增大页面文件可以显著提高稳定性。</p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/4</guid>
      <pubDate>Fri, 31 Jul 2026 14:37:27 +0700</pubDate>
    </item>
    <item>
      <title>域名服务商 www.cosmotown.com 注册配置说明</title>
      <link>https://seo.ga/p/post/3</link>
      <description>域名服务商 www.cosmotown.com 注册配置说明 1、打开网站首页 点击 Login/Sign Up 进入弹窗登录注册页面 2、在弹窗中 点击 Create Account 3、填写注册的邮箱、输入密码、确认密码、点击 人机验证、然后就注册 4、进入注册邮箱，打开激活链接 5、激活成功之后，需要填写账户联系信息 首先我们去Google搜索 美国身份生成器 随机打开一个网站，上面可以生成...</description>
      <content:encoded><![CDATA[<h2 id="域名服务商-www-cosmotown-com-www-cosmotown-com-注册配置说明">域名服务商 <a href="www.cosmotown.com">www.cosmotown.com</a> 注册配置说明</h2>
<ul>
<li>1、打开网站首页 点击 <code>Login/Sign Up</code> 进入弹窗登录注册页面</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/b6bb38d1-eb3e-45e8-b57b-917ac3e636a4.png" alt="打开网站首页 点击 `Login/Sign Up` 进入弹窗登录注册页面" loading="lazy" decoding="async"/></p>
<ul>
<li>2、在弹窗中 点击 <code>Create Account</code></li>
</ul>
<p><img src="/file/img/remote/2026/07/31/c802a05e-b4e1-426f-889b-971de5185871.png" alt="在弹窗中 点击 `Create Account`" loading="lazy" decoding="async"/></p>
<ul>
<li>3、填写注册的邮箱、输入密码、确认密码、点击 人机验证、然后就注册</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/e1aad7be-4bf0-4379-b695-e35ce9694ac1.png" alt="填写注册的邮箱、输入密码、确认密码、点击 人机验证、然后就注册" loading="lazy" decoding="async"/></p>
<ul>
<li>4、进入注册邮箱，打开激活链接</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/05f5fe7c-75f6-4f01-ae19-13a721905531.png" alt="进入注册邮箱，打开激活链接" loading="lazy" decoding="async"/></p>
<ul>
<li>5、激活成功之后，需要填写账户联系信息</li>
</ul>
<p>首先我们去Google搜索 <code>美国身份生成器</code></p>
<p><img src="/file/img/remote/2026/07/31/7b80eee0-df3f-4b6c-9076-b0a95634157d.png" alt="去Google搜索 `美国身份生成器` " loading="lazy" decoding="async"/></p>
<p>随机打开一个网站，上面可以生成美国人的联系资料，可以点击 <code>刷新数据</code> 每次生成不同的数据，生成完之后，复制相关信息去网站里面填写联系信息</p>
<p><img src="/file/img/remote/2026/07/31/548ff84e-bd09-43fd-847d-e12b7a3e0f9e.png" alt="生成美国人的联系资料，可以点击 `刷新数据` 每次生成不同的数据，生成完之后，复制相关信息去网站里面填写联系信息" loading="lazy" decoding="async"/></p>
<p>注意：邮箱 一定要填写自己的邮箱，注册域名的时候，有时候需要进入邮箱点击激活链接；</p>
<p>另外一个注意一下电话号码的格式，每个网站可能不同，注意网站上的格式说明；</p>
<p><img src="/file/img/remote/2026/07/31/98a9dbb9-2443-4284-bb77-aeb5b0b08721.png" alt="注意一下电话号码的格式，每个网站可能不同，注意网站上的格式说明" loading="lazy" decoding="async"/></p>
<ul>
<li>6、注册完成之后，把用户面板截图给我，申请经费的时候需要使用</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/215fde36-369b-4bc4-b4c7-a4e30bfd8126.png" alt="注册完成之后，把用户面板截图给我，申请经费的时候需要使用" loading="lazy" decoding="async"/></p>
<h2 id="二-购买域名操作流程">二、购买域名操作流程</h2>
<ul>
<li>1、打开网站首页 <a href="https://www.cosmotown.com/" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.cosmotown.com/</a> 搜索自己已经筛选好的域名；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/2c0e7b2f-7725-4adb-998b-a2498edae7b2.png" alt="打开网站首页 https://www.cosmotown.com/ 搜索自己已经筛选好的域名" loading="lazy" decoding="async"/></p>
<ul>
<li>
<p>2、搜索后，在搜索框下面一行会显示各种域名后缀，并且右下角有一个加号 <code>+</code> 表示这个后缀的域名可以注册；其中第一个有额外添加一个 <code>Exact Match</code> 标识，表示这个后缀的域名和你搜索的域名是完全匹配的，点击 <code>+</code> 加号，将域名加入购买车；</p>
</li>
<li>
<p>可以把所有的域名一个一个筛选完，加入购物车再一起付款</p>
</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/2a399765-8f5f-459c-8961-e16f132571e8.png" alt="搜索后，在搜索框下面一行会显示各种域名后缀，并且右下角有一个加号 `+` 表示这个后缀的域名可以注册" loading="lazy" decoding="async"/></p>
<ul>
<li>3、如果你搜索的域名被人注册了，搜索的时候就不会出现 <code>Exact Match</code> 这个标识，一般会出现 <code>Make Offer</code> ，这个是平台表示你可以发购买询价的咨询邮件，去购买这个域名，因为这个域名已经被人注册了，这种我们就不用继续操作了；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/be84c4a8-e19c-4ac7-84ed-b6aab80ad4f3.png" alt="搜索的时候就不会出现 `Exact Match` 这个标识，一般会出现 `Make Offer` ，这个是平台表示你可以发购买询价的咨询邮件" loading="lazy" decoding="async"/></p>
<ul>
<li>4、将筛选符合要求的域名都添加到购物车之后，在网页的右上角购物车的头像旁边会显示加入域名的数量，点击购物车进入结算付款页面；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/1e8b6a90-be53-46d2-b4d7-6cdbaf4463e0.png" alt="将筛选符合要求的域名都添加到购物车之后，在网页的右上角购物车的头像旁边会显示加入域名的数量" loading="lazy" decoding="async"/></p>
<ul>
<li>5、列表中会显示 即将注册的域名，Remove 下面显示X的域名是你即将注册的域名，底下有平台推荐的一些域名，基本上是前缀一样、后缀不同的域名，我们不用管；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/2754d1ce-2a54-4a9c-8410-060f301218fe.png" alt="列表中会显示 即将注册的域名，Remove 下面显示X的域名是你即将注册的域名" loading="lazy" decoding="async"/></p>
<ul>
<li>6、确认账户信息，这个我们在注册平台账户时就已经配置好了，这里直接下一步就可以了；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/498e2b36-c5dc-4fff-a7cc-2867813b700e.png" alt="确认账户信息，这个我们在注册平台账户时就已经配置好了" loading="lazy" decoding="async"/></p>
<ul>
<li>7、这一步选择付款方式，因为我已经充值到账户了，直接点击 <code>Account Credit</code> 使用账户额度付款；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/fc75e7d6-681d-4037-9b54-64d42aba2fe0.png" alt="直接点击  `Account Credit` 使用账户额度付款" loading="lazy" decoding="async"/></p>
<ul>
<li>8、这一步会显示账户余额，勾选协议条款，点击 <code>Place order</code> 处理订单；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/846ed7cd-4378-4c61-b518-211d56099962.png" alt="这一步会显示账户余额，勾选协议条款，点击 `Place order` 处理订单；" loading="lazy" decoding="async"/></p>
<p>到这一步就域名注册就完成了，记得把刚刚注册好的域名记录到域名管理报表中，方便后续上站使用。</p>
<h3 id="补充说明">补充说明：</h3>
<p>部分域名注册平台，第一次注册域名时，需要去域名联系邮箱中点击激活邮件，表示你的域名邮箱是有人在负责管理的，如果超时没有激活邮件，很可能会禁用域名，所以注册完域名注意检查邮件，查看是否有需要激活的邮件！！！</p>
<p>目前在 Cosmotown 平台注册了几次域名，每次都会收到订单详情邮件，但是没有要求要激活的邮件！！其他域名注册平台，大家注意检查邮件！！！</p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/3</guid>
      <pubDate>Fri, 31 Jul 2026 14:32:33 +0700</pubDate>
    </item>
    <item>
      <title>关键词筛选之屏蔽词过滤筛操作方法</title>
      <link>https://seo.ga/p/post/1</link>
      <description>关键词筛选之屏蔽词过滤筛操作方法 为什么会有屏蔽词？ 一些关键词搜索结果比较敏感，政府就会干涉，要求搜索引擎屏蔽这些词的搜索结果，或者只显示一部分新闻站内页，基本上就是屏蔽词。 这些屏蔽关键词，我们seo是无法将排名做上去的，所以在准备上线seo站点之前，一定要确保过滤了屏蔽词 越是大型平台、使用的人越多的平台，一般控制会更加严格，像百度，屏蔽词非常多 筛选屏蔽词之前，需要先设置好本地电脑的网络环...</description>
      <content:encoded><![CDATA[<h2 id="关键词筛选之屏蔽词过滤筛操作方法">关键词筛选之屏蔽词过滤筛操作方法</h2>
<h3 id="为什么会有屏蔽词">为什么会有屏蔽词？</h3>
<p>一些关键词搜索结果比较敏感，政府就会干涉，要求搜索引擎屏蔽这些词的搜索结果，或者只显示一部分新闻站内页，基本上就是屏蔽词。</p>
<p>这些屏蔽关键词，我们seo是无法将排名做上去的，所以在准备上线seo站点之前，一定要确保过滤了屏蔽词</p>
<p>越是大型平台、使用的人越多的平台，一般控制会更加严格，像百度，屏蔽词非常多</p>
<p>筛选屏蔽词之前，需要先设置好本地电脑的网络环境，一定要和目标客户在同一个网络环境，这样尽量减小关键词搜索结果的差异；</p>
<h3 id="1-先设置好电脑的环境">1、先设置好电脑的环境</h3>
<p>这一步非常关键，现在的搜索引擎都会根据不同地域推荐不同的搜索结果，所以，我们在准备整理关键词之前，一定要先确保电脑的网络环境可以定位到目标的国家或者地区，比如我们需要整理日语关键词，那我们需要使用vpn连接日本地区，当确认我们电脑的ip已经显示在日本然后再开始整理关键词；</p>
<p>现在我们整理中文词，也是需要先将电脑连接到中国大陆地区，再进行关键词整理</p>
<p>我以Bing为例进行说明：我们打开https://cn.bing.com 因为Bing有国际版本、还有中国版，所以我们打开Bing中国版进行数据查询</p>
<p>这个是使用菲律宾IP查询 凯发K8国际 的结果：</p>
<p><img src="/file/img/remote/2026/07/31/1ce07e78-74ea-492a-85cc-53d955de7cb7.png" alt="image-20251030133458686" loading="lazy" decoding="async"/></p>
<p>这个是使用香港IP查询 凯发K8国际 的结果：</p>
<p><img src="/file/img/remote/2026/07/31/4dd9edd8-2e42-4a10-97b5-283c86c9431a.png" alt="image-20251030133246399" loading="lazy" decoding="async"/></p>
<p>这个是使用 中国天津IP查询 凯发K8国际 的结果：</p>
<p><img src="/file/img/remote/2026/07/31/ef749d6b-f029-4bde-880a-cf1acf5129a1.png" alt="image-20251030133607936" loading="lazy" decoding="async"/></p>
<p>VPN工具，可以从这个页面获取相关的账户：</p>
<p>👉  <a href="https://www.seo.ga/17" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.seo.ga/17</a></p>
<p>我们连接好中国的VPN，使用 <a href="https://www.ip138.com" target="_blank" rel="nofollow ugc noopener noreferrer">https://www.ip138.com</a> 查询当前外网的ip地址，确保已经属于中国了</p>
<p><img src="/file/img/remote/2026/07/31/89e30c52-c391-4487-b493-6111a3d8cb05.png" alt="image-20251030152720425" loading="lazy" decoding="async"/></p>
<h3 id="2-特别重要-关于屏蔽词的判断">2、特别重要：==关于屏蔽词的判断==</h3>
<h4 id="屏蔽词案例">屏蔽词案例</h4>
<p>比如使用百度查询 凯发国际  这是一个屏蔽词，查询的结果都是一些大型平台的内页，基本上没有网站的首页排名上来的；</p>
<p><img src="/file/img/remote/2026/07/31/1d6da99a-f825-4dc3-a715-f29da6c06b27.png" alt="image-20251030153248633" loading="lazy" decoding="async"/></p>
<p>凯发国际  在 <a href="https://cn.bing.com" target="_blank" rel="nofollow ugc noopener noreferrer">https://cn.bing.com</a> 里面也是屏蔽词，都是这种大型新闻平台的新闻页面，这些的关键词，我们是没有办法通过seo的方法把排名做上去的；</p>
<p><img src="/file/img/remote/2026/07/31/3f85dcba-5471-49ff-b425-63f4086e1222.png" alt="image-20251030153455599" loading="lazy" decoding="async"/></p>
<p>下面也是Bing的屏蔽词，排名页面都是大型新闻平台的内页；</p>
<p><img src="/file/img/remote/2026/07/31/3c4f9d9a-af5d-4d6a-8c71-c9db3d2c4036.png" alt="image-20251031101502891" loading="lazy" decoding="async"/></p>
<p>下面是百度的屏蔽词案例，基本上都是新闻内页、或者是百度产品的内页，没有我们同行做的seo排名站点，这些词都是被百度屏蔽的，我们seo是无法把排名做上去的；</p>
<p><img src="/file/img/remote/2026/07/31/25d0c48c-607a-46dd-8599-f2987eb8a572.png" alt="image-20251031101659754" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/2949f564-89c9-4b4b-b48b-c5a222f79b87.png" alt="image-20251031101725161" loading="lazy" decoding="async"/></p>
<h4 id="正常词案例">正常词案例</h4>
<p>凯发注册平台  这是一个正常的词，下面是 这个关键词排名的截图</p>
<p>前两位是同行做的网站内页排名；</p>
<p>第三位，是竞争网站首页的排名；</p>
<p><img src="/file/img/remote/2026/07/31/9c2fb75b-508c-4215-b460-c9b69e8ece09.png" alt="image-20251030154942607" loading="lazy" decoding="async"/></p>
<p>没有被屏蔽的正常关键词排名结果应该是这们的：</p>
<p>页面上有 相关搜索词推荐</p>
<p>排名结果中有较多的网站首页排名上来的</p>
<p>【==凯发国际 在中国大陆是屏蔽关键词，但是，通过海外的ip搜索的时候却没有屏蔽，下面是通过海外ip查询的结果！只是为了举例方便大家理解正常seo关键词排名结果==】</p>
<p><img src="/file/img/remote/2026/07/31/47fcb85c-a396-4f9b-9e54-a812e83f4115.png" alt="image-20251030155614116" loading="lazy" decoding="async"/></p>
<p>下面这个关键词 k8凯发集团 在百度是正常词，搜索结果如下：【可以看到在百度搜索 k8凯发集团 关键词的时候，排名在首页绝大多数是网站首页排名上来的，可以打开看一下，基本都会跳转到同行的博彩站点，我们就是需要筛选出这种可以正常排名的关键词】</p>
<p><img src="/file/img/remote/2026/07/31/3d72c23c-9fc4-42c7-a119-26bbba591fd5.png" alt="image-20251031100224703" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/5d460afd-e1fe-40c9-b1e5-8126ba027898.png" alt="image-20251031100249050" loading="lazy" decoding="async"/></p>
<p>下面以Bing举例，先进入 <a href="https://cn.bing.com" target="_blank" rel="nofollow ugc noopener noreferrer">https://cn.bing.com</a> 记得一定要选择国内版，然后搜索关键词 k8凯发集团 ，这是一个正常词；可以看下面的搜索结果，基本上都是同行做的seo网站首页排名上来的；</p>
<p><img src="/file/img/remote/2026/07/31/4d125ffc-c374-4291-b71a-a748aa59c29c.png" alt="image-20251031100529626" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/ca877549-7032-4e5a-8d21-998c54697909.png" alt="image-20251031100556258" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/8419cc3f-d995-45b0-850c-bba2fb17ac69.png" alt="image-20251031100626296" loading="lazy" decoding="async"/></p>
<p><img src="/file/img/remote/2026/07/31/d810fb55-9d9c-4dcc-96d7-045add09d5c7.png" alt="image-20251031100808826" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/1</guid>
      <pubDate>Thu, 30 Jul 2026 20:37:07 +0700</pubDate>
    </item>
    <item>
      <title>使用SEO工具批量查询屏蔽关键词的教程</title>
      <link>https://seo.ga/p/post/2</link>
      <description>使用SEO工具批量查询屏蔽关键词的教程 这个是最近找到的批量过滤屏蔽关键词的SEO工具，可以协助我们过滤百度、搜狗、360、必应、谷歌等平台 1、打开软件，在右侧点击 百度 看到下拉菜单，选择需要查询的搜索平台，比如筛选Bing的屏蔽词，就选择必应；点击 输入关键词 打开新的弹窗，粘贴上需要查询的关键词； 2、点击 左侧的设置【进入设置按钮之后，设置两个字就会变成关闭，点击关闭表示从设置子菜单中退...</description>
      <content:encoded><![CDATA[<h2 id="使用seo工具批量查询屏蔽关键词的教程">使用SEO工具批量查询屏蔽关键词的教程</h2>
<p>这个是最近找到的批量过滤屏蔽关键词的SEO工具，可以协助我们过滤百度、搜狗、360、必应、谷歌等平台</p>
<p><img src="/file/img/remote/2026/07/31/f4c39596-af4f-4754-a63e-7aa28845924d.png" alt="批量过滤屏蔽关键词的SEO工具，可以协助我们过滤百度、搜狗、360、必应、谷歌等平台 " loading="lazy" decoding="async"/></p>
<ul>
<li>1、打开软件，在右侧点击 百度 看到下拉菜单，选择需要查询的搜索平台，比如筛选Bing的屏蔽词，就选择必应；点击 <code>输入关键词</code> 打开新的弹窗，粘贴上需要查询的关键词；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/dfade9dc-7b98-4ed1-8c6d-4cd9c1fee999.png" alt="点击 百度 看到下拉菜单，选择需要查询的搜索平台，比如筛选Bing的屏蔽词，就选择必应" loading="lazy" decoding="async"/></p>
<ul>
<li>2、点击 左侧的<code>设置</code>【进入<code>设置</code>按钮之后，<code>设置</code>两个字就会变成<code>关闭</code>，点击<code>关闭</code>表示从<code>设置</code>子菜单中退出】；在设置页面，可以配置线程数、查询页数、查询间隔、以及配置验证码平台、代理信息；目前我是使用快帆连接上国内的ip进行查询，暂时没有设置这里的代理信息；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/44d657e2-01ee-4409-ac49-2a2dbc9eaa7f.png" alt="点击 左侧的设置【进入设置按钮之后，设置两个字就会变成关闭，点击关闭表示从设置子菜单中退出】" loading="lazy" decoding="async"/></p>
<ul>
<li>3、我在上一步的线路数中设置为3，点击开始查询之后，软件会自动打开3个窗口，进行查询；正常的词前面会显示绿色的对勾、屏蔽词前面会显示紫色的叉叉；</li>
</ul>
<p><img src="/file/img/remote/2026/07/31/74a6b219-7c83-4446-ae95-c1878cb2ec86.png" alt="线路数中设置为3，点击开始查询之后，软件会自动打开3个窗口，进行查询" loading="lazy" decoding="async"/></p>
<p>屏蔽词筛选软件工作的原理：</p>
<p>软件会查询每个关键词排名的结果，如果我在 <code>设置</code> 中限制查询 <code>页数</code> 为1页，软件会判断搜索结果的首页排名网站中，有没有是网站首页的排名，即判断排名网址是不是 www开头、或者是一级域名、或者是m的二级域名页面，有这些排名结果就表示是正常词、没有的话就表示是屏蔽词；和我们手动查询、判断的标准差不多；</p>
<p><img src="/file/img/remote/2026/07/31/f8b8897d-7ab9-4ba9-9111-75ec4442b427.png" alt="屏蔽词筛选软件工作的原理" loading="lazy" decoding="async"/></p>
]]></content:encoded>
      <guid>https://seo.ga/p/post/2</guid>
      <pubDate>Fri, 31 Jul 2026 02:09:17 +0700</pubDate>
    </item>
  </channel>
</rss>