<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title>豆博</title>
		<link>http://fandai.free.fr/</link>
		<description>豆子的私人博客,好记性不如烂笔头</description>
		<copyright>Powered by SaBlog-X. Copyright (C) 2003-2012.</copyright>
		<generator>SaBlog-X Version 2.0 Build 20120305</generator>
		<lastBuildDate>Mon, 14 Sep 2026 16:23:20 +0000</lastBuildDate>
		<ttl>30</ttl>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=2037</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=2037</guid>
			<title>把 WordPress 官方历史版本保存下来：一次 886 个版本的归档记录</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : <h2>把 WordPress 官方历史版本保存下来：一次 886 个版本的归档记录</h2>
最近又折腾了一件比较“老”的事情：把 WordPress 官方提供的历史版本尽可能完整地保存下来。

豆子一直比较喜欢保存一些以前的软件版本。很多软件在当年到处都能下载，但过了几年以后，原来的下载地址可能没了，第三方网站也可能消失。等真正想找的时候，反而不一定还能找到。

WordPress 也是一样。

现在大家安装 WordPress，基本都是直接下载最新版，很少有人会去关心十几年前的版本。不过对豆子来说，这些历史版本本身就是互联网发展过程中的一部分，所以还是想把它们保存下来。
<h2>先从官方历史版本页面开始</h2>
WordPress 官方其实一直保留着历史版本下载页面：

<a href="https://wordpress.org/download/releases/" target="_blank" rel="noopener noreferrer">https://wordpress.org/download/releases/</a>

这个页面基本可以看作 WordPress 官方历史版本档案库，里面能够找到从早期版本一直到现在的正式版本。

不过页面里面除了正式发布版本之外，还能看到 Beta、RC、Alpha、Nightly 以及 MU 等版本。

豆子的需求比较简单：<strong>只保存正式发布的 WordPress ZIP 安装包。</strong>

所以 Beta、RC、Alpha、Nightly、MU 这些版本就不考虑了。
<h2>为什么没有一个一个手动下载</h2>
最开始其实也想过手动下载。

但是看了一下版本数量以后就放弃了。

WordPress 从早期版本一直发展到现在，正式版本加起来已经是几百个。如果一个一个点下载，再一个一个建立目录保存，实在太麻烦了。

既然官方页面本身就有完整的下载链接，那就干脆让程序自己把链接找出来，然后自动下载。

豆子的要求也没有那么复杂：
<ul>
 	<li>只要正式版本</li>
 	<li>只下载 ZIP</li>
 	<li>按照 1.X、2.X、3.X 这样的大版本分类</li>
 	<li>保持官方原始文件名</li>
 	<li>已经下载过的文件不要重复下载</li>
 	<li>下载失败以后可以重新运行程序继续下载</li>
</ul>
这样基本就够用了。
<h2>先统计一下到底有多少正式版本</h2>
在真正开始下载之前，豆子先写了一个简单的 PowerShell 正则，把官方页面中的 WordPress ZIP 文件名提取出来。

核心匹配规则其实很简单：
<pre><code>$pattern = 'wordpress-([0-9]+(?:\.[0-9]+)*(?:-(?:platinum|gold))?)\.zip'</code></pre>
这里特意保留了 <code>-platinum</code> 和 <code>-gold</code> 这种历史版本名称。

例如：
<pre><code>wordpress-1.0-platinum.zip
wordpress-1.2.zip
wordpress-2.0.zip
wordpress-4.9.26.zip
wordpress-6.8.2.zip
wordpress-7.1.zip</code></pre>
然后按照主版本号进行统计。
<h2>最终统计结果</h2>
实际从 WordPress 官方历史版本页面中统计出来，一共有：

<strong>886 个正式版本 ZIP 文件。</strong>

按照大版本分类以后是：
<table>
<thead>
<tr>
<th>版本</th>
<th>数量</th>
</tr>
</thead>
<tbody>
<tr>
<td>1.X</td>
<td>9</td>
</tr>
<tr>
<td>2.X</td>
<td>41</td>
</tr>
<tr>
<td>3.X</td>
<td>150</td>
</tr>
<tr>
<td>4.X</td>
<td>357</td>
</tr>
<tr>
<td>5.X</td>
<td>217</td>
</tr>
<tr>
<td>6.X</td>
<td>105</td>
</tr>
<tr>
<td>7.X</td>
<td>6</td>
</tr>
<tr>
<td><strong>合计</strong></td>
<td><strong>886</strong></td>
</tr>
</tbody>
</table>
看到这个数量的时候还是有点意思的。

尤其是 4.X，一个大版本就有 357 个正式 ZIP，确实不少。

当然，这里统计的是<strong>正式版本</strong>，并不是 WordPress 历史上所有曾经出现过的开发版本。
<h2>有些版本中间没有连续编号</h2>
在统计的时候还发现了一些版本号并不是完全连续的情况。

例如：
<pre><code>3.9.37
3.9.39</code></pre>
中间没有 3.9.38。

还有：
<pre><code>5.0.4
5.0.6</code></pre>
中间没有 5.0.5。

6.5 这一系列也存在类似情况。

刚开始还以为是自己的程序漏掉了版本，后来重新检查官方页面，确认这些确实就是官方当前保存的正式发布版本。

所以这种情况不用自己补，也没有必要为了“连续编号”去找第三方文件。

既然目标是做<strong>官方历史版本归档</strong>，那就按照官方实际存在的文件保存即可。
<h2>目录结构也尽量简单</h2>
豆子没有按照每一个小版本再建立目录，而是直接按照大版本分类。

最终目录结构就是这样：
<pre><code>WordPress 官方历史版本/
├── 1.X/
├── 2.X/
├── 3.X/
├── 4.X/
├── 5.X/
├── 6.X/
└── 7.X/</code></pre>
例如：
<pre><code>WordPress 官方历史版本/
├── 1.X/
│   ├── wordpress-1.0-platinum.zip
│   ├── wordpress-1.2.zip
│   └── ...
│
├── 2.X/
│   ├── wordpress-2.0.zip
│   ├── wordpress-2.0.1.zip
│   └── ...
│
├── 4.X/
│   ├── wordpress-4.9.zip
│   ├── wordpress-4.9.1.zip
│   └── ...
│
└── 7.X/
    ├── wordpress-7.0.zip
    └── wordpress-7.1.zip</code></pre>
这样以后自己找版本的时候也比较直观。
<h2>为什么没有继续使用 Cloudflare Worker 下载</h2>
其实最开始豆子是考虑过直接使用 Cloudflare Worker 来做的。

Worker 本身也确实可以访问 WordPress 官方下载地址，然后把文件下载下来，再进一步处理。

但是实际测试以后发现一个问题：前面十几个文件通常没什么问题，连续下载一段时间以后，就开始出现 <strong>Network Error</strong>。

这让豆子感觉 Worker 并不太适合拿来做这种连续、大量的历史文件下载任务。

毕竟这不是下载一个文件，而是一次要处理几百个 ZIP。

而且豆子的目标只是把文件保存下来，并不是一定要把所有事情都塞进 Cloudflare Worker。

所以后来干脆换了一个最简单的办法。
<h2>最后改成 Windows + curl 下载</h2>
Windows 现在本身就可以直接使用 <code>curl.exe</code>，不用为了这个小任务再安装 Python，也不用额外安装什么下载工具。

实际测试以后，直接从 Windows 下载反而非常稳定。

下载地址统一使用 WordPress 官方的：
<pre><code>https://downloads.wordpress.org/release/</code></pre>
例如：
<pre><code>https://downloads.wordpress.org/release/wordpress-6.8.2.zip</code></pre>
所以最后的下载流程就变得非常简单：
<ol>
 	<li>读取 WordPress 官方历史版本页面</li>
 	<li>自动找出正式版本 ZIP</li>
 	<li>提取版本号</li>
 	<li>根据主版本号决定保存到哪个目录</li>
 	<li>使用 curl.exe 下载</li>
 	<li>已经存在的文件直接跳过</li>
 	<li>下载失败自动重试</li>
 	<li>最后统计成功、跳过和失败数量</li>
</ol>
<h2>下载程序</h2>
为了以后重复使用，豆子把程序拆成了两个文件。

一个是启动程序：
<pre><code>WordPress官方历史版本下载.bat</code></pre>
另外一个是真正负责工作的 PowerShell：
BAT 文件本身非常简单，主要就是调用 PowerShell：
<pre><code>@echo off
chcp 65001 &gt;nul

title WordPress Official Release Archive Downloader

echo.
echo ============================================================
echo       WordPress Official Release Archive Downloader
echo ============================================================
echo.

powershell.exe -NoProfile -ExecutionPolicy Bypass -File "%~dp0WordPress官方历史版本下载.ps1"

echo.
echo ============================================================
echo                         Finished
echo ============================================================
echo.

pause</code></pre>
<pre><code>WordPress官方历史版本下载.ps1</code></pre>
<pre><code>
# ============================================================
# WordPress Official Historical Release Downloader
# ============================================================
# Source:
# https://wordpress.org/download/releases/
#
# Rules:
# - Official formal releases only
# - ZIP only
# - Exclude Beta / RC / Alpha / Nightly / MU
# - Archive 1.X - 7.X
# - Skip existing files
# - Retry failed downloads
# - Download directly from downloads.wordpress.org
# ============================================================

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8

$ErrorActionPreference = "Stop"

$BaseDir = Split-Path -Parent $MyInvocation.MyCommand.Path

$Root = Join-Path $BaseDir "WordPress 官方历史版本"

$ArchiveUrl = "https://wordpress.org/download/releases/"

Write-Host ""
Write-Host "============================================================"
Write-Host " WordPress Official Historical Release Downloader"
Write-Host "============================================================"
Write-Host ""

# ------------------------------------------------------------
# Create root directory
# ------------------------------------------------------------

if (!(Test-Path -LiteralPath $Root)) {

    New-Item `
        -ItemType Directory `
        -Path $Root `
        -Force | Out-Null
}

# ------------------------------------------------------------
# Create version directories
# ------------------------------------------------------------

for ($major = 1; $major -le 7; $major++) {

    $dir = Join-Path $Root ("{0}.X" -f $major)

    if (!(Test-Path -LiteralPath $dir)) {

        New-Item `
            -ItemType Directory `
            -Path $dir `
            -Force | Out-Null
    }
}

# ------------------------------------------------------------
# Read official archive
# ------------------------------------------------------------

Write-Host "[1] Reading official release archive..."
Write-Host ""

try {

    $response = Invoke-WebRequest `
        -Uri $ArchiveUrl `
        -UseBasicParsing `
        -TimeoutSec 60

    $html = $response.Content
}
catch {

    Write-Host ""
    Write-Host "[FAILED] Cannot read official archive."
    Write-Host $_.Exception.Message
    Write-Host ""

    pause
    exit 1
}

Write-Host "[OK] Official archive loaded."
Write-Host ""

# ------------------------------------------------------------
# Extract release ZIP filenames
#
# Important:
# Match filename instead of complete URL.
# This is the parser already verified successfully.
# ------------------------------------------------------------

$pattern = 'wordpress-([0-9]+(?:\.[0-9]+)*(?:-(?:platinum|gold))?)\.zip'

$matches = [regex]::Matches(
    $html,
    $pattern,
    [System.Text.RegularExpressions.RegexOptions]::IgnoreCase
)

$versions = @{}

foreach ($m in $matches) {

    $v = $m.Groups[1].Value.Trim()

    # Normal formal release
    if ($v -match '^\d+(?:\.\d+)*$') {

        $versions[$v] = $true

        continue
    }

    # Historical formal release
    if ($v -match '^\d+\.\d+-(?:platinum|gold)$') {

        $versions[$v] = $true
    }
}

# ------------------------------------------------------------
# Sort versions numerically
# ------------------------------------------------------------

$sortedVersions = $versions.Keys | Sort-Object {

    $n = $_ `
        -replace '-platinum$','' `
        -replace '-gold$',''

    [version]$n
}

$total = $sortedVersions.Count

Write-Host "============================================================"
Write-Host " Detection Result"
Write-Host "============================================================"
Write-Host ""

Write-Host ("Official release ZIP count: {0}" -f $total)

Write-Host ""

# ------------------------------------------------------------
# Statistics
# ------------------------------------------------------------

for ($major = 1; $major -le 7; $major++) {

    $count = @(
        $sortedVersions |
        Where-Object {
            $_ -match "^$major\."
        }
    ).Count

    Write-Host ("  {0}.X : {1}" -f $major, $count)
}

Write-Host ""

# ------------------------------------------------------------
# Download statistics
# ------------------------------------------------------------

$downloaded = 0
$skipped = 0
$failed = 0

$index = 0

Write-Host "============================================================"
Write-Host " Starting download"
Write-Host "============================================================"
Write-Host ""

# ------------------------------------------------------------
# Download each release
# ------------------------------------------------------------

foreach ($version in $sortedVersions) {

    $index++

    # Determine major version
    if ($version -notmatch '^(\d+)\.') {

        continue
    }

    $major = [int]$Matches[1]

    # Only archive 1.X - 7.X
    if ($major -lt 1 -or $major -gt 7) {

        continue
    }

    $folder = Join-Path `
        $Root `
        ("{0}.X" -f $major)

    $file = "wordpress-$version.zip"

    $target = Join-Path `
        $folder `
        $file

    $url = "https://downloads.wordpress.org/release/$file"

    Write-Host ""
    Write-Host "------------------------------------------------------------"
    Write-Host ("[{0}/{1}] {2}" -f $index, $total, $file)
    Write-Host "------------------------------------------------------------"

    # --------------------------------------------------------
    # Existing file
    # --------------------------------------------------------

    if (Test-Path -LiteralPath $target) {

        try {

            $size = (
                Get-Item -LiteralPath $target
            ).Length

            if ($size -gt 1024) {

                Write-Host "[SKIP] File already exists."
                $skipped++

                continue
            }

            Remove-Item `
                -LiteralPath $target `
                -Force `
                -ErrorAction SilentlyContinue
        }
        catch {

            Remove-Item `
                -LiteralPath $target `
                -Force `
                -ErrorAction SilentlyContinue
        }
    }

    # --------------------------------------------------------
    # Download
    # --------------------------------------------------------

    $success = $false

    for ($try = 1; $try -le 4; $try++) {

        Write-Host ("Download attempt {0}/4..." -f $try)

        try {

            &amp; curl.exe `
                -L `
                --fail `
                --retry 2 `
                --retry-delay 5 `
                --connect-timeout 30 `
                --max-time 900 `
                --output "$target" `
                "$url"

            if (
                $LASTEXITCODE -eq 0 `
                -and (Test-Path -LiteralPath $target)
            ) {

                $size = (
                    Get-Item -LiteralPath $target
                ).Length

                if ($size -gt 1024) {

                    $success = $true

                    break
                }
            }
        }
        catch {

            # Retry below
        }

        Remove-Item `
            -LiteralPath $target `
            -Force `
            -ErrorAction SilentlyContinue

        if ($try -lt 4) {

            Write-Host "Waiting 5 seconds before retry..."

            Start-Sleep -Seconds 5
        }
    }

    # --------------------------------------------------------
    # Result
    # --------------------------------------------------------

    if ($success) {

        Write-Host "[OK] Download completed."

        $downloaded++
    }
    else {

        Write-Host "[FAILED] Download failed."

        $failed++
    }

    # --------------------------------------------------------
    # Delay between files
    # --------------------------------------------------------

    Start-Sleep -Seconds 5
}

# ------------------------------------------------------------
# Final report
# ------------------------------------------------------------

Write-Host ""
Write-Host "============================================================"
Write-Host " Download Finished"
Write-Host "============================================================"
Write-Host ""

Write-Host ("Official releases : {0}" -f $total)
Write-Host ("Downloaded        : {0}" -f $downloaded)
Write-Host ("Already existed   : {0}" -f $skipped)
Write-Host ("Failed            : {0}" -f $failed)

Write-Host ""
Write-Host "Archive directory:"
Write-Host $Root

Write-Host ""
Write-Host "Run this program again to retry failed or missing files."
Write-Host "Existing files will automatically be skipped."

Write-Host ""
Write-Host "============================================================"

pause
</code></pre>
以后需要继续下载的时候，直接双击 BAT 就可以。

PowerShell 程序会自动检查哪些文件已经存在。

所以即使中途关掉电脑，或者某几个版本下载失败了，下一次重新运行也不用从头开始。
<h2>实际运行情况</h2>
目前实际测试下来，Windows 直接下载还是比较稳定的。

早期版本的 ZIP 文件非常小，所以下载速度很快。

运行过程中已经连续下载了几十个版本，没有出现错误。

当然，越往后面的版本文件越大，整个任务所需要的时间也会明显增加。

豆子在程序里给每个文件之间增加了几秒钟的间隔，并且单个文件支持多次重试。

这样做主要也是为了稳一点。

反正这些文件又不是着急马上用，慢一点没关系，能够完整保存下来就行。
<h2>为什么豆子还是想把这些老版本保存下来</h2>
其实豆子并没有打算把这些几百个 WordPress 版本全部重新安装一遍。

保存它们的意义更多还是在于<strong>留档</strong>。

以前很多软件都是这样。

在软件最流行的时候，到处都有下载地址，根本不会觉得某个版本有什么稀奇。

但是十几年以后，情况就完全不一样了。

官方网站可能已经不再提供下载，原来的第三方下载站可能关闭，论坛附件也可能失效。

到了那个时候，再想找一个十几年前的软件版本，往往比想象中困难得多。

所以看到官方还保留着完整的历史版本，豆子觉得还是值得顺手保存一份。
<h2>以后再慢慢整理</h2>
目前豆子的想法也很简单。

先把这些官方 ZIP 全部保存下来，放在本地，然后再同步到 Google Drive。

至于以后要不要进一步做版本索引、自动校验文件、建立网页档案之类的东西，暂时都不考虑。

先把东西留住。

整理其实只是顺手的事情。

对于这种历史软件归档来说，豆子觉得最重要的还是这一点：<strong>趁现在还能找到，就先保存一份。</strong>

以后哪天真的需要某个老版本的时候，至少不用再满互联网到处找。

而且这些东西本身也是 WordPress 发展历史的一部分。

从早期的 1.X，一直到现在的 7.X，能够把这么多年的版本完整地放在自己的硬盘和网盘里，看着其实也挺有意思。

这次就先把 WordPress 的历史版本保存下来。

以后有时间，再继续整理其他以前折腾过的软件。]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=2037</link>
			<category domain="http://fandai.free.fr/?cid=19">豆子原创</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%bd%af%e4%bb%b6%e6%94%b6%e8%97%8f">软件收藏</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%8e%86%e5%8f%b2%e7%89%88%e6%9c%ac">历史版本</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=powershell">PowerShell</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=wordpress">WordPress</category>
			<pubDate>Fri, 11 Sep 2026 04:43:35 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=2035</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=2035</guid>
			<title>关于这两天博客发的测试文章事宜</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) :       这两天因为豆子宝贝才出院在家里,豆子觉得压力大的时候就想折腾一下博客,然后分散下生活的苦.所以这两天空暇的时候写了一个同步插件,为了测试就发了几篇测试日志,看备份站的同步是否执行.昨天基本上已经测试完成,所以把测试文章删除处理了.
   
       这几天测试了两个同步插件,同步备份到wordpress和sablog,目前测试结果ok.算是一个小小的欣慰吧.]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=2035</link>
			<category domain="http://fandai.free.fr/?cid=24">豆子物语</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%bf%9c%e7%a8%8b%e5%90%8c%e6%ad%a5">远程同步</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%90%8c%e6%ad%a5">同步</category>
			<comments>http://fandai.free.fr/?action=show&amp;id=2035#comments</comments>
			<pubDate>Mon, 07 Sep 2026 03:38:18 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=2016</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=2016</guid>
			<title>DJ EmailPublish 1.8.1 测试</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : This is a test for email publish log.

测试日志功能。]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=2016</link>
			<category domain="http://fandai.free.fr/?cid=605">远程同步</category>
			<comments>http://fandai.free.fr/?action=show&amp;id=2016#comments</comments>
			<pubDate>Thu, 03 Sep 2026 05:14:41 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=2015</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=2015</guid>
			<title>Blogger 博客同步测试</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : 同步测试发送到Blogger博客.]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=2015</link>
			<category domain="http://fandai.free.fr/?cid=605">远程同步</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%bf%9c%e7%a8%8b%e5%90%8c%e6%ad%a5">远程同步</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%90%8c%e6%ad%a5">同步</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=blogger">blogger</category>
			<pubDate>Thu, 03 Sep 2026 04:48:10 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=2005</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=2005</guid>
			<title>太难了</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : 2025年的8月31日，豆子宝贝凌晨1点半突发脑出血，导致右侧身体偏瘫，在新桥医院住院1个月后转入康复医院康复4个多月，目前语言和右侧肢体还是无法正常活动。也是从豆子宝贝生病以后，豆子这几个月都在医院陪伴，没有办法上班。临近春节，由于康复医院医生休息，所以也暂时出院回家休养，等节后再考虑去留问题。如果不是家里人和朋友接济，豆子都不知道怎么生活下去。真的太难了！

博客也会暂时停更了。]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=2005</link>
			<category domain="http://fandai.free.fr/?cid=24">豆子物语</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%84%91%e5%87%ba%e8%a1%80">脑出血</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%81%8f%e7%98%ab">偏瘫</category>
			<comments>http://fandai.free.fr/?action=show&amp;id=2005#comments</comments>
			<pubDate>Fri, 20 Feb 2026 01:47:12 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=2002</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=2002</guid>
			<title>Free.fr 貌似再次更新改版(再次检测同步)</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) :        今天无意中登录free.fr，发现改版了，就闲着没事把新版本的翻译搞了一下。
       主号：
       <img src="https://imgcdn.doublog.com/imgs/2025/06/6a399f1fdad85f83.png" width="1077" height="568" class="alignnone size-full" />

       子号：
        <img src="https://imgcdn.doublog.com/imgs/2025/06/e054444c8814bc3c.png" width="850" height="866" class="alignnone size-full" />

        闲着没事，就随便折腾了一下。仅供参考。


      Sync Update Test 2]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=2002</link>
			<category domain="http://fandai.free.fr/?cid=19">豆子原创</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e7%bf%bb%e8%af%91">翻译</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=free-fr">free.fr</category>
			<pubDate>Sat, 21 Jun 2025 05:29:31 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=2000</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=2000</guid>
			<title>挣扎着活着，但我没有停下</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : <img src="https://imgcdn.doublog.com/imgs/2025/04/bc9400b0b23a89ce.png" width="1024" height="1536" class="alignnone size-full" />
<blockquote>“路漫漫其修远兮，吾将上下而求索。” —— 屈原

不是没想过放弃，
只是放弃太容易，
而活着，
需要更多勇气。</blockquote>


<h2>【引言】</h2>

这不是一篇鸡汤，也不是一封自怜的长信。只是写给此刻还在坚持、在黑暗中寻找微光的自己。或许很久没有更新，是因为连表达的力气都失去了。而今天，豆子终于坐下来，写点什么。不是为了说服谁，也不是为了倾诉给谁，只是想对自己说一声：

还在努力活着，已经很不容易。

<h2>【正文】</h2>

确实，好久没有心情更新博客了。过去这几个月，发生了太多太多的事情，让豆子至今都提不起精神来写点什么。或许，在可见的未来，也不会有什么更新了吧。

大家常说“随遇而安”，可豆子既安不了，也不能安。现在，只是想尽力地活下去，仅此而已。有时候，豆子也清楚自己的情绪偏向负面，可那些挥之不去的念头，总是在深夜悄悄涌上心头。那一堆数据和数字，豆子已经懒得再去管了。此刻，只想先把眼前的每一天过下去，哪怕只是挣扎着前行，也许这就是希望的开始。

可说这些的时候，豆子自己也未必真的确定。未来会走向何方，眼前是一团迷雾，看不清方向。既不愿随波逐流，却又无力改变现状。尤其是人到中年，身体的每况愈下，内心的焦虑不安，再加上被现实一遍遍碾压的疼痛，让人愈发迷茫。曾有人说：活在当下，过好眼前最重要。毕竟，未来充满不确定。

正因如此，豆子更不愿让亲人重复自己的路。这一切，也许可以用两个字来概括：挣扎。

<h2>【内心独白 · 诗】</h2>

《只想努力地活下去》

有时候，我连呼吸都觉得沉重，
像被无形的手按住了胸口，
但我知道，那不是病，
是生活的重量。

人到中年，身体开始悄悄背叛，
精神却还在负重前行。
我不想随波逐流，
可水太深，岸太远。
我想看清前方的路，
可眼里满是生活的烟尘。

数字成了一堆麻木的符号，
时间像漏沙，一点点滑走。
我对自己说，先活下去，
哪怕只是挣扎着活。

不是没想过放弃，
只是放弃太容易，
而活着，
需要更多勇气。

我不知道希望在哪里，
可我知道，
有些人，
值得我继续走下去。

<h3>【结语】</h3>
也许，有人会看到这些文字；
也许，没有人会看见。
但它真实地存在过，是某个夜晚的我，
与自己的一次静静交谈。

如果未来的豆子再回来看到这一页，
请记得：你曾在最黯淡的时刻，也没完全熄灭过心里的光。]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=2000</link>
			<category domain="http://fandai.free.fr/?cid=19">豆子原创</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%b4%9f%e9%87%8d%e5%89%8d%e8%a1%8c">负重前行</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e7%94%9f%e6%b4%bb%e7%9a%84%e9%87%8d%e9%87%8f">生活的重量</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e6%94%be%e5%bc%83">放弃</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e6%8c%a3%e6%89%8e">挣扎</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%8b%87%e6%b0%94">勇气</category>
			<pubDate>Wed, 30 Apr 2025 05:09:02 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1998</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1998</guid>
			<title>一则声明</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) :       本以为之前eu.org被盗一事就算是这样过去了，没想到居然还有后续。无意中发现，盗号狗在盗号以后，留下的单页上居然<strong>留的豆子的邮件地址</strong>。真的是怪事年年有，今年特别多。真不知道，豆子是怎么招惹到了这只盗号狗。
       更让豆子不可思议的是，豆子其中一个申请过za.net免费米的邮箱也被盗，关键的问题是，那个邮箱豆子还正常登录着，居然都被盗号狗偷走了，还把豆子的免费米给删除，然后把邮箱账号也删除了，豆子真的是哭笑不得。这几个免费米自从当年做了Proxy以后，豆子就没正儿八经的用过，也就是偶尔拿来测试下东西而已，居然没想到会有人看的上它。真的是奇葩他妈给奇葩开门----奇葩到家了！

        豆子声明：本人未在其他任何地方留下自己邮箱账号，也从未偷盗别人账号，所有非豆子名下网站预留的豆子邮箱，豆子概不负责。那些（只）盗号狗真的是用心险恶！属于那种有娘生没娘养的。

<img src="https://imgcdn.doublog.com/imgs/2024/09/862bc0e3b55c974f.png" width="1119" height="438" class="alignnone size-full" />]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1998</link>
			<category domain="http://fandai.free.fr/?cid=24">豆子物语</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%a2%ab%e7%9b%97">被盗</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e7%9b%97%e5%8f%b7%e7%8b%97">盗号狗</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=za-net">za.net</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=eu-org">eu.org</category>
			<pubDate>Sat, 21 Sep 2024 06:56:22 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1996</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1996</guid>
			<title>整理出被盗eu.org玉米列表，注意避坑</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : 前几天豆子也做了说明，由于自己疏忽，没开启eu.org账户的2fa导致账户被盗，现整理出被盗玉米列表，以供提醒。

&nbsp;
<table style="height: 570px;" width="142">
<tbody>
<tr>
<td width="118">7788.eu.org</td>
</tr>
<tr>
<td>atproxy.eu.org</td>
</tr>
<tr>
<td>chun.eu.org</td>
</tr>
<tr>
<td>days.eu.org</td>
</tr>
<tr>
<td>diao.eu.org</td>
</tr>
<tr>
<td>douzi.eu.org</td>
</tr>
<tr>
<td>eruo.eu.org</td>
</tr>
<tr>
<td>huai.eu.org</td>
</tr>
<tr>
<td>imgs.eu.org</td>
</tr>
<tr>
<td>imjun.eu.org</td>
</tr>
<tr>
<td>mm.cn.eu.org</td>
</tr>
<tr>
<td>mmcn.eu.org</td>
</tr>
<tr>
<td>pics.eu.org</td>
</tr>
<tr>
<td>qiandao.eu.org</td>
</tr>
<tr>
<td>vbulletin.eu.org</td>
</tr>
<tr>
<td>xx.cn.eu.org</td>
</tr>
</tbody>
</table>
以上玉米已被盗，故由此产生的所有内容都与豆子无关。豆子现在还未替换全部被盗玉米，只能暂时出个公告，以作提醒。]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1996</link>
			<category domain="http://fandai.free.fr/?cid=24">豆子物语</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%a2%ab%e7%9b%97">被盗</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=eu-org">eu.org</category>
			<pubDate>Fri, 26 Jul 2024 04:43:03 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1993</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1993</guid>
			<title>豆博13岁啦！不过得来的却是悲催的故事……</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : <img class="alignnone size-full" src="https://imgcdn.doublog.com/imgs/2024/07/ba23f71b8dc88036.jpg" width="300" height="168" />

本来豆子博客13年纪念，应该是件比较开心的事情，但是让豆子感觉很悲催的是，有个EU.ORG账户被盗，导致部分正在使用的域名被Push，所以&amp;……心头一万头草泥马狂奔！今年本来就是豆子感觉特别特别不顺利的一年，没想到还发生了这样的事。发生在别人身上是故事，放到自己身上就变成了事故。由于这个账户不经常登录，所以就忽略了账户的保护，本身EU.ORG就提供了2FA，但是豆子却疏忽了。本以为免费的东西不会有人偷，没想到居然也有人盯上了。初步估计是弱密码被爆破吧。毕竟豆子从未使用公共机场爬墙。

现在只能手忙脚乱的去替换掉正在使用的域名，还是不免想吐槽！域名到不是很多，就10来个吧，现在被Push到了3个账号上。可怜了豆子的昵称米和图床米了。其他的到是无所谓。事已至此，只能替换掉了！把剩下的账户赶紧开了2FA，以免又给人惦记上了。。

先声明下：嘻哈图床域名更换为 <a href="https://hetu.eu.org" target="_blank" rel="noopener">https://hetu.eu.org</a> 举报邮箱也顺便替换掉了。其他的，还在考虑使用哪个域名进行替换，先这样吧，没啥心情写了。]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1993</link>
			<category domain="http://fandai.free.fr/?cid=24">豆子物语</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e6%82%b2%e5%82%ac">悲催</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%bc%80%e5%bf%83">开心</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=13%e5%91%a8%e5%b9%b4">13周年</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%a2%ab%e7%9b%97">被盗</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=eu-org">eu.org</category>
			<pubDate>Sat, 13 Jul 2024 08:14:34 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1988</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1988</guid>
			<title>一年更比一年难</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : 又是几个月没写过一个字了，不是不想写，而是不知道怎么写。这几个月，豆子除了春节回老家看了看年迈的母亲，呆了几天，然后回来就感冒了。吃药，打针，输液……各种方式都尝试了，结果还不见好。而且今年的温度真的过山车一样，像小孩子过家家。都说，身体力行，身体不好，工作生活也是一塌糊涂。上个班，也上的象个兼职。

豆子是真的很想很想好好的上班赚钱，想努力上岸，仅此而已。只不过，理想很丰满，现实很骨感。一天天的，耽误了太多的时间，浪费了大量的精力去做某些事情，真的很累很累。不单是身体的累，还有心里的累，无以言表。这几日，思前想后，真的找不到可以快速上岸的方法，而且在目前这种状态下，属于咬牙坚持，打落牙齿和血吞……

<img class="alignnone size-full" src="https://imgcdn.doublog.com/imgs/2024/05/43f99ce3bbbd184e.png" width="1024" height="1024" />]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1988</link>
			<category domain="http://fandai.free.fr/?cid=22">记事杂文</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e7%b4%af">累</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e6%84%9f%e5%86%92">感冒</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e4%b8%8a%e5%b2%b8">上岸</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e8%b1%86%e5%ad%90">豆子</category>
			<pubDate>Wed, 08 May 2024 05:45:17 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1983</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1983</guid>
			<title>记录一下vps挂载google drive</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : 为了上传文件方便一点，所以豆子偷空在vps上装了rclone，并使用rclone挂载google drive。为了查找方便，特记录一下步骤。
首先，
<h2>vps需要安装rclone。操作环境是ubuntu 20.04，其他系统雷同。</h2>
&nbsp;
<pre class="prettyprint linenums">apt install rclone -y
</pre>
查看rclone版本：
<pre class="prettyprint linenums">rclone --version
</pre>
显示：
<pre class="prettyprint linenums">rclone v1.50.2
- os/arch: linux/arm64
- go version: go1.13.8
</pre>
<h2>接下来配置rclone挂载</h2>
输入:
<pre class="prettyprint linenums">rclone config
</pre>
显示：
<pre class="prettyprint linenums">2023/12/25 09:15:24 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults
No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q&gt;
</pre>
输入n，回车
<h2>然后输入配置的名字（需要英文输入），然后回车</h2>
显示：
<pre class="prettyprint linenums">Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
 1 / 1Fichier
   \ "fichier"
 2 / Alias for an existing remote
   \ "alias"
 3 / Amazon Drive
   \ "amazon cloud drive"
 4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc)
   \ "s3"
 5 / Backblaze B2
   \ "b2"
 6 / Box
   \ "box"
 7 / Cache a remote
   \ "cache"
 8 / Citrix Sharefile
   \ "sharefile"
 9 / Dropbox
   \ "dropbox"
10 / Encrypt/Decrypt a remote
   \ "crypt"
11 / FTP Connection
   \ "ftp"
12 / Google Cloud Storage (this is not Google Drive)
   \ "google cloud storage"
13 / Google Drive
   \ "drive"
14 / Google Photos
   \ "google photos"
15 / Hubic
   \ "hubic"
16 / JottaCloud
   \ "jottacloud"
17 / Koofr
   \ "koofr"
18 / Local Disk
   \ "local"
19 / Mail.ru Cloud
   \ "mailru"
20 / Microsoft Azure Blob Storage
   \ "azureblob"
21 / Microsoft OneDrive
   \ "onedrive"
22 / OpenDrive
   \ "opendrive"
23 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
   \ "swift"
24 / Pcloud
   \ "pcloud"
25 / Put.io
   \ "putio"
26 / SSH/SFTP Connection
   \ "sftp"
27 / Transparently chunk/split large files
   \ "chunker"
28 / Union merges the contents of several remotes
   \ "union"
29 / Webdav
   \ "webdav"
30 / Yandex Disk
   \ "yandex"
31 / http Connection
   \ "http"
32 / premiumize.me
   \ "premiumizeme"
</pre>
<h2>输入你要挂载的类型，比如豆子挂载的是google drive，这里就输入13，然后回车</h2>
<pre class="prettyprint linenums">** See help for drive backend at: https://rclone.org/drive/ **

Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a string value. Press Enter for the default ("").
client_id&gt;     ##这里输入client_id，不知道的可以自行google 然后回车
Google Application Client Secret
Setting your own is recommended.
Enter a string value. Press Enter for the default ("").
client_secret&gt;     ## 这里输入密钥，然后回车
Scope that rclone should use when requesting access from drive.
Enter a string value. Press Enter for the default ("").   ##这里直接回车
</pre>
<h2>然后让你选择权限：</h2>
<pre class="prettyprint linenums">Choose a number from below, or type in your own value
 1 / Full access all files, excluding Application Data Folder.
   \ "drive"
 2 / Read-only access to file metadata and file contents.
   \ "drive.readonly"
   / Access to files created by rclone only.
 3 | These are visible in the drive website.
   | File authorization is revoked when the user deauthorizes the app.
   \ "drive.file"
   / Allows read and write access to the Application Data folder.
 4 | This is not visible in the drive website.
   \ "drive.appfolder"
   / Allows read-only access to file metadata but
 5 | does not allow any access to read or download file content.
   \ "drive.metadata.readonly"
scope&gt;
</pre>
<h2>这里豆子输入的全部权限，也就是1，然后回车
接着，需要选择挂载硬盘的路径，如果是全盘挂载，那么直接回车，但是豆子是挂载的指定文件夹，所以需要输入folder的id</h2>
<pre class="prettyprint linenums">ID of the root folder
Leave blank normally.

Fill in to access "Computers" folders (see docs), or for rclone to use
a non root folder as its starting point.

Note that if this is blank, the first time rclone runs it will fill it
in with the ID of the root folder.

Enter a string value. Press Enter for the default ("").
root_folder_id&gt;     ##输入文件夹的id后，回车
</pre>
<h2>接着提示是否进行高级配置，这里豆子选n，然后回车
然后询问是否自动配置，照样选n，然后回车</h2>
<pre class="prettyprint linenums">Service Account Credentials JSON file path 
Leave blank normally.
Needed only if you want use SA instead of interactive login.
Enter a string value. Press Enter for the default ("").
service_account_file&gt; 
Edit advanced config? (y/n)
y) Yes
n) No
y/n&gt; n
Remote config
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine
y) Yes
n) No
y/n&gt; n
</pre>
<h2>然后会返回一个网址，复制出来，在浏览器中打开，然后授权，会给你一个授权密钥，复制密钥后，返回到ssh界面，然后粘贴进去，回车。
然后会询问是否团队协作盘，这里豆子的并非是团队盘，所以选n，回车。</h2>
<pre class="prettyprint linenums">Configure this as a team drive?
y) Yes
n) No
y/n&gt; n
</pre>
<h2>然后会返回一大堆刚才的配置，接着询问是否完成等等</h2>
<pre class="prettyprint linenums">y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d&gt; y
Current remotes:

Name                 Type
====                 ====
XXX                   drive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q&gt; q
</pre>
<h2>到这一步，rclone配置完成，现在使用命令进行挂载到vps上。</h2>
创建挂载目录，并进行挂载：
<pre class="prettyprint linenums">mkdir -p /opt/gd
rclone mount XXX: /opt/gd --allow-other --allow-non-empty --vfs-cache-mode writes --daemon
</pre>
其中<span style="color: #ff0000;"><strong>opt/gd</strong></span>路径，是可以自己选择自己想要的路径。到这里，就基本完成，如果你vps装的有面板，那么重启一下面板就可以看到你挂载的硬盘已经展示出来了。]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1983</link>
			<category domain="http://fandai.free.fr/?cid=15">网络汇集</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e6%8c%82%e8%bd%bd">挂载</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=vps">vps</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=google-drive">google drive</category>
			<pubDate>Tue, 26 Dec 2023 06:57:17 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1981</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1981</guid>
			<title>由于部分不可抗因素，更换临时邮箱的域名</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) :        由于之前豆子搭建的临时邮箱系统是采用的google旗下的企业邮局进行调用使用的，但是由于部分不可抗因素（其实就是缺钱），豆子出售了google的企业邮局，所以就只能替换掉临时邮箱系统目前使用的域名以及使用系统。目前采用的是yandex的免费企业邮局调用，但是yandex的邮局由于有spam判断，很多邮箱系统发送的邮件会进入垃圾箱，所以很有可能导致收不到邮件。目前暂时只能这样凑合了！给各位带来的不变，敬请谅解！

       <img src="https://imgcdn.doublog.com/imgs/2023/11/d66181a5837bacb2.png" width="1899" height="928" class="alignnone size-full" />]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1981</link>
			<category domain="http://fandai.free.fr/?cid=24">豆子物语</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e4%b8%b4%e6%97%b6%e9%82%ae%e7%ae%b1">临时邮箱</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=yandex">yandex</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=spam">spam</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=google">google</category>
			<pubDate>Mon, 13 Nov 2023 01:12:24 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1979</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1979</guid>
			<title>同步备份站问题</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : 由于之前备份站被入侵挂马的原因，现在豆子恢复了数据，也发现无法再同步更新数据了，目前还未找到处理办法。所以现在就采用另外的方法来同步数据到备份站了。

听小红MJJ说，可以用蓝天程序配合插件来同步数据，测试了一天，感觉还是有点不尽人意，不过由于目前没找到合适的满意办法，也只能暂时这样处理了。

备份站：

<a href="http://blogbak.free.fr" target="_blank&quot;">http://blogbak.free.fr</a>

<a href="http://beifen.free.fr" target="_blank&quot;">http://beifen.free.fr</a>

<a href="https://blog.letu.eu.org" target="_blank" rel="noopener">https://blog.letu.eu.org</a>]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1979</link>
			<category domain="http://fandai.free.fr/?cid=22">记事杂文</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%a4%87%e4%bb%bd%e7%ab%99">备份站</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%90%8c%e6%ad%a5">同步</category>
			<pubDate>Sat, 21 Oct 2023 05:41:18 +0000</pubDate>
		</item>
		<item>
			<link>http://fandai.free.fr/?action=show&amp;id=1977</link>
			<guid>http://fandai.free.fr/?action=show&amp;id=1977</guid>
			<title>备份站暂时更换</title>
			<author>im@xyk.za.net(admin)</author>
			<description><![CDATA[豆博 ( http://fandai.free.fr/ ) : 由于之前的备份站可能还是因为被入侵挂马的原因，导致数据库被污染，现在只好暂时更换掉备份站，等排查完木马再换回去了（也有可能换不回去了）。

新的备份站地址：

<a href="http://beifen.free.fr" target="_blank" rel="noopener">http://beifen.free.fr</a>]]></description>
			<link>http://fandai.free.fr/?action=show&amp;id=1977</link>
			<category domain="http://fandai.free.fr/?cid=24">豆子物语</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e6%b1%a1%e6%9f%93">污染</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e6%8c%82%e9%a9%ac">挂马</category>
			<category domain="http://fandai.free.fr/?action=article&amp;tag=%e5%a4%87%e4%bb%bd%e7%ab%99">备份站</category>
			<pubDate>Wed, 18 Oct 2023 23:36:34 +0000</pubDate>
		</item>
	</channel>
</rss>
