fixed 友联监测bug
This commit is contained in:
1 parent
d04f748e85
commit
39b17bc39d
5 files changed
+465
-383
No files matched your search
@@ -64,6 +64,15 @@ jobs:
|
|||||||
- name: Check Link Status
|
- name: Check Link Status
|
||||||
run: node scripts/check_links.js
|
run: node scripts/check_links.js
|
||||||
|
|
||||||
|
- name: Read Failed Links Summary
|
||||||
|
if: always()
|
||||||
|
run: |
|
||||||
|
if [ -f failed_links_summary.txt ]; then
|
||||||
|
echo "LINK_SUMMARY<<EOF" >> $GITHUB_ENV
|
||||||
|
cat failed_links_summary.txt >> $GITHUB_ENV
|
||||||
|
echo "EOF" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: rm -rf public && hugo --minify
|
run: rm -rf public && hugo --minify
|
||||||
|
|
||||||
@@ -137,3 +146,7 @@ jobs:
|
|||||||
|
|
||||||
🔗 详情链接
|
🔗 详情链接
|
||||||
https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||||
|
|
||||||
|
📊 友链监测报告
|
||||||
|
----------------------------------
|
||||||
|
${{ env.LINK_SUMMARY }}
|
||||||
@@ -34,8 +34,9 @@ ai_comment: >-
|
|||||||
|
|
||||||
这个脚本的核心逻辑是:
|
这个脚本的核心逻辑是:
|
||||||
- 读取 `themes/Ying/data/links.yaml`。
|
- 读取 `themes/Ying/data/links.yaml`。
|
||||||
|
- 开启 10 个并发线程池,提高检测效率。
|
||||||
|
- 复用 HTTP/HTTPS 连接(Keep-Alive),减少握手开销。
|
||||||
- 对每个链接发起 `HEAD` 请求(如果失败则重试 `GET`)。
|
- 对每个链接发起 `HEAD` 请求(如果失败则重试 `GET`)。
|
||||||
- 如果状态码在 200-400 之间,判定为存活(True),否则为挂了(False)。
|
|
||||||
- 将结果保存为 `static/link_status.json`。
|
- 将结果保存为 `static/link_status.json`。
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
@@ -43,40 +44,73 @@ const fs = require('fs');
|
|||||||
const yaml = require('js-yaml');
|
const yaml = require('js-yaml');
|
||||||
const axios = require('axios');
|
const axios = require('axios');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
|
const https = require('https');
|
||||||
|
const http = require('http');
|
||||||
|
|
||||||
// 配置文件路径
|
// 配置文件路径
|
||||||
const linksPath = path.join(__dirname, '../themes/Ying/data/links.yaml');
|
const linksPath = path.join(__dirname, '../themes/Ying/data/links.yaml');
|
||||||
// 输出结果路径(直接输出到 static 目录,Hugo 构建时会直接复制到根目录)
|
|
||||||
const outputPath = path.join(__dirname, '../static/link_status.json');
|
const outputPath = path.join(__dirname, '../static/link_status.json');
|
||||||
|
|
||||||
|
// 配置并发数和超时
|
||||||
|
const CONCURRENCY = 10;
|
||||||
|
const TIMEOUT = 10000;
|
||||||
|
|
||||||
|
// 优化 Axios 实例:开启 Keep-Alive 复用连接
|
||||||
|
const axiosInstance = axios.create({
|
||||||
|
timeout: TIMEOUT,
|
||||||
|
maxRedirects: 5,
|
||||||
|
httpAgent: new http.Agent({ keepAlive: true }),
|
||||||
|
httpsAgent: new https.Agent({ keepAlive: true }),
|
||||||
|
headers: {
|
||||||
|
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
|
||||||
|
},
|
||||||
|
validateStatus: (status) => status >= 200 && status < 400
|
||||||
|
});
|
||||||
|
|
||||||
|
async function checkUrl(url) {
|
||||||
|
try {
|
||||||
|
await axiosInstance.head(url);
|
||||||
|
return true;
|
||||||
|
} catch (error) {
|
||||||
|
try {
|
||||||
|
await axiosInstance.get(url);
|
||||||
|
return true;
|
||||||
|
} catch (err2) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async function checkLinks() {
|
async function checkLinks() {
|
||||||
|
console.log('Starting link check...');
|
||||||
|
const start = Date.now();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const fileContents = fs.readFileSync(linksPath, 'utf8');
|
const fileContents = fs.readFileSync(linksPath, 'utf8');
|
||||||
const data = yaml.load(fileContents);
|
const data = yaml.load(fileContents);
|
||||||
|
const blogs = data.blogs.filter(b => b.url);
|
||||||
const results = {};
|
const results = {};
|
||||||
|
|
||||||
// 遍历所有友链
|
// 并发工作队列
|
||||||
const blogs = data.blogs;
|
async function worker() {
|
||||||
for (const blog of blogs) {
|
while (blogs.length > 0) {
|
||||||
try {
|
const blog = blogs.shift(); // 取出一个任务
|
||||||
// 优先使用 HEAD 请求节省流量
|
const status = await checkUrl(blog.url);
|
||||||
await axios.head(blog.url, { timeout: 10000 });
|
results[blog.url] = status;
|
||||||
results[blog.url] = true;
|
console.log(`[${status ? 'OK' : 'FAIL'}] ${blog.name}`);
|
||||||
console.log(`[OK] ${blog.name}`);
|
|
||||||
} catch (error) {
|
|
||||||
// HEAD 失败尝试 GET
|
|
||||||
try {
|
|
||||||
await axios.get(blog.url, { timeout: 10000 });
|
|
||||||
results[blog.url] = true;
|
|
||||||
console.log(`[OK] ${blog.name} (GET)`);
|
|
||||||
} catch (err2) {
|
|
||||||
results[blog.url] = false;
|
|
||||||
console.log(`[FAIL] ${blog.name}`);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 启动 10 个 Worker 并发处理
|
||||||
|
const workers = Array(Math.min(blogs.length, CONCURRENCY))
|
||||||
|
.fill(null)
|
||||||
|
.map(() => worker());
|
||||||
|
|
||||||
|
await Promise.all(workers);
|
||||||
|
|
||||||
fs.writeFileSync(outputPath, JSON.stringify(results, null, 2));
|
fs.writeFileSync(outputPath, JSON.stringify(results, null, 2));
|
||||||
|
console.log(`✨ Check finished in ${((Date.now() - start) / 1000).toFixed(2)}s`);
|
||||||
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error(e);
|
console.error(e);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
|
|||||||
+70
-37
@@ -2,6 +2,8 @@ const fs = require('fs');
|
|||||||
const yaml = require('js-yaml');
|
const yaml = require('js-yaml');
|
||||||
const axios = require('axios');
|
const axios = require('axios');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
|
const https = require('https');
|
||||||
|
const http = require('http');
|
||||||
|
|
||||||
const linksPath = path.join(__dirname, '../themes/Ying/data/links.yaml');
|
const linksPath = path.join(__dirname, '../themes/Ying/data/links.yaml');
|
||||||
const outputPath = path.join(__dirname, '../static/link_status.json');
|
const outputPath = path.join(__dirname, '../static/link_status.json');
|
||||||
@@ -11,8 +13,40 @@ if (!fs.existsSync(path.dirname(outputPath))) {
|
|||||||
fs.mkdirSync(path.dirname(outputPath), { recursive: true });
|
fs.mkdirSync(path.dirname(outputPath), { recursive: true });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Config
|
||||||
|
const CONCURRENCY = 10;
|
||||||
|
const TIMEOUT = 10000;
|
||||||
|
|
||||||
|
// Optimized Axios Instance with Keep-Alive
|
||||||
|
const axiosInstance = axios.create({
|
||||||
|
timeout: TIMEOUT,
|
||||||
|
maxRedirects: 5,
|
||||||
|
httpAgent: new http.Agent({ keepAlive: true }),
|
||||||
|
httpsAgent: new https.Agent({ keepAlive: true }),
|
||||||
|
headers: {
|
||||||
|
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
|
||||||
|
},
|
||||||
|
validateStatus: (status) => status >= 200 && status < 400
|
||||||
|
});
|
||||||
|
|
||||||
|
async function checkUrl(url) {
|
||||||
|
try {
|
||||||
|
await axiosInstance.head(url);
|
||||||
|
return true;
|
||||||
|
} catch (error) {
|
||||||
|
try {
|
||||||
|
await axiosInstance.get(url);
|
||||||
|
return true;
|
||||||
|
} catch (err2) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async function checkLinks() {
|
async function checkLinks() {
|
||||||
console.log('Starting link check...');
|
console.log('Starting link check...');
|
||||||
|
const start = Date.now();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const fileContents = fs.readFileSync(linksPath, 'utf8');
|
const fileContents = fs.readFileSync(linksPath, 'utf8');
|
||||||
const data = yaml.load(fileContents);
|
const data = yaml.load(fileContents);
|
||||||
@@ -22,50 +56,49 @@ async function checkLinks() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const blogs = data.blogs.filter(b => b.url);
|
||||||
const results = {};
|
const results = {};
|
||||||
// Process in chunks to avoid too many concurrent connections
|
const failedLinks = [];
|
||||||
const batchSize = 10;
|
let completed = 0;
|
||||||
const blogs = data.blogs;
|
const total = blogs.length;
|
||||||
|
|
||||||
for (let i = 0; i < blogs.length; i += batchSize) {
|
// Concurrency Pool
|
||||||
const batch = blogs.slice(i, i + batchSize);
|
async function worker() {
|
||||||
await Promise.all(batch.map(async (blog) => {
|
while (blogs.length > 0) {
|
||||||
if (!blog.url) return;
|
const blog = blogs.shift();
|
||||||
try {
|
const status = await checkUrl(blog.url);
|
||||||
const response = await axios.head(blog.url, {
|
results[blog.url] = status;
|
||||||
timeout: 10000,
|
|
||||||
maxRedirects: 5,
|
completed++;
|
||||||
headers: {
|
const icon = status ? '🟢' : '🔴';
|
||||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
|
console.log(`[${completed}/${total}] ${icon} ${blog.name}`);
|
||||||
},
|
|
||||||
validateStatus: (status) => status >= 200 && status < 400
|
if (!status) {
|
||||||
});
|
failedLinks.push(`- ${blog.name}: ${blog.url}`);
|
||||||
results[blog.url] = true;
|
|
||||||
console.log(`[OK] ${blog.name}`);
|
|
||||||
} catch (error) {
|
|
||||||
// Retry with GET if HEAD fails (some servers block HEAD)
|
|
||||||
try {
|
|
||||||
console.log(`[RETRY] ${blog.name} (HEAD failed, trying GET)...`);
|
|
||||||
await axios.get(blog.url, {
|
|
||||||
timeout: 10000,
|
|
||||||
maxRedirects: 5,
|
|
||||||
headers: {
|
|
||||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
|
|
||||||
},
|
|
||||||
validateStatus: (status) => status >= 200 && status < 400
|
|
||||||
});
|
|
||||||
results[blog.url] = true;
|
|
||||||
console.log(`[OK] ${blog.name} (GET success)`);
|
|
||||||
} catch (err2) {
|
|
||||||
results[blog.url] = false;
|
|
||||||
console.log(`[FAIL] ${blog.name} - ${error.message}`);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Start workers
|
||||||
|
const workers = Array(Math.min(blogs.length, CONCURRENCY))
|
||||||
|
.fill(null)
|
||||||
|
.map(() => worker());
|
||||||
|
|
||||||
|
await Promise.all(workers);
|
||||||
|
|
||||||
fs.writeFileSync(outputPath, JSON.stringify(results, null, 2));
|
fs.writeFileSync(outputPath, JSON.stringify(results, null, 2));
|
||||||
console.log(`Link status saved to ${outputPath}`);
|
const duration = ((Date.now() - start) / 1000).toFixed(2);
|
||||||
|
console.log(`✨ Check finished in ${duration}s. Status saved to ${outputPath}`);
|
||||||
|
|
||||||
|
// Write failed links to summary file for email notification
|
||||||
|
const summaryPath = path.join(__dirname, '../failed_links_summary.txt');
|
||||||
|
if (failedLinks.length > 0) {
|
||||||
|
const summaryContent = `\n🚫 监测到 ${failedLinks.length} 个异常友链:\n${failedLinks.join('\n')}\n`;
|
||||||
|
fs.writeFileSync(summaryPath, summaryContent);
|
||||||
|
console.log(`Failed links summary saved to ${summaryPath}`);
|
||||||
|
} else {
|
||||||
|
fs.writeFileSync(summaryPath, '\n✅ 所有友链状态正常\n');
|
||||||
|
}
|
||||||
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error(e);
|
console.error(e);
|
||||||
|
|||||||
@@ -301,16 +301,16 @@ code::-webkit-scrollbar {
|
|||||||
right: 8px;
|
right: 8px;
|
||||||
width: 8px;
|
width: 8px;
|
||||||
height: 8px;
|
height: 8px;
|
||||||
background-color: #4ade80; /* Soft Green */
|
background-color: #9ca3af; /* Soft Gray */
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
border: 2px solid #fff; /* White border for contrast */
|
border: 2px solid #fff;
|
||||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
box-shadow: none;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-theme="dark"] .link-active-badge {
|
[data-theme="dark"] .link-active-badge {
|
||||||
background-color: #22c55e;
|
background-color: #d1d5db; /* Softer White (Gray 300) */
|
||||||
border-color: #1f2933; /* Dark theme bg color */
|
border-color: #1f2933;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -321,16 +321,16 @@ code::-webkit-scrollbar {
|
|||||||
right: 8px;
|
right: 8px;
|
||||||
width: 8px;
|
width: 8px;
|
||||||
height: 8px;
|
height: 8px;
|
||||||
background-color: #f87171; /* Soft Red */
|
background-color: #fff; /* White Center */
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
border: 2px solid #fff;
|
border: 2px solid #9ca3af; /* Gray Border = Hollow Ring */
|
||||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
box-shadow: none;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-theme="dark"] .link-dead-badge {
|
[data-theme="dark"] .link-dead-badge {
|
||||||
background-color: #ef4444;
|
background-color: #1f2933; /* Dark Center */
|
||||||
border-color: #1f2933;
|
border-color: #d1d5db; /* Softer White Border */
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -349,7 +349,7 @@ code::-webkit-scrollbar {
|
|||||||
width: 6px;
|
width: 6px;
|
||||||
height: 6px;
|
height: 6px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background-color: #4ade80 !important;
|
background-color: #9ca3af !important; /* Soft Gray */
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -359,19 +359,21 @@ code::-webkit-scrollbar {
|
|||||||
display: block;
|
display: block;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 10px;
|
top: 10px;
|
||||||
width: 6px;
|
width: 4px; /* Slightly smaller to account for border */
|
||||||
height: 6px;
|
height: 4px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background-color: #f87171 !important;
|
background-color: #fff !important;
|
||||||
|
border: 1px solid #9ca3af; /* Gray Hollow Ring */
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-theme="dark"] .links ul>li.link-active-li::before {
|
[data-theme="dark"] .links ul>li.link-active-li::before {
|
||||||
background-color: #22c55e !important;
|
background-color: #d1d5db !important; /* Softer White */
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-theme="dark"] .links ul>li.link-dead-li::before {
|
[data-theme="dark"] .links ul>li.link-dead-li::before {
|
||||||
background-color: #ef4444 !important;
|
background-color: #1f2933 !important;
|
||||||
|
border-color: #d1d5db;
|
||||||
}
|
}
|
||||||
|
|
||||||
.atk-list.has-ai-comment .atk-list-no-comment {
|
.atk-list.has-ai-comment .atk-list-no-comment {
|
||||||
|
|||||||
@@ -1,6 +1,126 @@
|
|||||||
{
|
{
|
||||||
"updated": "2026-01-21T14:21:34.526Z",
|
"updated": "2026-01-31T07:09:46.827Z",
|
||||||
"posts": [
|
"posts": [
|
||||||
|
{
|
||||||
|
"title": "近况(6)",
|
||||||
|
"link": "https://t-t.live/archives/dMLGiqkH",
|
||||||
|
"date": "2026-01-31T01:38:43.000Z",
|
||||||
|
"author": "团团生活志",
|
||||||
|
"avatar": "https://img.t-t.live/img/tx.png",
|
||||||
|
"blogUrl": "https://t-t.live",
|
||||||
|
"image": "https://t-t.live/plugins/feed/assets/telemetry.gif?title=%E8%BF%91%E5%86%B5%EF%BC%886%EF%BC%89&url=/archives/dMLGiqkH",
|
||||||
|
"description": "也有足足一个月没更新,详细说到说到最近的事情已经变化吧。 博客评论 首先是评论区个人实在是无法兼顾识别垃圾骚扰评论,所以我直接引用了腾讯云的内容安全来进行云文本审核,通过即显示评论,失败即显示审核,等待我有空时删除即可。新人开通好像是有30..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Windows装机必备软件清单",
|
||||||
|
"link": "https://vjo.cc/1942",
|
||||||
|
"date": "2026-01-30T23:24:00.000Z",
|
||||||
|
"author": "刘郎阁",
|
||||||
|
"avatar": "https://yjvc.cn/usr/uploads/logo.jpeg",
|
||||||
|
"blogUrl": "https://vjo.cc",
|
||||||
|
"image": "https://mmbiz.qpic.cn/sz_mmbiz_jpg/LkQibZulB1ibDahZ937aU1dVk5Pib4yvH2qcYuozSLxINBXkjq2EywpgRwPta8FIL4aLoT35x4NekDTtCOyceWF4Q/640?wx_fmt=jpeg&watermark=1&tp=webp&wxfrom=5&wx_lazy=1#imgIndex=0",
|
||||||
|
"description": "用Windows系统这些年,每次装机、重装系统,我都坚信好工具能让使用体验和效率翻倍,却也踩过不少坑:下载到带捆绑广告的软件、跟风安装后发现不契合需求、碰上占内存又操作繁琐的“鸡肋工具”。久而久之,便攒下了这份自己装机时必装的软件清单,清单..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "欢迎新成员😊",
|
||||||
|
"link": "https://www.duanxiansen.com/3237.html",
|
||||||
|
"date": "2026-01-30T08:29:52.000Z",
|
||||||
|
"author": "段先森",
|
||||||
|
"avatar": "https://q.qlogo.cn/g?b=qq&nk=2443266417@qq.com&s=100",
|
||||||
|
"blogUrl": "https://duanxiansen.com",
|
||||||
|
"image": null,
|
||||||
|
"description": "他来了他来了,好可爱的一小只。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "松声|廿六年·一月暮·岁灯残",
|
||||||
|
"link": "https://xyzbz.cn/archives/1509/",
|
||||||
|
"date": "2026-01-30T06:32:00.000Z",
|
||||||
|
"author": "网友小宋",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/120340d1df519f4e28613fe5d404b286?s=65&r=G&d=",
|
||||||
|
"blogUrl": "https://xyzbz.cn",
|
||||||
|
"image": "https://img.xyzbz.cn/i/2026/01/19/696d4ae00cc1f.png",
|
||||||
|
"description": "充电老电车的痛点,离得最近的慢充桩就剩一个了,一公里内原本有六个慢充桩,结果设备升级,全部停了,剩下最近的一个充电站离我1.5公里,天气暖和的时候还好,这大雪天的,刮着寒风,就为了给车充电,冻得脸都僵了。所以啊!电池一定要支持快充接口,哪怕..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "握了大草",
|
||||||
|
"link": "https://lms.im/magic/grasping-the-grass/",
|
||||||
|
"date": "2026-01-28T00:46:36.000Z",
|
||||||
|
"author": "LMS",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/d9cc49ea0301640d7a19b6a1e77012dd",
|
||||||
|
"blogUrl": "https://lms.im",
|
||||||
|
"image": "https://s.lms.pub/wp-content/uploads/2026/01/vscode-shit.png",
|
||||||
|
"description": "这两天在折腾一个叫“若依”的开源程序,java 的,部署在了 Windows 11 的子系统Ubuntu 中。 我其他折腾的东西也全部放在这个子系统 Ubuntu 里面,比如 typecho\\wordpress\\hugo 等。 然后早上想到..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "二〇二六,你好",
|
||||||
|
"link": "https://immmmm.com/hi-2026/",
|
||||||
|
"date": "2026-01-25T00:22:01.000Z",
|
||||||
|
"author": "林木木",
|
||||||
|
"avatar": "https://weavatar.com/avatar/321331f2353f7eb24979e82f9e7fb5b39fef9ea85bd7a362142ce3188c1bb069",
|
||||||
|
"blogUrl": "https://immmmm.com",
|
||||||
|
"image": "https://r2.immmmm.com/2026/01/bye25-12-1.JPEG",
|
||||||
|
"description": "不知不觉已经来到了 2026 年,给大家拜个晚年、拜个早年。 愿大家一切安好,马上 —— 啥都有! 十二月 趣味运动会,竟还能占个人头,收获“高光”照一张。 十一月 秋假,北京高攀不起,换 ——> 南京。 十月末 丽水云和,看个梯田的..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "燕云十六声",
|
||||||
|
"link": "https://lms.im/where-winds-meet/",
|
||||||
|
"date": "2026-01-24T10:19:49.000Z",
|
||||||
|
"author": "LMS",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/d9cc49ea0301640d7a19b6a1e77012dd",
|
||||||
|
"blogUrl": "https://lms.im",
|
||||||
|
"image": null,
|
||||||
|
"description": "好久没更新博客,都跨年了。 typecho 都更新 1.3.0 版本了,自从没用 wordpress 后也不知道 wordpress 更新到什么版本了。 木木同学的哔哔(Memos)聚合都结束散伙了。 自从装了番茄 app 后,看小说方便多..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "手把手教你白嫖一个不关机的轻量服务器",
|
||||||
|
"link": "https://vjo.cc/1941",
|
||||||
|
"date": "2026-01-24T00:49:00.000Z",
|
||||||
|
"author": "刘郎阁",
|
||||||
|
"avatar": "https://yjvc.cn/usr/uploads/logo.jpeg",
|
||||||
|
"blogUrl": "https://vjo.cc",
|
||||||
|
"image": null,
|
||||||
|
"description": "是不是也有很多博主都和我一样,总想找一台真正免费的服务器来折腾点自己的东西。不管是搭个博客、测试个新框架,还是跑点自己写的小工具。但说实话,现在真正能长期免费使用的服务器越来越少,很多要么偷偷收费,要么让你隔三差五的给他做宣传才能续用,要么..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "松声|廿六年·雪后早上",
|
||||||
|
"link": "https://xyzbz.cn/archives/1506/",
|
||||||
|
"date": "2026-01-23T08:48:57.000Z",
|
||||||
|
"author": "网友小宋",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/120340d1df519f4e28613fe5d404b286?s=65&r=G&d=",
|
||||||
|
"blogUrl": "https://xyzbz.cn",
|
||||||
|
"image": "https://img.xyzbz.cn/i/2026/01/21/697001b7861dc.jpg",
|
||||||
|
"description": "少有的大夜班,凌晨的寒风贴脸,一碗胡辣汤暖去身上的寒气。[photos][/photos]*大雪,有个在湿地公园的定期风景,犹豫了好久要不要回去拍一张,ld说替我去拍,天气太冷,不舍,睡醒后开着小车慢慢的跑回去,顺便在做一些卤鸡蛋。 大雪下..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "给兰空图床增加一个机器人登录提醒",
|
||||||
|
"link": "https://xyzbz.cn/archives/1504/",
|
||||||
|
"date": "2026-01-22T09:18:00.000Z",
|
||||||
|
"author": "网友小宋",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/120340d1df519f4e28613fe5d404b286?s=65&r=G&d=",
|
||||||
|
"blogUrl": "https://xyzbz.cn",
|
||||||
|
"image": "https://img.xyzbz.cn/i/2026/01/22/6971932359b91.png",
|
||||||
|
"description": "无聊的功能之一,有需要的可以尝试一下,豆包帮忙写的,登录会触发机器人推送消息。1、增加注册事件与监听器路径/app/Providers/EventServiceProvider.php<?php namespace App\\Provi..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "体验了几天快递收件员的工作",
|
||||||
|
"link": "https://ihello.cc/archives/290.html",
|
||||||
|
"date": "2026-01-22T03:56:35.000Z",
|
||||||
|
"author": "小稚生活志",
|
||||||
|
"avatar": "https://bu.dusays.com/2024/02/02/65bbce27b129a.jpg",
|
||||||
|
"blogUrl": "https://ihello.cc",
|
||||||
|
"image": "https://ihello.cc/wp-content/uploads/2026/01/IMG_1758.jpeg",
|
||||||
|
"description": "本是打算找个兼职的寒假工来弄这个寒假的,就通过朋友了解到快递收件的这项工作,虽然只干了几天 主要工作. 我是去到了极兔速递参加工作,主要负责抖音购买的快递退货,上门去取件回仓库打包入库后就可以退回商家了,起初我去面试的啥时候问有没有兼职,就..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "CWD:一个基于 Cloudflare Workers 的评论系统",
|
||||||
|
"link": "https://zishu.me/blog/cwd-cloudflare-workers.html",
|
||||||
|
"date": "2026-01-22T00:00:00.000Z",
|
||||||
|
"author": "子舒",
|
||||||
|
"avatar": "https://gravatar.zishu.me/avatar/bdad602f1f9d29ce83944c4f6225d1cc?s=200&d=retro",
|
||||||
|
"blogUrl": "https://www.zishu.me",
|
||||||
|
"image": "https://imgurl.zishu.me/2026/01/20260122153418421.webp",
|
||||||
|
"description": "文档内容写的比较全面,建议看下面的地址! 使用文档:https://cwd.js.org Github:https://github.com/anghunk/cwd 缘起:为什么我要造轮子? 作为一个博客作者,我一直苦于找不到一个真正轻量、..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "智齿惊魂",
|
"title": "智齿惊魂",
|
||||||
"link": "https://www.zoujiang.com/1039.html",
|
"link": "https://www.zoujiang.com/1039.html",
|
||||||
@@ -12,14 +132,24 @@
|
|||||||
"description": "新年第一个月,在抖音上突然频繁刷到关于牙周炎、牙龈萎缩博主的自述视频,让我产生了牙齿健康还有钱包余额的双重焦虑。我的左下颚和右下颚各有一颗智齿,每次餐后都会塞食物残渣,必须拿冲牙器清理干净,否则残渣发酵发臭,很快就会发炎。最近刷牙出了点血,..."
|
"description": "新年第一个月,在抖音上突然频繁刷到关于牙周炎、牙龈萎缩博主的自述视频,让我产生了牙齿健康还有钱包余额的双重焦虑。我的左下颚和右下颚各有一颗智齿,每次餐后都会塞食物残渣,必须拿冲牙器清理干净,否则残渣发酵发臭,很快就会发炎。最近刷牙出了点血,..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "整活:基于对等原则的流量交换系统",
|
"title": "k头转接头",
|
||||||
"link": "https://www.xiaozonglin.cn/swap-system-based-on-equality-principle/",
|
"link": "https://blog.qydzz.cn/archives/1272.html",
|
||||||
"date": "2026-01-16T09:18:10.000Z",
|
"date": "2026-01-19T12:17:00.000Z",
|
||||||
"author": "林林杂语",
|
"author": "七栀",
|
||||||
"avatar": "https://cravatar.cn/avatar/04bfc914bd50b42eb507bf66aad0cc31?d=mp",
|
"avatar": "https://qydzz.cn/logo.png",
|
||||||
"blogUrl": "https://www.xiaozonglin.cn",
|
"blogUrl": "https://blog.qydzz.cn",
|
||||||
"image": null,
|
"image": "https://q.qydzz.cn/%E4%B8%83%E6%9C%88%E7%9A%84%E6%A0%80%E5%AD%90%E7%85%A7%E7%89%87%E5%82%A8%E5%AD%98/k%E5%A4%B4%E8%BD%AC%E6%8E%A5%E5%A4%B4/2.jpg",
|
||||||
"description": "起因是我在“开往-友链接力”项目审核的时候,偶尔遇到一些博客站长非常在意自己的流量,在审核通过之前不把链接挂上去,觉得提前挂是开往占了便宜。被恶心到了,于是我想着做一套基于对等原则的流量交换系统(也就是一个链接跳转),这样链接双方给彼此的流..."
|
"description": "买了一个k头转c口转接头,方便了对讲机写频刷机等操作。这之前也买了一根写频线,pl2303芯片的写频线,在台式电脑上正常使用,arm平台上就用不了,有问题。折腾了好久,最后在问了AI后,买了一个ch340的驱动芯片转接头。在刷了win系统的..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Cloudflare Workers + iOS 快捷指令:打造个人博客实时状态",
|
||||||
|
"link": "https://jb18.cm/blog/2026-01-16-cloudflare-workers--ios-%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4%E6%89%93%E9%80%A0%E4%B8%AA%E4%BA%BA%E5%8D%9A%E5%AE%A2%E5%AE%9E%E6%97%B6%E7%8A%B6%E6%80%81%E6%A0%8F/",
|
||||||
|
"date": "2026-01-16T00:00:00.000Z",
|
||||||
|
"author": "袁某人博客",
|
||||||
|
"avatar": "https://jb18.cm/favicon.ico",
|
||||||
|
"blogUrl": "https://jb18.cm",
|
||||||
|
"image": "https://res.jb18.cm/img/2026/01/16/745b766ad51b9220bed52d8db49dd2a3.webp",
|
||||||
|
"description": "这篇文章将教你利用 Cloudflare Workers 结合 iOS 快捷指令更新实时状态并在网站上显示,同时集成一个简易的访客统计量。 文中用到的实例基于生产环境代码,截至 2026年01月16日 正常使用。 一、前言与准备 核心思路:..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "松声|廿六年·一月初·雪叩窗",
|
"title": "松声|廿六年·一月初·雪叩窗",
|
||||||
@@ -91,6 +221,16 @@
|
|||||||
"image": "https://fastly.jsdelivr.net/gh/twitter/twemoji@latest/assets/svg/1f634.svg",
|
"image": "https://fastly.jsdelivr.net/gh/twitter/twemoji@latest/assets/svg/1f634.svg",
|
||||||
"description": "不知不觉我都要毕业了,最近在忙开题报告(虽然都是ai写的,但是还要自己排版一下hhh)还有就是关闭了仅显示一个月的动态,暂时就这样吧,真的好久没有码字了,好不习惯"
|
"description": "不知不觉我都要毕业了,最近在忙开题报告(虽然都是ai写的,但是还要自己排版一下hhh)还有就是关闭了仅显示一个月的动态,暂时就这样吧,真的好久没有码字了,好不习惯"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "2025回顾",
|
||||||
|
"link": "https://blog.qydzz.cn/archives/1270.html",
|
||||||
|
"date": "2026-01-08T15:37:15.000Z",
|
||||||
|
"author": "七栀",
|
||||||
|
"avatar": "https://qydzz.cn/logo.png",
|
||||||
|
"blogUrl": "https://blog.qydzz.cn",
|
||||||
|
"image": "https://q.qydzz.cn/%E4%B8%83%E6%9C%88%E7%9A%84%E6%A0%80%E5%AD%90%E7%85%A7%E7%89%87%E5%82%A8%E5%AD%98/2025%E5%9B%9E%E9%A1%BE/1.jpg",
|
||||||
|
"description": "这一年里,我没有怎么写博客,因为生命中,有了一个让我好好生活的人,我们在一起了,在重庆生活。她让我的分享欲得以安放。8月裸辞,我从苏州到了重庆,是新的生活哇,一切重新开始,找房子,找工作(找工作真不容易,去了好多面试)。空闲时间我们一起出去..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "迟到的杭漂,2025个人总结",
|
"title": "迟到的杭漂,2025个人总结",
|
||||||
"link": "https://www.ershiliu.com/posts/20260108",
|
"link": "https://www.ershiliu.com/posts/20260108",
|
||||||
@@ -111,6 +251,16 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "我的 AI coding 方案",
|
||||||
|
"link": "https://zishu.me/blog/my-ai-coding-setup.html",
|
||||||
|
"date": "2026-01-07T00:00:00.000Z",
|
||||||
|
"author": "子舒",
|
||||||
|
"avatar": "https://gravatar.zishu.me/avatar/bdad602f1f9d29ce83944c4f6225d1cc?s=200&d=retro",
|
||||||
|
"blogUrl": "https://www.zishu.me",
|
||||||
|
"image": "https://imgurl.zishu.me/2026/01/20260107155453607.webp",
|
||||||
|
"description": "之前高强度使用 Cursor 作为我的主力开发工具,后来随着厂商的限制,用起来也比较麻烦,就改成了 Qoder。 如果不考虑额度和价格的话,我认为 Qoder 完全可以作为 Cursor 的平替,但问题就在这里,pro 虽然价格还是可以,但..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "烟花未响,结石先“炸”",
|
"title": "烟花未响,结石先“炸”",
|
||||||
"link": "https://www.zoujiang.com/1030.html",
|
"link": "https://www.zoujiang.com/1030.html",
|
||||||
@@ -131,6 +281,16 @@
|
|||||||
"image": "https://ihello.cc/wp-content/uploads/2026/01/IMG_1250-2000x2667.jpeg",
|
"image": "https://ihello.cc/wp-content/uploads/2026/01/IMG_1250-2000x2667.jpeg",
|
||||||
"description": "初入大学的军训. 经历了两个星期的军训,起初感觉军训特别难熬,不过习惯以后我觉得时间过的特别快没有刚开始那种特别累的感觉,有点想念我们的教官了,军训结束的时候教官默默的上了车,那时候几乎所有人都跑去跟教官说了再见 还记得休息时间教官让我和两..."
|
"description": "初入大学的军训. 经历了两个星期的军训,起初感觉军训特别难熬,不过习惯以后我觉得时间过的特别快没有刚开始那种特别累的感觉,有点想念我们的教官了,军训结束的时候教官默默的上了车,那时候几乎所有人都跑去跟教官说了再见 还记得休息时间教官让我和两..."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "我在苏州的小事",
|
||||||
|
"link": "https://zishu.me/blog/little-things-in-suzhou.html",
|
||||||
|
"date": "2026-01-04T00:00:00.000Z",
|
||||||
|
"author": "子舒",
|
||||||
|
"avatar": "https://gravatar.zishu.me/avatar/bdad602f1f9d29ce83944c4f6225d1cc?s=200&d=retro",
|
||||||
|
"blogUrl": "https://www.zishu.me",
|
||||||
|
"image": "https://imgurl.zishu.me/2026/01/20260104103056247.webp",
|
||||||
|
"description": "元旦小长假去苏州玩了一圈,有满意也有失望。首先是景色还是很不错的,各种园林寺庙都逛了。拙政园、平江路、山塘街、金鸡湖东方之门、西园寺、寒山寺等等,非常 city walk。 但是吃到了最近几年觉得最难吃的食物,不清楚是店面的问题还是我不太符..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "2025年终回顾",
|
"title": "2025年终回顾",
|
||||||
"link": "https://xyzbz.cn/archives/1491/",
|
"link": "https://xyzbz.cn/archives/1491/",
|
||||||
@@ -142,14 +302,14 @@
|
|||||||
"description": "年度碎碎念时光荏苒,岁月如梭,是真的如梭!时间线还没到2026年,佬们就开始写年终总结了,原本想着慢悠悠打磨、随性记录的心思,终究抵不过这股 “内卷” 热潮。看着RSS里面日渐增加的年终关键词,不写是不行了,总结参考S,雅余佬的风格,再掺点..."
|
"description": "年度碎碎念时光荏苒,岁月如梭,是真的如梭!时间线还没到2026年,佬们就开始写年终总结了,原本想着慢悠悠打磨、随性记录的心思,终究抵不过这股 “内卷” 热潮。看着RSS里面日渐增加的年终关键词,不写是不行了,总结参考S,雅余佬的风格,再掺点..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "2026元旦初雪",
|
"title": "Minecraft 生存服务器来啦「1.21.8 版」",
|
||||||
"link": "https://xyzbz.cn/archives/1489/",
|
"link": "https://dusays.com/archives/845/",
|
||||||
"date": "2025-12-31T23:19:00.000Z",
|
"date": "2026-01-01T16:00:00.000Z",
|
||||||
"author": "网友小宋",
|
"author": "杜老师说",
|
||||||
"avatar": "https://cravatar.cn/avatar/120340d1df519f4e28613fe5d404b286?s=65&r=G&d=",
|
"avatar": "https://www.dusays.com/favicon.ico",
|
||||||
"blogUrl": "https://xyzbz.cn",
|
"blogUrl": "https://www.dusays.com",
|
||||||
"image": "https://img.xyzbz.cn/i/2026/01/01/6955ad8cbcde8.jpg",
|
"image": "https://cdn.dusays.com/2026/01/845-1.jpg",
|
||||||
"description": "2026年元旦下了一夜的大雪,瑞雪兆丰年,祝各位元旦快乐![photos][/photos][photos][/photos][photos][/photos][photos][/photos]"
|
"description": "杜老师在家用机上搭建了一个 Minecraft 游戏平台,配置为 16H32G 内存,500M 的带宽,预估支持 30 人同时在线。如果您喜欢玩我的世界,又感觉自己玩没有意思,欢迎加入我们平台,大家一起 play 一起 happy!注意事项..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "基于Node.js和Npm部署Astro博客系统",
|
"title": "基于Node.js和Npm部署Astro博客系统",
|
||||||
@@ -171,16 +331,6 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": "1、看了李新野的博客之后,对自己的思考和认知带来了一定的冲击。尤其是他分析推演的“《中国房地产会再跌90%》”一文。还有一篇在网上爆火的文章,“关于《我的父亲李松坚》”,把他的父亲推上风口浪尖。另外有一篇神作有兴趣的博友可以找找看,这里就不..."
|
"description": "1、看了李新野的博客之后,对自己的思考和认知带来了一定的冲击。尤其是他分析推演的“《中国房地产会再跌90%》”一文。还有一篇在网上爆火的文章,“关于《我的父亲李松坚》”,把他的父亲推上风口浪尖。另外有一篇神作有兴趣的博友可以找找看,这里就不..."
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"title": "乙巳蛇年-十二月末",
|
|
||||||
"link": "https://xyzbz.cn/archives/1488/",
|
|
||||||
"date": "2025-12-29T21:02:35.000Z",
|
|
||||||
"author": "网友小宋",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/120340d1df519f4e28613fe5d404b286?s=65&r=G&d=",
|
|
||||||
"blogUrl": "https://xyzbz.cn",
|
|
||||||
"image": "https://img.xyzbz.cn/i/2025/12/27/694f97988bbe8.jpg",
|
|
||||||
"description": "飞牛Arm前几天看到熊猫群里有人发布的截图,飞牛的Arm版本发布了内侧招募,招募设备包括OEC/T和斐讯N1,OEC带sata盘位的那个设备还是挺吸引人的,但是自从放弃了ARM架构的设备之后就没有关心过这些了。很久之前买过一个斐讯N1,还让..."
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"title": "从来不发朋友圈的人是什么心理?",
|
"title": "从来不发朋友圈的人是什么心理?",
|
||||||
"link": "https://heitaosan.com/article/232",
|
"link": "https://heitaosan.com/article/232",
|
||||||
@@ -211,16 +361,6 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": "前天关闭了评论过滤插件,因为有点小毛病没修好,也不知道具体因为啥。然后出现了7条垃圾广告评论全部都在KK的明信片这篇博文中。"
|
"description": "前天关闭了评论过滤插件,因为有点小毛病没修好,也不知道具体因为啥。然后出现了7条垃圾广告评论全部都在KK的明信片这篇博文中。"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"title": "生日(贰)",
|
|
||||||
"link": "https://www.xiaozonglin.cn/birthday-2025/",
|
|
||||||
"date": "2025-12-25T16:18:16.000Z",
|
|
||||||
"author": "林林杂语",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/04bfc914bd50b42eb507bf66aad0cc31?d=mp",
|
|
||||||
"blogUrl": "https://www.xiaozonglin.cn",
|
|
||||||
"image": null,
|
|
||||||
"description": "但在此时此刻,你的出生是值得被庆祝的。 在之前的 《生日》一文中我写到过这样一句话。 一年中平平凡凡的日子那么多,可“生日”对每个人来说似乎都是特别的。记住别人的生日,常被视为拉近关系的一种方式——可我连父母的生日都记不牢。有一个例外:我清..."
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"title": "随笔#“豆包AI手机”",
|
"title": "随笔#“豆包AI手机”",
|
||||||
"link": "https://rz.sb/archives/362/",
|
"link": "https://rz.sb/archives/362/",
|
||||||
@@ -241,16 +381,6 @@
|
|||||||
"image": "https://t-t.live/plugins/feed/assets/telemetry.gif?title=%E8%BF%91%E5%86%B5%EF%BC%885%EF%BC%89&url=/archives/0DOTYOaQ",
|
"image": "https://t-t.live/plugins/feed/assets/telemetry.gif?title=%E8%BF%91%E5%86%B5%EF%BC%885%EF%BC%89&url=/archives/0DOTYOaQ",
|
||||||
"description": "手忙脚乱搬家 由于工作实际状况与我去面试描述不符,我就离职了。现在又处于摸鱼阶段了... 住的地方太小了,换了一个123平的小区,搬家心得:大家电能不要就不要,不然真的搬起来累。因为搬家的距离不是很远,6公里货拉拉87元,给了司机270搬家..."
|
"description": "手忙脚乱搬家 由于工作实际状况与我去面试描述不符,我就离职了。现在又处于摸鱼阶段了... 住的地方太小了,换了一个123平的小区,搬家心得:大家电能不要就不要,不然真的搬起来累。因为搬家的距离不是很远,6公里货拉拉87元,给了司机270搬家..."
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"title": "Docker部署简单网页分析工具GoatCounter",
|
|
||||||
"link": "https://xyzbz.cn/archives/1485/",
|
|
||||||
"date": "2025-12-23T05:31:55.000Z",
|
|
||||||
"author": "网友小宋",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/120340d1df519f4e28613fe5d404b286?s=65&r=G&d=",
|
|
||||||
"blogUrl": "https://xyzbz.cn",
|
|
||||||
"image": "https://img.xyzbz.cn/i/2025/12/23/694a21b38eb4c.png",
|
|
||||||
"description": "起因万般缘由皆是Umami更新失败,导致我自己摧毁了容器,原不是Mysql,本身就是pg数据库,更新还是出问题了,经博友指点可能是镜像源的问题,仔细回想,当时从美西机子导出镜像的时候并没有pg后缀,删除的镜像的时候似乎还发现了Mysql的字..."
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"title": "使用 Gemini 来辅导数学作业 01",
|
"title": "使用 Gemini 来辅导数学作业 01",
|
||||||
"link": "https://www.sirit.com.cn/archives/714/",
|
"link": "https://www.sirit.com.cn/archives/714/",
|
||||||
@@ -291,6 +421,16 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "我的 2025 年度总结",
|
||||||
|
"link": "https://zishu.me/blog/2025-summary.html",
|
||||||
|
"date": "2025-12-20T00:00:00.000Z",
|
||||||
|
"author": "子舒",
|
||||||
|
"avatar": "https://gravatar.zishu.me/avatar/bdad602f1f9d29ce83944c4f6225d1cc?s=200&d=retro",
|
||||||
|
"blogUrl": "https://www.zishu.me",
|
||||||
|
"image": "https://imgurl.zishu.me/2025/12/20251220114805921.webp",
|
||||||
|
"description": "又是一年过去,思考良久,终于到了动笔的时候,基本都在年底 12 月中旬发出来。 常读我博客的朋友或许察觉,近期的更新频率有所下降,打算换个风格。 之前看过 Steph Ango 写的 《40 questions to ask yoursel..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "白嫖两个腾讯云EdgeOne长期免费套餐",
|
"title": "白嫖两个腾讯云EdgeOne长期免费套餐",
|
||||||
"link": "https://heitaosan.com/article/229",
|
"link": "https://heitaosan.com/article/229",
|
||||||
@@ -341,16 +481,6 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": "终于有耐心把博客倒腾一下了,看了下记录 从2022年1月7日把博客从ucloud迁到腾讯云后就没动过,三天前的晚上突然决定要把主机系统和运行环境升级一下。[...]"
|
"description": "终于有耐心把博客倒腾一下了,看了下记录 从2022年1月7日把博客从ucloud迁到腾讯云后就没动过,三天前的晚上突然决定要把主机系统和运行环境升级一下。[...]"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"title": "2025年终总结",
|
|
||||||
"link": "https://www.xiaozonglin.cn/2025-annual-summary/",
|
|
||||||
"date": "2025-12-12T15:11:51.000Z",
|
|
||||||
"author": "林林杂语",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/04bfc914bd50b42eb507bf66aad0cc31?d=mp",
|
|
||||||
"blogUrl": "https://www.xiaozonglin.cn",
|
|
||||||
"image": "https://www.xiaozonglin.cn/wp-content/uploads/2025/12/IMG_20251231_153853-768x1024.jpg",
|
|
||||||
"description": "12月31日,西安下起了第一场雪 来北方上学的一项期待就是看雪,西安的雪泡汤了几次,今天终于把雪下下来了。雪很细,原本以为雪是白的,像冰淇淋一样,结果雪落到衣服上是小冰晶。 又来到每年本博客的固定节目:年终总结。 时间会冲淡很多事情。几个月..."
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"title": "用Docker部署Virola Messenger即时通讯工具",
|
"title": "用Docker部署Virola Messenger即时通讯工具",
|
||||||
"link": "https://vjo.cc/1913",
|
"link": "https://vjo.cc/1913",
|
||||||
@@ -381,6 +511,26 @@
|
|||||||
"image": "https://t-t.live/plugins/feed/assets/telemetry.gif?title=%E8%BF%91%E5%86%B5%EF%BC%884%EF%BC%89&url=/archives/gML2C0VP",
|
"image": "https://t-t.live/plugins/feed/assets/telemetry.gif?title=%E8%BF%91%E5%86%B5%EF%BC%884%EF%BC%89&url=/archives/gML2C0VP",
|
||||||
"description": "没更新的日子都在跑美团,健身。不想跑了就待在家里打游戏,11月中旬回了躺老家,准备盖完剩下的二层。并安装多了二个海康威视的枪机监控用于实时观看师傅们建房的过程。 回去前面试了一份工作,看工作要求跟我专业是差不多的,但当我实际上班第三天的时候..."
|
"description": "没更新的日子都在跑美团,健身。不想跑了就待在家里打游戏,11月中旬回了躺老家,准备盖完剩下的二层。并安装多了二个海康威视的枪机监控用于实时观看师傅们建房的过程。 回去前面试了一份工作,看工作要求跟我专业是差不多的,但当我实际上班第三天的时候..."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "DEB 和 RPM 有什么区别",
|
||||||
|
"link": "https://dusays.com/archives/840/",
|
||||||
|
"date": "2025-12-02T16:00:00.000Z",
|
||||||
|
"author": "杜老师说",
|
||||||
|
"avatar": "https://www.dusays.com/favicon.ico",
|
||||||
|
"blogUrl": "https://www.dusays.com",
|
||||||
|
"image": null,
|
||||||
|
"description": "在 Linux 系统中,软件的安装和管理通常依赖于软件包(Package),而 .deb 和 .rpm 是两种最主流的软件包格式。它们分别服务于不同的 Linux 发行版生态系统,不仅文件后缀不同,所使用的工具链、依赖管理方式、系统集成方式..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "毒",
|
||||||
|
"link": "https://lms.im/story/noxious/",
|
||||||
|
"date": "2025-11-29T12:45:24.000Z",
|
||||||
|
"author": "LMS",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/d9cc49ea0301640d7a19b6a1e77012dd",
|
||||||
|
"blogUrl": "https://lms.im",
|
||||||
|
"image": "https://s.lms.pub/wp-content/uploads/2025/11/yapian.png",
|
||||||
|
"description": "乙肝病毒 两个月一买的抗病毒药今天吃完,去医院续了药,顺便问了一下医生上次复查的情况。 可能是换了国产药的原因,几次血常规检查都是磷稍微低于标准值,医生建议作一下尿检查查肾。 确实感觉腰也越来越不行了,平时扫个地弯一会儿都直不起来,也可能是..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "中国禁毒寸步不让",
|
"title": "中国禁毒寸步不让",
|
||||||
"link": "https://vian.top/705.html",
|
"link": "https://vian.top/705.html",
|
||||||
@@ -391,6 +541,16 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": "中国禁毒寸步不让!致敬禁毒英雄!"
|
"description": "中国禁毒寸步不让!致敬禁毒英雄!"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "ima 任务模式邀请码分享",
|
||||||
|
"link": "https://dusays.com/archives/839/",
|
||||||
|
"date": "2025-11-26T16:00:00.000Z",
|
||||||
|
"author": "杜老师说",
|
||||||
|
"avatar": "https://www.dusays.com/favicon.ico",
|
||||||
|
"blogUrl": "https://www.dusays.com",
|
||||||
|
"image": null,
|
||||||
|
"description": "在当今快节奏的工作中,高效的信息处理与内容创作工具越来越受到人们的青睐。腾讯推出的 ima,是一款以知识库为核心,面向学习与办公场景的 AI 智能工作台,致力于帮助用户提升信息获取效率并大幅提高内容创作的效率与质量。ima 工作台简介高效获..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "委屈",
|
"title": "委屈",
|
||||||
"link": "https://vian.top/704.html",
|
"link": "https://vian.top/704.html",
|
||||||
@@ -432,14 +592,44 @@
|
|||||||
"description": "✨以 热 爱,致 生 活🍃💻 🚴🏼 🏕🥘 ⚽️ 🎱🔫 🎮 🎬"
|
"description": "✨以 热 爱,致 生 活🍃💻 🚴🏼 🏕🥘 ⚽️ 🎱🔫 🎮 🎬"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "基于宝塔Frp实现本地飞牛Nas内网穿透",
|
"title": "如何导出 GitHub Discussions / Giscus 数据",
|
||||||
"link": "https://vjo.cc/1876",
|
"link": "https://zishu.me/blog/export-gitHub-discussions-giscus-data.html",
|
||||||
"date": "2025-11-19T07:10:00.000Z",
|
"date": "2025-11-21T00:00:00.000Z",
|
||||||
"author": "刘郎阁",
|
"author": "子舒",
|
||||||
"avatar": "https://yjvc.cn/usr/uploads/logo.jpeg",
|
"avatar": "https://gravatar.zishu.me/avatar/bdad602f1f9d29ce83944c4f6225d1cc?s=200&d=retro",
|
||||||
"blogUrl": "https://vjo.cc",
|
"blogUrl": "https://www.zishu.me",
|
||||||
"image": "https://mmbiz.qpic.cn/sz_mmbiz_jpg/LkQibZulB1ibCJFg03guRx2QfKLq76CdwWbjBOKQx5l9WIsJgFlSIsRaib242y1nGSHlPaNWIMiaqytZHj5Oo3pQVg/640?wx_fmt=jpeg&watermark=1&tp=webp&wxfrom=5&wx_lazy=1#imgIndex=0",
|
"image": "https://imgurl.zishu.me/2025/11/1763689961720.webp",
|
||||||
"description": "家里的飞牛NAS里,存了不少重要的日常文件、珍贵照片以及各类资源。虽说飞牛NAS自带外网访问功能,却受不少因素制约,实际用起来并不顺手。同一时段使用的人一多,操作卡顿不说,文件上传、下载速度还会明显变慢,特别影响使用体验。即便设备有更高速稳..."
|
"description": "如果你的静态博客使用了 Giscus 作为评论系统,那么所有评论内容实际上都会存储在你对应仓库的 GitHub Discussions 中。 这种方式免去了自建数据库和后端的麻烦,但很多人会关心一个问题:能否把评论备份导出? 答案是:可以!..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Temp Mail 兼具隐私和便捷性的最佳临时电子邮件服务",
|
||||||
|
"link": "https://dusays.com/archives/838/",
|
||||||
|
"date": "2025-11-20T16:00:00.000Z",
|
||||||
|
"author": "杜老师说",
|
||||||
|
"avatar": "https://www.dusays.com/favicon.ico",
|
||||||
|
"blogUrl": "https://www.dusays.com",
|
||||||
|
"image": null,
|
||||||
|
"description": "您是否曾经需要一个快捷的电子邮件地址?比如注册游戏或网站?这时 Temp Mail 就能派上用场了!它能为您提供一个可在短时间内使用的临时电子邮件地址。什么是临时邮件?使用临时邮箱,您可以创建一个有效期仅为 24 小时的电子邮件地址。这意味..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Dockerd 日志太多?磁盘爆了?一篇教您搞定容器日志问题",
|
||||||
|
"link": "https://dusays.com/archives/837/",
|
||||||
|
"date": "2025-11-14T16:00:00.000Z",
|
||||||
|
"author": "杜老师说",
|
||||||
|
"avatar": "https://www.dusays.com/favicon.ico",
|
||||||
|
"blogUrl": "https://www.dusays.com",
|
||||||
|
"image": null,
|
||||||
|
"description": "Docker 重度使用者们,您了解过 Docker 日志吗?如何查找、减少以及管理日志,从而有效节省磁盘空间!今天分享一下如何处理 Docker 日志的问题。日志好坑Docker 默认使用的是 json-file 日志驱动。日志会一直写,没..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "装了个复古游戏机",
|
||||||
|
"link": "https://lms.im/magic/installed-a-retro-game-console/",
|
||||||
|
"date": "2025-11-14T00:01:03.000Z",
|
||||||
|
"author": "LMS",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/d9cc49ea0301640d7a19b6a1e77012dd",
|
||||||
|
"blogUrl": "https://lms.im",
|
||||||
|
"image": null,
|
||||||
|
"description": "上周末,把家里 10 几年前买的在吃灰的华硕笔记本电脑给格式化了,装了纯游戏的系统 Batocera (巴托塞拉)。 以前电脑上玩的比较多的是 Winkawaks,Mame 都少用,感觉不习惯。不管是 Winkawaks 还是 Mame 都..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "adb常用命令",
|
"title": "adb常用命令",
|
||||||
@@ -461,26 +651,6 @@
|
|||||||
"image": "https://rz.sb/usr/themes/A-Sleek/src/img/loading.svg",
|
"image": "https://rz.sb/usr/themes/A-Sleek/src/img/loading.svg",
|
||||||
"description": "前两天收到rzsb的快到期通知,今天想起来给续一下然后脑子一热顺带新买了个米,因为现在基本上都在用\"苏哥拉弟(sugerady)\"这个id在网络冲浪想着也给这个id也注册个米,英文名又有点长,不便于记忆,还没有dy这个后缀,联想了几个谐音,..."
|
"description": "前两天收到rzsb的快到期通知,今天想起来给续一下然后脑子一热顺带新买了个米,因为现在基本上都在用\"苏哥拉弟(sugerady)\"这个id在网络冲浪想着也给这个id也注册个米,英文名又有点长,不便于记忆,还没有dy这个后缀,联想了几个谐音,..."
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"title": "针对博客网站友链的随机网络研究",
|
|
||||||
"link": "https://www.xiaozonglin.cn/blog-friendlink-network-research/",
|
|
||||||
"date": "2025-11-08T14:34:20.000Z",
|
|
||||||
"author": "林林杂语",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/04bfc914bd50b42eb507bf66aad0cc31?d=mp",
|
|
||||||
"blogUrl": "https://www.xiaozonglin.cn",
|
|
||||||
"image": "https://www.xiaozonglin.cn/wp-content/uploads/2025/11/image-1.png",
|
|
||||||
"description": "关键词:博客友链网络;随机网络;小世界现象;数据爬取 一、前言 “六度分离”理论已在社交网络、互联网等领域被研究1。博客网站作为Web2.0的代表,其形成的友链网络是否可视为随机网络?小世界现象在博客网络中是否存在?这是本文想要研究的问题。..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "立冬之后",
|
|
||||||
"link": "https://vjo.cc/1845",
|
|
||||||
"date": "2025-11-08T03:21:00.000Z",
|
|
||||||
"author": "刘郎阁",
|
|
||||||
"avatar": "https://yjvc.cn/usr/uploads/logo.jpeg",
|
|
||||||
"blogUrl": "https://vjo.cc",
|
|
||||||
"image": null,
|
|
||||||
"description": "乙巳立冬,天候殊异。炎阳当空,暑气袭人,不似孟冬,反类朱明。余日常作息如旧,朝暮通勤。冗务繁时,忙则废寝;闲暇至时,逸则悠然。闲隙之际,或刷视频、或览博文、或研所好新技,亦足怡情。 [...]"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"title": "适应期",
|
"title": "适应期",
|
||||||
"link": "https://www.duanxiansen.com/3221.html",
|
"link": "https://www.duanxiansen.com/3221.html",
|
||||||
@@ -491,6 +661,16 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": "前几天,听爸爸说哥哥在他跟前念叨没有钱买东西,我问爸爸给了没有,我爸说给了。从装修房子到现在已经拿去两三万了。 […]"
|
"description": "前几天,听爸爸说哥哥在他跟前念叨没有钱买东西,我问爸爸给了没有,我爸说给了。从装修房子到现在已经拿去两三万了。 […]"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "老婆被家长投诉",
|
||||||
|
"link": "https://digu.plus/post/c6f824c866a6456697917919c5c373e5/",
|
||||||
|
"date": "2025-10-30T03:58:00.000Z",
|
||||||
|
"author": "嘀咕博客",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/0c9157a4f48ba4cc94ada5e7016bcf72",
|
||||||
|
"blogUrl": "https://digu.plus",
|
||||||
|
"image": null,
|
||||||
|
"description": "老婆是一名小学语文老师兼班主任,至今大概有个六七年了,带过一届毕业班。从老婆的口中了解到,上一届和这一届的学生、家长对她都挺满意的,有时候她也会分享家长的聊天记录给我看,都是夸张老师尽职尽责,学生在家说怎么怎么喜欢老师。也有分享学生的作文,..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "购物|电热毯",
|
"title": "购物|电热毯",
|
||||||
"link": "https://beifeng.me/archives/2055",
|
"link": "https://beifeng.me/archives/2055",
|
||||||
@@ -521,6 +701,16 @@
|
|||||||
"image": "https://img.cdn.vin/dai/20251020/1760968222781.png",
|
"image": "https://img.cdn.vin/dai/20251020/1760968222781.png",
|
||||||
"description": "去年10月,我写了一篇[利用python搭建TG消息推送的文章][1],当时买了一台几十块钱一年的小鸡来挂这个脚本,虽然隔三差五机器嗝屁,但还是持续使用到了今年8月直到服务器到期,到期后一时没有合适机器来放脚本,于是又花几十块续费了一年,但..."
|
"description": "去年10月,我写了一篇[利用python搭建TG消息推送的文章][1],当时买了一台几十块钱一年的小鸡来挂这个脚本,虽然隔三差五机器嗝屁,但还是持续使用到了今年8月直到服务器到期,到期后一时没有合适机器来放脚本,于是又花几十块续费了一年,但..."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "OECT 折腾结果",
|
||||||
|
"link": "https://lms.im/magic/oect-toss-results/",
|
||||||
|
"date": "2025-10-18T12:35:44.000Z",
|
||||||
|
"author": "LMS",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/d9cc49ea0301640d7a19b6a1e77012dd",
|
||||||
|
"blogUrl": "https://lms.im",
|
||||||
|
"image": "https://s.lms.pub/wp-content/uploads/2025/10/casaos.png",
|
||||||
|
"description": "上回给在咸鱼捡垃圾入手的网心云刷了个机后,陆陆续续的折腾着,现在分享一下结果。 换了个 1TB 的硬盘 手上有旧笔记本留下的 500G 机械硬盘和一个 120G 的固态硬盘,可惜机械硬盘厚度 9mm 虽然硬塞能塞进去但机器盖子盖不了,120..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "争吵到和好,我们的第七年",
|
"title": "争吵到和好,我们的第七年",
|
||||||
"link": "https://www.duanxiansen.com/3076.html",
|
"link": "https://www.duanxiansen.com/3076.html",
|
||||||
@@ -552,24 +742,14 @@
|
|||||||
"description": "翻来覆去躺了许久,还是没等来睡意。趁着清醒复盘过往,才发现自己的抑郁从未真正消失——和前任在一起的日子里,它几乎没再找上门,我便误以为“恋爱就是治愈抑郁的解药”。直到分手后几个月,实习工作的枯燥像催化剂,让抑郁发作得越来越频繁。我总忍不住想..."
|
"description": "翻来覆去躺了许久,还是没等来睡意。趁着清醒复盘过往,才发现自己的抑郁从未真正消失——和前任在一起的日子里,它几乎没再找上门,我便误以为“恋爱就是治愈抑郁的解药”。直到分手后几个月,实习工作的枯燥像催化剂,让抑郁发作得越来越频繁。我总忍不住想..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "使用 Acrylic 复现百团大战 WiFi 钓鱼攻击:关于 Klutton 学长记录的补充",
|
"title": "不要用 Astro Image 组件加载图片",
|
||||||
"link": "https://www.xiaozonglin.cn/acrylic-wifi-phishing/",
|
"link": "https://jb18.cm/blog/2025-10-12-%E4%B8%8D%E8%A6%81%E7%94%A8-astro-image-%E7%BB%84%E4%BB%B6%E5%8A%A0%E8%BD%BD%E5%9B%BE%E7%89%87/",
|
||||||
"date": "2025-10-07T14:58:21.000Z",
|
"date": "2025-10-12T00:00:00.000Z",
|
||||||
"author": "林林杂语",
|
"author": "袁某人博客",
|
||||||
"avatar": "https://cravatar.cn/avatar/04bfc914bd50b42eb507bf66aad0cc31?d=mp",
|
"avatar": "https://jb18.cm/favicon.ico",
|
||||||
"blogUrl": "https://www.xiaozonglin.cn",
|
"blogUrl": "https://jb18.cm",
|
||||||
"image": "https://www.xiaozonglin.cn/wp-content/uploads/2025/10/图片.png",
|
|
||||||
"description": "起因 参见:Klutton《使用 Hostapd + dnsmasq + flask web 服务器的 WiFi 钓鱼攻击研究》 故事还要从上个月的百团大战说起,当时我看到信安协会的 Klutton 学长正对着大屏幕敲命令,我就在旁边驻足凑..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "怀孕那些事",
|
|
||||||
"link": "https://www.duanxiansen.com/3062.html",
|
|
||||||
"date": "2025-10-07T12:52:00.000Z",
|
|
||||||
"author": "段先森",
|
|
||||||
"avatar": "https://q.qlogo.cn/g?b=qq&nk=2443266417@qq.com&s=100",
|
|
||||||
"blogUrl": "https://duanxiansen.com",
|
|
||||||
"image": null,
|
"image": null,
|
||||||
"description": "结婚也有一年多了,我们两个原本打算我工作稳定之后再生孩子的,但是家里人一直在催,说我们两个年龄大了,不好生养什 […]"
|
"description": "Astro 的 <Image> 组件会自动转换远程图片保存到本地,导致 CDN 无效。我今天禁用缓存才发现这个问题,之前一直用本地缓存没发现这个问题😓 Cloudflare Page 在海外加载效果不错在大陆非常缓慢,但 R2..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "我在西贝“白嫖”100块,却因一只蟑螂把另一家店告上法庭",
|
"title": "我在西贝“白嫖”100块,却因一只蟑螂把另一家店告上法庭",
|
||||||
@@ -601,6 +781,16 @@
|
|||||||
"image": "https://cdn.aloner.ink/usr/uploads/2025/09/2761110750.jpg",
|
"image": "https://cdn.aloner.ink/usr/uploads/2025/09/2761110750.jpg",
|
||||||
"description": "无月,夜空清澈;云少,细碎分布仅记录了肉眼可见的大型星座。记录时间主要为晚上八点到十点,所述可视情况仅限于笔者校内。图片都是手机直拍,夜间会自动使用长曝光算法,出片星点会显著比肉眼可见要多。手持拍摄,容易手抖,模糊是正常的。::Cat_gi..."
|
"description": "无月,夜空清澈;云少,细碎分布仅记录了肉眼可见的大型星座。记录时间主要为晚上八点到十点,所述可视情况仅限于笔者校内。图片都是手机直拍,夜间会自动使用长曝光算法,出片星点会显著比肉眼可见要多。手持拍摄,容易手抖,模糊是正常的。::Cat_gi..."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "甘南之旅-扎尕那",
|
||||||
|
"link": "https://jb18.cm/blog/2025-09-15-%E7%94%98%E5%8D%97%E4%B9%8B%E6%97%85-%E6%89%8E%E5%B0%95%E9%82%A3/",
|
||||||
|
"date": "2025-09-15T00:00:00.000Z",
|
||||||
|
"author": "袁某人博客",
|
||||||
|
"avatar": "https://jb18.cm/favicon.ico",
|
||||||
|
"blogUrl": "https://jb18.cm",
|
||||||
|
"image": "https://res.jb18.cm/img/2025/09/15/40b8541593b3ce892ae17fcd78763f80.png",
|
||||||
|
"description": "洛克之路起点进入非铺装路 开始拔高1 开始拔高2 拔高途中 问题不大,打火机还能打着火 扎尕那北门1 扎尕那北门2 途径点 9月2号早上出发 7号下午到家,总共6天行程,这次带了无人机、运动相机、单反相机,拍了不少照片和视频,但博客图床资源..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": " 使用 Deepseek + MCP 实现文章总结 ",
|
"title": " 使用 Deepseek + MCP 实现文章总结 ",
|
||||||
"link": "https://blog.200011.net/ai/deepseek-mcp-article-summary/",
|
"link": "https://blog.200011.net/ai/deepseek-mcp-article-summary/",
|
||||||
@@ -662,14 +852,14 @@
|
|||||||
"description": "因9月1日实施了电动车新国标标准,且广东(广州/深圳)抓的最严格,相信大家也刷到了深圳抓违规电动车第一次扣车(复原原车样子,带相关车辆手续拿回)第二次罚款500-1000元。9月1日后买的旧国标车辆需要在11月31日前完成上牌,否则就算超标..."
|
"description": "因9月1日实施了电动车新国标标准,且广东(广州/深圳)抓的最严格,相信大家也刷到了深圳抓违规电动车第一次扣车(复原原车样子,带相关车辆手续拿回)第二次罚款500-1000元。9月1日后买的旧国标车辆需要在11月31日前完成上牌,否则就算超标..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "梁山嘟嘟S3车机安装初体验",
|
"title": "谁懂啊!LABUBU 居然从电脑屏幕跳进我手里啦",
|
||||||
"link": "https://t-t.live/archives/H5H0XM1j",
|
"link": "https://www.jdeal.cn/539.html",
|
||||||
"date": "2025-08-30T00:43:50.000Z",
|
"date": "2025-08-29T13:05:00.000Z",
|
||||||
"author": "团团生活志",
|
"author": "Jdeal",
|
||||||
"avatar": "https://img.t-t.live/img/tx.png",
|
"avatar": "https://cn.cravatar.com/avatar/e52005490b64d0da9e98a89b295d5a0d",
|
||||||
"blogUrl": "https://t-t.live",
|
"blogUrl": "https://www.jdeal.cn/",
|
||||||
"image": "https://t-t.live/plugins/feed/assets/telemetry.gif?title=%E6%A2%81%E5%B1%B1%E5%98%9F%E5%98%9FS3%E8%BD%A6%E6%9C%BA%E5%AE%89%E8%A3%85%E5%88%9D%E4%BD%93%E9%AA%8C&url=/archives/H5H0XM1j",
|
"image": "https://www.jdeal.cn/usr/uploads/2025/08/1230851657.jpg",
|
||||||
"description": "我的车是17款的吉利帝豪,是上大学的时候买的,当初是为了代步。后面随着新能源的发展,我也有想换车的想法了,但是由于工资没涨的缘故后便离职了,换车的想法只能是暂时搁置了。 原车的车机就真的只能连接蓝牙听听歌或者收听FM/AM电台,其他啥也干不..."
|
"description": "早上对着电脑发呆,看到屏幕里的 LABUBU,忽然就冒出个念头:能不能让它从屏幕里出来,握在手里?让我也过过手瘾,毕竟抢了十七八回也没抢到过~ 🙄说干就干,随手举着手机拍了张 “伸手向屏幕” 的照片,用几天前刚刚玩过的即梦AI,说不定能..."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": " Ai 实战之狗血微信聊天记录生成 ",
|
"title": " Ai 实战之狗血微信聊天记录生成 ",
|
||||||
@@ -751,6 +941,16 @@
|
|||||||
"image": null,
|
"image": null,
|
||||||
"description": "之前我在使用 Gridea 的时候由于没有 “文章短代码” 功能,但我又想在文章中添加音乐播放器、添加视频等等。考虑到 Markdown 的特性是支持插入 HTML ,我将 <div class="功能" data..."
|
"description": "之前我在使用 Gridea 的时候由于没有 “文章短代码” 功能,但我又想在文章中添加音乐播放器、添加视频等等。考虑到 Markdown 的特性是支持插入 HTML ,我将 <div class="功能" data..."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"title": "记一次闲鱼维权经历",
|
||||||
|
"link": "https://digu.plus/post/a8e397db7c7745008bf973a4b53e54b3/",
|
||||||
|
"date": "2025-07-29T14:20:00.000Z",
|
||||||
|
"author": "嘀咕博客",
|
||||||
|
"avatar": "https://cravatar.cn/avatar/0c9157a4f48ba4cc94ada5e7016bcf72",
|
||||||
|
"blogUrl": "https://digu.plus",
|
||||||
|
"image": "https://static.digu.plus/2025/07/a8e397db7c7745008bf973a4b53e54b3/7e1eda394dfb4514a410def7e5ad66ee.jpg!style=thumbnail",
|
||||||
|
"description": "减肥路长漫漫,上个月想着做运动减肥,于是想买Keep年卡会员。起因6月12日,在闲鱼找到一个看着还可以的卖家,有买卖交易记录,信用也都是极好,于是花了66元大洋下单了。充值过程中因为收短信的问题折腾了一会,最后还是给我充值上了。我在Keep..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"title": "微信时光机#重庆游",
|
"title": "微信时光机#重庆游",
|
||||||
"link": "https://rz.sb/archives/319/",
|
"link": "https://rz.sb/archives/319/",
|
||||||
@@ -800,206 +1000,6 @@
|
|||||||
"blogUrl": "https://blog.fivk.cn",
|
"blogUrl": "https://blog.fivk.cn",
|
||||||
"image": null,
|
"image": null,
|
||||||
"description": "随着大模型(LLM)和向量检索(RAG、Embedding)应用兴起,向量数据库变得越来越重要。其中,PostgreSQL + pgvector 成为非常流行的一种组合方案,既能保留关系数据库的强大特性,又能高效地进行向量检索。本篇文章将手..."
|
"description": "随着大模型(LLM)和向量检索(RAG、Embedding)应用兴起,向量数据库变得越来越重要。其中,PostgreSQL + pgvector 成为非常流行的一种组合方案,既能保留关系数据库的强大特性,又能高效地进行向量检索。本篇文章将手..."
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "这一波亏了",
|
|
||||||
"link": "https://www.likaijian.com/archives/zhe-yi-bo-yu-liao",
|
|
||||||
"date": "2025-06-22T00:29:00.000Z",
|
|
||||||
"author": "永恒末匕",
|
|
||||||
"avatar": "https://q.qlogo.cn/headimg_dl?dst_uin=1527335101&spec=640",
|
|
||||||
"blogUrl": "https://likaijian.com",
|
|
||||||
"image": "https://www.likaijian.com/plugins/feed/assets/telemetry.gif?title=%E8%BF%99%E4%B8%80%E6%B3%A2%E4%BA%8F%E4%BA%86&url=/archives/zhe-yi-bo-yu-liao",
|
|
||||||
"description": "这下又被资本做局了,最近网上很火的手机流量卡,被这种东西冲昏了头脑,蠢蠢欲动的我,然后就恍恍惚惚的入手了一张19/240G联通流量卡,果不其然,收到货后进行了测速,公司那地方也是4G和5G来回跳,稍微卡顿,没有现在用的广电和移动的信号稳定,..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "毕业后我都在干什么",
|
|
||||||
"link": "https://ihello.cc/archives/215.html",
|
|
||||||
"date": "2025-06-17T03:58:00.000Z",
|
|
||||||
"author": "小稚生活志",
|
|
||||||
"avatar": "https://bu.dusays.com/2024/02/02/65bbce27b129a.jpg",
|
|
||||||
"blogUrl": "https://ihello.cc",
|
|
||||||
"image": "https://ihello.cc/wp-content/uploads/2025/10/1000094845.webp",
|
|
||||||
"description": "现在离高考结束已经过去一个星期了,想想时间过的也是挺快的,高考前一个星期的时候我就跑去烫头发了,烫了个摩根烫挺成功,高考一结束不用想肯定要先去玩个痛快,我和朋友四个人一起跑去网吧通宵了 组队打无畏契约 刚毕业这几天基本上都在网吧打游戏,一共..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "高考倒计时:6天",
|
|
||||||
"link": "https://ihello.cc/archives/212.html",
|
|
||||||
"date": "2025-06-01T03:52:00.000Z",
|
|
||||||
"author": "小稚生活志",
|
|
||||||
"avatar": "https://bu.dusays.com/2024/02/02/65bbce27b129a.jpg",
|
|
||||||
"blogUrl": "https://ihello.cc",
|
|
||||||
"image": null,
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "Word一定要用自带样式!✋😭✋",
|
|
||||||
"link": "https://aloner.ink/Share/990.html",
|
|
||||||
"date": "2025-05-27T09:59:00.000Z",
|
|
||||||
"author": "如约而至",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/af1874b7856255302fc3df5102a6ce6d",
|
|
||||||
"blogUrl": "https://aloner.ink",
|
|
||||||
"image": "https://cdn.aloner.ink/usr/uploads/2025/05/1685614581.png",
|
|
||||||
"description": "省流:当需要在Word中自定义样式时,对需应用于多层级标题的,建议直接在自带的“标题1”、“标题2”……基础上改动使用,可免去许多不必要的麻烦。 1事出有因最近在参悟研究学校的毕业论文排版规范。在图注方面,规定要求的是章号+圆点+图序(如“..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "【知识总结】Maven国内镜像",
|
|
||||||
"link": "https://blog.fivk.cn/archives/6621.html",
|
|
||||||
"date": "2025-05-11T06:52:33.000Z",
|
|
||||||
"author": "Fivk博客",
|
|
||||||
"avatar": "https://q1.qlogo.cn/g?b=qq&nk=11470226&s=640",
|
|
||||||
"blogUrl": "https://blog.fivk.cn",
|
|
||||||
"image": null,
|
|
||||||
"description": "阿里云:http://maven.aliyun.com/中央仓库:https://repo1.maven.org/maven2/网易:http://maven.netease.com/repository/public/华为云:https:..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "【知识总结】使用 OpenVPN 实现按需分流:避免全局代理泄露隐私",
|
|
||||||
"link": "https://blog.fivk.cn/archives/6620.html",
|
|
||||||
"date": "2025-05-06T14:30:00.000Z",
|
|
||||||
"author": "Fivk博客",
|
|
||||||
"avatar": "https://q1.qlogo.cn/g?b=qq&nk=11470226&s=640",
|
|
||||||
"blogUrl": "https://blog.fivk.cn",
|
|
||||||
"image": null,
|
|
||||||
"description": "1. 背景介绍在远程办公或访问公司内网时,很多企业会通过 OpenVPN 提供一个 .ovpn 配置文件,供员工连接公司 VPN。默认情况下,一旦连接 VPN,电脑上所有的网络流量都会被强制通过 VPN 隧道转发。虽然这可以保障公司内部资源..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "五一假期出行:文昌市孔庙",
|
|
||||||
"link": "https://ihello.cc/archives/202.html",
|
|
||||||
"date": "2025-05-03T03:48:00.000Z",
|
|
||||||
"author": "小稚生活志",
|
|
||||||
"avatar": "https://bu.dusays.com/2024/02/02/65bbce27b129a.jpg",
|
|
||||||
"blogUrl": "https://ihello.cc",
|
|
||||||
"image": "https://ihello.cc/wp-content/uploads/2025/10/1000093079-2000x898.webp",
|
|
||||||
"description": "出发前一个晚上.(5.1) 和朋友去吃夜宵,并商量着出发孔子庙烧香,兜兜转转选择了吃烧烤,到店里点了才发现来错烧烤店了,吃的东西也太贵了,他价格表没放在柜台上面,害得我们什么都拿了一点,一顿宵夜下来一个人吃了八十多 出发.(5.2) 中午两..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "青春只是轻轻走过",
|
|
||||||
"link": "https://www.likaijian.com/archives/qing-chun-zhi-shi-qing-qing-zou-guo",
|
|
||||||
"date": "2025-05-02T10:31:00.000Z",
|
|
||||||
"author": "永恒末匕",
|
|
||||||
"avatar": "https://q.qlogo.cn/headimg_dl?dst_uin=1527335101&spec=640",
|
|
||||||
"blogUrl": "https://likaijian.com",
|
|
||||||
"image": "https://www.likaijian.com/plugins/feed/assets/telemetry.gif?title=%E9%9D%92%E6%98%A5%E5%8F%AA%E6%98%AF%E8%BD%BB%E8%BD%BB%E8%B5%B0%E8%BF%87&url=/archives/qing-chun-zhi-shi-qing-qing-zou-guo",
|
|
||||||
"description": "再续前缘 3月底辞去死&亡流水线的工作,对于我农村出生的学生来说流水线来的Rmb最快的,工作了4个月左右,解决了大学的学费还能存来一点方便我之后的计划,里面工友也都对我很不错很好说话,不管男女对我挺照顾的,辞掉的主要原因是不想上俩班..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "三月星天四月明",
|
|
||||||
"link": "https://aloner.ink/Share/March-plus-April.html",
|
|
||||||
"date": "2025-04-30T13:29:00.000Z",
|
|
||||||
"author": "如约而至",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/af1874b7856255302fc3df5102a6ce6d",
|
|
||||||
"blogUrl": "https://aloner.ink",
|
|
||||||
"image": "https://cdn.aloner.ink/usr/uploads/2025/04/1911264944.jpg",
|
|
||||||
"description": "五一国际劳动节快乐!……月末发点存货::EOC:36::广工揭的冬季大六边形iPhone|摄于3月19日学校的夜空能见度一直不错,山卡拉有山卡拉的好处。 天狼星-参宿四-南河三,天狼星-参宿七-毕宿五-五车二-北河三-南河三。即使是早春的夜..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "提取特定的字体",
|
|
||||||
"link": "https://dai.ge/24.html",
|
|
||||||
"date": "2025-04-19T05:26:00.000Z",
|
|
||||||
"author": "阿呆日记",
|
|
||||||
"avatar": "https://dai.ge/img/logo.png",
|
|
||||||
"blogUrl": "https://dai.ge",
|
|
||||||
"image": "https://img.cdn.vin/dai/20250419/1745039859334.png",
|
|
||||||
"description": "有时候想给网站某标题特定使用一个字体,但是整个字体包可能会有几十MB大小,利用字体编辑器可以提取我们需要的那几个字,直接将字体包压缩到几KB。 首先打开 查看字符编码 ,输入你需要提取的字,如: 右侧的“Unicode编码16进制”可以方便..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "小熊猫",
|
|
||||||
"link": "https://blog.keepke.com/",
|
|
||||||
"date": "2025-04-16T00:37:49.000Z",
|
|
||||||
"author": "吾柯",
|
|
||||||
"avatar": "https://blog.keepke.com/logo.png",
|
|
||||||
"blogUrl": "https://blog.keepke.com",
|
|
||||||
"image": null,
|
|
||||||
"description": "可爱捏~"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "恰逢春日 “郁”见春色",
|
|
||||||
"link": "https://www.liuchengrui.cn/life/696.html",
|
|
||||||
"date": "2025-04-12T14:25:00.000Z",
|
|
||||||
"author": "柳橙睿",
|
|
||||||
"avatar": "https://www.liuchengrui.cn/myphoto.png",
|
|
||||||
"blogUrl": "https://www.liuchengrui.cn",
|
|
||||||
"image": "https://cdn.liuchengrui.cn/usr/uploads/2025/04/3163102287.jpg",
|
|
||||||
"description": "花有约,春不误 今日份浪漫是郁金香给的"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "VXLAN技术",
|
|
||||||
"link": "https://skylan.cc/archives/1742346094404",
|
|
||||||
"date": "2025-03-25T09:22:52.000Z",
|
|
||||||
"author": "清梦云熙",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/853572275a978dbccefbe2242ba1c415",
|
|
||||||
"blogUrl": "https://skylan.cc",
|
|
||||||
"image": "https://skylan.cc/plugins/feed/assets/telemetry.gif?title=VXLAN%E6%8A%80%E6%9C%AF&url=/archives/1742346094404",
|
|
||||||
"description": "什么是VXLAN 为了满足数据中心规模的扩大,以及云化数据中心虚拟机迁移业务不中断的场景,还有二层VLAN数不够用的情况 引入了VXLAN(Virtual eXtensible Lan)可扩展虚拟局域网技术 基于IP网络,采用Mac in ..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "使用giffgaff卡搞TG过程",
|
|
||||||
"link": "https://dai.ge/23.html",
|
|
||||||
"date": "2025-03-23T14:49:00.000Z",
|
|
||||||
"author": "阿呆日记",
|
|
||||||
"avatar": "https://dai.ge/img/logo.png",
|
|
||||||
"blogUrl": "https://dai.ge",
|
|
||||||
"image": "https://img.cdn.vin/dai/20250323/1742740561907.png",
|
|
||||||
"description": "曲折的故事起因源于突然不想使用+86手机号使用TG了,至于原因dddd. 偶然在论坛看到有用户发帖“付邮送giffgaff卡”,于是简单的对giffgaff做了一下了解(以下检测gg卡),gg卡是位于英国的移动电话公司产品,并且提供实体 s..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "写在二五年国际劳动妇女节",
|
|
||||||
"link": "https://aloner.ink/Whatever/women-s-liberation-2025.html",
|
|
||||||
"date": "2025-03-08T14:26:00.000Z",
|
|
||||||
"author": "如约而至",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/af1874b7856255302fc3df5102a6ce6d",
|
|
||||||
"blogUrl": "https://aloner.ink",
|
|
||||||
"image": null,
|
|
||||||
"description": "一些粗浅的想法,权当博主看《家庭、私有制和国家的起源》的读后感。两性议题无疑是当今社会现象中冲突频发的一环。欲究根本,我们上溯其滥觞,回到人类社会家庭将将形成的时期,不难在母系社会与其孕育父权制的历史中找到答案。恩氏在《家庭、私有制和国家的..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "随笔小记",
|
|
||||||
"link": "https://www.likaijian.com/archives/qing-chun-zhi-shi-qing-qing-zou-guo-TdOeztAo",
|
|
||||||
"date": "2025-03-08T00:27:00.000Z",
|
|
||||||
"author": "永恒末匕",
|
|
||||||
"avatar": "https://q.qlogo.cn/headimg_dl?dst_uin=1527335101&spec=640",
|
|
||||||
"blogUrl": "https://likaijian.com",
|
|
||||||
"image": "https://www.likaijian.com/plugins/feed/assets/telemetry.gif?title=%E9%9A%8F%E7%AC%94%E5%B0%8F%E8%AE%B0&url=/archives/qing-chun-zhi-shi-qing-qing-zou-guo-TdOeztAo",
|
|
||||||
"description": "海鲜市场淘了台 mac book air m1丐中丐版本,果真是一分钱一分货,缺点比如无法充电等问题,但是能体验这m1芯片也还好。系统提示学生身份卸载中 实习快结束,准备脱下这学生的身份走向社会,这些资料很是折磨人 朋友在无锡订了俩春风25..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "ProxyPin简单抓包B站装扮素材资产",
|
|
||||||
"link": "https://aloner.ink/Share/bbb.html",
|
|
||||||
"date": "2025-02-22T06:37:00.000Z",
|
|
||||||
"author": "如约而至",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/af1874b7856255302fc3df5102a6ce6d",
|
|
||||||
"blogUrl": "https://aloner.ink",
|
|
||||||
"image": "https://cdn.aloner.ink/usr/uploads/2025/02/183241216.jpg",
|
|
||||||
"description": "“……读书人的事,能算偷么?”::Cat_gif:Spill_the_tea::众所周知B站上有很多很好看的装扮素材::Cat_gif:Big_hammer::但是买了只能在B站上用难免有些浪费()如果能全部扒下来,应用到博客或者别的什么地..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "江西九江·东林大佛:所求皆所愿",
|
|
||||||
"link": "https://www.liuchengrui.cn/life/670.html",
|
|
||||||
"date": "2025-02-20T14:19:00.000Z",
|
|
||||||
"author": "柳橙睿",
|
|
||||||
"avatar": "https://www.liuchengrui.cn/myphoto.png",
|
|
||||||
"blogUrl": "https://www.liuchengrui.cn",
|
|
||||||
"image": "https://cdn.liuchengrui.cn/usr/uploads/2025/02/713627288.jpg",
|
|
||||||
"description": "在江西!世界上最高的阿弥陀佛金像! 我真的用照片难以形容它的壮观"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "实习小记",
|
|
||||||
"link": "https://www.liveout.cn/68-2/",
|
|
||||||
"date": "2025-02-18T03:16:36.000Z",
|
|
||||||
"author": "Echo 的小窝",
|
|
||||||
"avatar": "https://cravatar.cn/avatar/d9d83d9ebd03447fff3b094e140a0cbe",
|
|
||||||
"blogUrl": "https://www.liveout.cn/",
|
|
||||||
"image": "https://liveout.cn/wp-content/uploads/pic/background/2023/0107.png",
|
|
||||||
"description": "实习 从实习到现在,差不多两个月了。每天早上7点准时起来,然后挤地铁,八点多到医院。中午和同学一起吃饭,下午 4.30 准时下班走人。 日复一日,期间看完了python基础,做了个基于Django框架的网站项目,不过也是看着书照葫芦画瓢,了..."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "蛇年大吉",
|
|
||||||
"link": "https://www.likaijian.com/archives/she-nian-da-ji",
|
|
||||||
"date": "2025-02-03T10:29:00.000Z",
|
|
||||||
"author": "永恒末匕",
|
|
||||||
"avatar": "https://q.qlogo.cn/headimg_dl?dst_uin=1527335101&spec=640",
|
|
||||||
"blogUrl": "https://likaijian.com",
|
|
||||||
"image": "https://www.likaijian.com/plugins/feed/assets/telemetry.gif?title=%E8%9B%87%E5%B9%B4%E5%A4%A7%E5%90%89&url=/archives/she-nian-da-ji",
|
|
||||||
"description": "新的一年已然到来,祝愿我们,家庭顺,生活顺,事业顺,财运顺,健康顺,万事顺,一顺百顺,希望接下来遇到的所有事情都对我们有利。 突然发现在学校的时候按周算总感觉过得很漫长,出来工作了按月份都过得极快,转眼都已经2月份了。公司放了10天假我一线..."
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user