1<!doctype html> 2<html 3 lang="en" 4> 5 <head> 6 <title>Disue · è¿ªç´ </title> 7 8 <meta charset="utf-8" /> 9 <meta name="renderer" content="webkit" /> 10 11 <meta name="format-detection" content="telephone=no" /> 12 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 13 <meta http-equiv="Cache-Control" content="no-siteapp" /> 14 <meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" /> 15 <meta 16 name="viewport" 17 content="width=device-width, user-scalable=no, initial-scale=1.0, shrink-to-fit=no, viewport-fit=cover" 18 /> 19 20 <meta http-equiv="x-dns-prefetch-control" content="on" /> 21 <meta name="site" content="https://disue.com" /> 22 <!-- OG --> 23 <meta property="og:image" content="/upload/favicon.png" /> 24 <meta property="og:description" content="site.seo.description" /> 25 <meta property="og:type" content="website" /> 26 <meta property="og:locale" content="zh_CN" /> 27 <meta property="og:site_name" content="Disue · è¿ªç´ -Dynamic Internet Security Utility Engine" /> 28 <meta property="og:url" content="https://disue.com" /> 29 <meta property="og:title" content="Disue · è¿ªç´ " /> 30 <meta property="twitter:partner" content="ogwp" /> 31 <!-- /OG --> 32 33 34 35
35<script id="theme-config-getter"> 36 const ThemeConfig = { 37 theme_mode: "user", 38 enable_loading_bar: true, 39 enable_footer: true, 40 footer_position: "none", 41 check_baidu_collect: false, 42 baidu_token: "", 43 enable_back2top: true, 44 enable_back2top_smooth: true, 45 enable_weather: false, 46 weather_key: "", 47 link_behavior: "current", 48 enable_tag_cloud: true, 49 tag_cloud_type: document.getElementById('tags-3d') ? '3d' : 'list', 50 enable_fixed_header: true, 51 enable_clean_mode: false, 52 cursor_effect: "off", 53 enable_offscreen_tip: false, 54 enable_birthday: false, 55 birthday: "2021\/11\/11 06:30", 56 light_time_scope: "5:00~19:00", 57 enable_console_theme: false, 58 version: "1.4.0", 59 60 enable_big_banner: false, 61 enable_banner: false, 62 banner_direction: "horizontal", 63 enable_banner_loop: true, 64 banner_effect: "slide", 65 banner_speed: 500, 66 enable_banner_handle: true, 67 enable_banner_autoplay: true, 68 banner_delay: "3500", 69 enable_banner_switch_button: true, 70 enable_banner_pagination: true, 71 enable_index_list_ajax: false, 72 post_index_page_size: false, 73 backdrop: "off", 74 favicon: "\/upload\/favicon.png", 75 enable_index_list_effect: true, 76 index_list_effect_class: "fadeInUp", 77 show_loaded_time: false, 78 enable_debug: false, 79 access_key: false, 80 enable_copy: true, 81 enable_share: true, 82 enable_share_link: true, 83 enable_share_weixin: true, 84 enable_like: true, 85 enable_toc: true, 86 enable_progress_bar: true, 87 enable_code_expander: false, 88 enable_fold_long_code: false, 89 enable_comment: true, 90 toc_depth: "0", 91 enable_code_title: true, 92 enable_code_hr: true, 93 enable_code_macdot: true, 94 enable_code_line_number: false, 95 enable_code_newline: false, 96 show_tools_when_hover: true, 97 enable_code_copy: true, 98 enable_copy_right_text: false, 99 copy_right_text: "", 100 offscreen_title_leave: "\u6B6A\uFF0C\u4F60\u53BB\u54EA\u91CC\u4E86\uFF1F", 101 offscreen_title_back: "(\u3064\u30A7\u2282)\u54A6\uFF0C\u53C8\u56DE\u6765\u4E86!", 102 enable_journal_effect: true, 103 enable_friend_effect: true, 104 // prettier-ignore 105 journal_list_effect_class: "fadeInUp", 106 friend_list_effect_class: "fadeInUp", 107 enable_like_journal: true, 108 enable_comment_journal: true, 109 journal_block_height: "300", 110 long_code_height: "800", 111 lazyload_avatar: "\/upload\/photo_2025-09-26_13-23-33.jpg", 112 photos_layout: 'waterfall', 113 // prettier-ignore 114 blog_url: "https:\/\/disue.com", 115 blog_title: "Disue \u00B7 \u8FEA\u7D20", 116 // prettier-ignore 117 BASE_RES_URL: "\/themes\/theme-Joe3", 118 BASE_URL: 'https://bbchin.com', 119 }; 120 //转æ°å 121 ThemeConfig.banner_speed = parseInt(ThemeConfig.banner_speed); 122 ThemeConfig.banner_delay = parseInt(ThemeConfig.banner_delay); 123 ThemeConfig.toc_depth = parseInt(ThemeConfig.toc_depth); 124 ThemeConfig.journal_block_height = parseInt(ThemeConfig.journal_block_height); 125 ThemeConfig.long_code_height = parseInt(ThemeConfig.long_code_height); 126 ThemeConfig.photos_gap = 10; 127 ThemeConfig.enable_photos_effect = true; 128 </script>
128 129 130 131 132
132<script id="compatiable-checker"> 133 // å ¼å®¹æ§æ£æ¥ 134 function detectIE() { 135 var n = window.navigator.userAgent, 136 e = n.indexOf('MSIE '); 137 if (e > 0) { 138 return parseInt(n.substring(e + 5, n.indexOf('.', e)), 10); 139 } 140 if (n.indexOf('Trident/') > 0) { 141 var r = n.indexOf('rv:'); 142 return parseInt(n.substring(r + 3, n.indexOf('.', r)), 10); 143 } 144 var i = n.indexOf('Edge/'); 145 return i > 0 && parseInt(n.substring(i + 5, n.indexOf('.', i)), 10); 146 } 147 detectIE() && 148 (alert('å½åç«ç¹ä¸æ¯æIEæµè§å¨ææ¨å¼å¯äºå ¼å®¹æ¨¡å¼ï¼è¯·ä½¿ç¨å ¶ä»æµè§å¨è®¿é®æå ³éå ¼å®¹æ¨¡å¼ã'), 149 (location.href = 'https://www.baidu.com')); 150 </script>
150 151 152
152<script id="theme-config-getter" type="text/javascript"> 153 if (window.location.hostname === 'localhost' || window.location.hostname === '127.0.0.1') { 154 ThemeConfig['mode'] = 'development'; 155 console.log(ThemeConfig.mode); 156 } 157 158 if (ThemeConfig.mode === 'development') { 159 console.log('Joe3主é¢é ç½®ï¼', ThemeConfig); 160 console.log('èµæºæ ¹è·¯å¾ï¼', ThemeConfig.BASE_RES_URL); 161 } 162 // 读å䏻颿¨¡å¼ 163 var initThemeMode = function () { 164 try { 165 var curMode = ''; 166 if (ThemeConfig.theme_mode === 'auto') { 167 var light_scope = ThemeConfig.light_time_scope.split('~'); 168 var now = new Date(); 169 var today = now.toLocaleString().split(' ')[0]; 170 var curMode = 171 now >= new Date(today + ' ' + light_scope[0]) && 172 now <= new Date(today + ' ' + light_scope[1]) 173 ? 'light' 174 : 'dark'; 175 localStorage.removeItem('data-mode'); 176 } else if (ThemeConfig.theme_mode === 'user') { 177 // ç¨æ·æ¨¡å¼ä¸ä¼å 仿¬å°å䏻颿¨¡å¼ï¼é»è®¤ä¸ºæµ è² 178 curMode = localStorage.getItem('data-mode') || 'light'; 179 localStorage.setItem('data-mode', curMode); 180 } else { 181 // éç¨æ·æ¨¡å¼ä¸ç´æ¥ååå°é ç½®çæ¨¡å¼ 182 curMode = ThemeConfig.theme_mode; 183 localStorage.removeItem('data-mode'); 184 } 185 document.querySelector('html').setAttribute('data-mode', curMode); 186 } catch (e) { 187 console.log(e); 188 } 189 }; 190 initThemeMode(); 191 window.Joe = { 192 BASE_API: '', 193 isMobile: /windows phone|iphone|android/gi.test(window.navigator.userAgent), 194 bloggerGenerateAvatarOpts: (function () { 195 let generateAvatarOpts = {}; 196 let generate_avatar_opts_str = '{bgColor:'',textColor:'',useTextGradient:false}'; 197 if (generate_avatar_opts_str) { 198 // generate_avatar_opts_str 示ä¾ï¼{bgColor:'',textColor:'',useTextGradient:false}, è§£æ generate_avatar_opts é ç½® 199 try { 200 // 鲿¢ ' çç¹æ®åç¬¦å¯¼è´ JSON è§£æå¤±è´¥ 201 const eleTmp = document.createElement('div'); 202 eleTmp.innerHTML = generate_avatar_opts_str; 203 // key èªå¨å ä¸ "" 鲿¢æ¥éï¼â èªå¨è½¬æ â 204 generate_avatar_opts_str = eleTmp.innerHTML 205 .replace(/'/g, '"') 206 .replace(/([\w]+):/g, '"$1":'); 207 generateAvatarOpts = JSON.parse(generate_avatar_opts_str); 208 } catch (e) { 209 console.error( 210 'Joe3主é¢é ç½®ï¼çææåæ§å¤´åçé 置解æå¤±è´¥ï¼ä½¿ç¨é»è®¤é ç½®ãgenerate_avatar_opts_str:', 211 generate_avatar_opts_str, 212 ' ,error:', 213 e 214 ); 215 } 216 } 217 return generateAvatarOpts; 218 })(), 219 errorImg: function (target, src) { 220 const targetSrc = target.getAttribute('src'); 221 console.log( 222 'å è½½å¾ç失败', 223 ' ,srcArg:', 224 src, 225 ' .target.src:', 226 targetSrc, 227 ' ,target.alt:', 228 target.getAttribute('alt'), 229 ' ,target.dataset.errSrc:', 230 target.dataset.errSrc, 231 ' ,target.dataset.textAvatar:', 232 target.dataset.textAvatar 233 ); 234 235 let generatedTextAvatar; 236 let generatedTextAvatarBase64; 237 238 switch (src) { 239 case 'HomeErrImg': { 240 // 妿 src æ¯ HomeErrImg å使ç¨é¦é¡µé ç½®éé ç½®çæç« é误缺çå¾ 241 src = '/themes/theme-Joe3/assets/img/default_thumbnail.png'; 242 break; 243 } 244 case 'LinksErrImg': { 245 // 妿 src æ¯ LinksErrImg å使ç¨åé¾é ç½®éé ç½®çåé¾é»è®¤ logo 246 src = target.dataset.errSrc || '/themes/theme-Joe3/assets/img/default_links_logo.png'; 247 if ( 248 !src || 249 src === targetSrc ||
250 (targetSrc && targetSrc.indexOf('/assets/img/transparent-placeholder.png') !== -1) 251 ) { 252 if (target.dataset.textAvatar || target.getAttribute('alt')) { 253 generatedTextAvatar = target.dataset.textAvatar || target.getAttribute('alt'); 254 generatedTextAvatarBase64 = Joe.generateTextAvatarImage(generatedTextAvatar); 255 src = generatedTextAvatarBase64; 256 } else { 257 src = '/themes/theme-Joe3/assets/img/default_links_logo.png'; 258 } 259 } 260 break; 261 } 262 case 'ErrAvatarImg': { 263 // 妿 src æ¯ ErrAvatarImg å使ç¨å主é ç½®éé ç½®çé»è®¤å¤´å 264 src = target.dataset.errSrc || '/upload/photo_2025-09-26_13-23-33.jpg'; 265 if ( 266 !src || 267 src === targetSrc || 268 (targetSrc && targetSrc.indexOf('/assets/img/transparent-placeholder.png') !== -1) 269 ) { 270 if (target.dataset.textAvatar || target.getAttribute('alt')) { 271 generatedTextAvatar = target.dataset.textAvatar || target.getAttribute('alt'); 272 generatedTextAvatarBase64 = Joe.generateTextAvatarImage(generatedTextAvatar); 273 src = generatedTextAvatarBase64; 274 } else { 275 src = '/themes/theme-Joe3/assets/img/peeps-avatar.png'; 276 } 277 } 278 break; 279 } 280 case 'LoadFailedImg': { 281 // 妿 src æ¯ LoadFailedImg å使ç¨å 载失败çå¾ç 282 src = target.dataset.errSrc || '/themes/theme-Joe3/assets/img/img_load_failed.jpg'; 283 break; 284 } 285 } 286 287 const nowSrc = src || target.dataset.errSrc || '/themes/theme-Joe3/assets/img/Joe3.png'; 288 if (targetSrc === nowSrc) return; 289 290 if ( 291 generatedTextAvatarBase64 && 292 generatedTextAvatar && 293 nowSrc === generatedTextAvatarBase64 294 ) { 295 target.setAttribute('data-generated-text-avatar', generatedTextAvatar); 296 } else if (target.getAttribute('data-generated-text-avatar')) { 297 target.removeAttribute('data-generated-text-avatar'); 298 } 299 300 console.log( 301 'å è½½å¾ç失败ï¼ä½¿ç¨é»è®¤å¾ç:', 302 nowSrc, 303 ' ,oldSrc:', 304 targetSrc, 305 ' ,target.alt:', 306 target.getAttribute('alt') 307 ); 308 target.setAttribute('onerror', null); 309 target.setAttribute('src', nowSrc); 310 }, 311 // å·²ç»å è½½ transparent-placeholder.png åæ¿æ¢å¾ç 312 loadedPlaceholderReplaceImg: function (target, src) { 313 const targetSrc = target.getAttribute('src'); 314 if ( 315 !targetSrc || 316 src === targetSrc || 317 targetSrc.indexOf('/assets/img/transparent-placeholder.png') === -1 318 ) { 319 return; 320 } 321 322 console.log( 323 'å è½½å¾ç transparent-placeholder.png åæ¿æ¢å¾ç', 324 ' ,srcArg:', 325 src, 326 ' ,target.alt:', 327 target.getAttribute('alt'), 328 ' ,target.dataset.replaceSrc:', 329 target.dataset.replaceSrc, 330 ' ,target.dataset.textAvatar:', 331 target.dataset.textAvatar 332 ); 333 334 let generatedTextAvatar; 335 let generatedTextAvatarBase64; 336 337 switch (src) { 338 case 'LinksImg': { 339 // 妿 src æ¯ LinksImg å使ç¨åé¾é ç½®éé ç½®çåé¾é»è®¤ logo 340 src = target.dataset.replaceSrc || '/themes/theme-Joe3/assets/img/default_links_logo.png'; 341 if (!src || src === targetSrc) { 342 if (target.dataset.textAvatar || target.getAttribute('alt')) { 343 generatedTextAvatar = target.dataset.textAvatar || target.getAttribute('alt'); 344 generatedTextAvatarBase64 = Joe.generateTextAvatarImage(generatedTextAvatar); 345 src = generatedTextAvatarBase64; 346 } else { 347 src = '/themes/theme-Joe3/assets/img/default_links_logo.png'; 348 } 349 } 350 break; 351 } 352 case 'AvatarImg': { 353 // 妿 src æ¯ AvatarImg å使ç¨å主é ç½®éé ç½®çé»è®¤å¤´å 354 src = target.dataset.replaceSrc || '/upload/photo_2025-09-26_13-23-33.jpg'; 355 if (!src || src === targetSrc) { 356 if (target.dataset.textAvatar || target.getAttribute('alt')) { 357 generatedTextAvatar = target.dataset.textAvatar || target.getAttribute('alt'); 358 target.setAttribute('data-generated-text-avatar', generatedTextAvatar); 359 generatedTextAvatarBase64 = Joe.generateTextAvatarImage(generatedTextAvatar); 360 src = generatedTextAvatarBase64; 361 } else { 362 src = '/themes/theme-Joe3/assets/img/peeps-avatar.png'; 363 } 364 } 365 break; 366 } 367 } 368 369 const nowSrc = 370 src || target.dataset.replaceSrc || '/themes/theme-Joe3/assets/img/Joe3.png';
371 if (targetSrc === nowSrc) return; 372 373 if ( 374 generatedTextAvatarBase64 && 375 generatedTextAvatar && 376 nowSrc === generatedTextAvatarBase64 377 ) { 378 target.setAttribute('data-generated-text-avatar', generatedTextAvatar); 379 } else if (target.getAttribute('data-generated-text-avatar')) { 380 target.removeAttribute('data-generated-text-avatar'); 381 } 382 383 console.log('å è½½æ¿æ¢åçå¾ç:', nowSrc, ' ,target.alt:', target.getAttribute('alt')); 384 target.setAttribute('onload', null); 385 target.setAttribute('src', nowSrc); 386 }, 387 replaceAllTextAvatarImage: function () { 388 console.log('call replaceAllTextAvatarImage'); 389 const generatedEles = document.querySelectorAll('img[data-generated-text-avatar]'); 390 generatedEles.forEach(function (ele) { 391 const generatedTextAvatar = ele.getAttribute('data-generated-text-avatar'); 392 const generatedTextAvatarBase64 = Joe.generateTextAvatarImage(generatedTextAvatar); 393 ele.setAttribute('src', generatedTextAvatarBase64); 394 }); 395 }, 396 // çæéæºé¢è²å½æ° 397 getRandomColor: function (alpha) { 398 const letters = '0123456789ABCDEF'; 399 let color = '#'; 400 for (let i = 0; i < 6; i++) { 401 color += letters[Math.floor(Math.random() * 16)]; 402 } 403 if (alpha !== undefined) { 404 return color + (alpha >= 0 && alpha <= 1 ? Math.round(alpha * 255).toString(16) : 'FF'); 405 } 406 return color; 407 }, 408 // çæéæºé¢è²çæåæ§å¤´å 409 generateTextAvatarImage: function (text, opts) { 410 opts = Object.assign({}, Joe.bloggerGenerateAvatarOpts, opts || {}); 411 opts.fontSize = opts.fontSize || 50; 412 opts.font = opts.font || 'Great Vibes'; 413 opts.canvasRadius = opts.canvasWidth || 1.5 * opts.fontSize; 414 415 // å¦ææ¯ var(--xxxx)ï¼åè¯´ææ¯ css é ç½®çåéï¼éè¦ä»htmlæ ·å¼ä¸è§£ææå ·ä½å¼ 416 if (opts.textColor && /var\(--([\w-]+)\)/.test(opts.textColor)) { 417 const match = opts.textColor.match(/var\(--([\w-]+)\)/); 418 if (match) { 419 let cssVar = 420 getComputedStyle(document.documentElement) 421 .getPropertyValue('--' + match[1]) 422 .trim() || 423 getComputedStyle(document.body) 424 .getPropertyValue('--' + match[1]) 425 .trim(); 426 if (cssVar) { 427 opts.textColor = cssVar; 428 } 429 } 430 } 431 432 // å¦ææ¯ var(--xxxx)ï¼åè¯´ææ¯ css é ç½®çåéï¼éè¦ä»htmlæ ·å¼ä¸è§£ææå ·ä½å¼ 433 if (opts.bgColor && /var\(--([\w-]+)\)/.test(opts.bgColor)) { 434 const match = opts.bgColor.match(/var\(--([\w-]+)\)/); 435 if (match) { 436 let cssVar = 437 getComputedStyle(document.documentElement) 438 .getPropertyValue('--' + match[1]) 439 .trim() || 440 getComputedStyle(document.body) 441 .getPropertyValue('--' + match[1]) 442 .trim(); 443 if (cssVar) { 444 opts.bgColor = cssVar; 445 } 446 } 447 } 448 449 // å建ä¸ä¸ªæ°ç Canvas å ç´ 450 const canvas = document.createElement('canvas'); 451 const ctx = canvas.getContext('2d'); 452 453 // 设置 Canvas ç尺寸 454 canvas.width = opts.canvasRadius; 455 canvas.height = opts.canvasRadius; 456 457 if (opts.bgColor) { 458 ctx.fillStyle = opts.bgColor; 459 } else { 460 // çæéæºé¢è²çæ¸åèæ¯ 461 const gradient = ctx.createRadialGradient( 462 canvas.width / 2, 463 canvas.height / 2, 464 0, 465 canvas.width / 2, 466 canvas.height / 2, 467 canvas.width / 2 468 ); 469 gradient.addColorStop(0, Joe.getRandomColor(0.7)); 470 gradient.addColorStop(1, Joe.getRandomColor(0.7)); 471 472 // ç»å¶æ¸åèæ¯ 473 ctx.fillStyle = gradient; 474 } 475 476 ctx.beginPath(); 477 ctx.arc(canvas.width / 2, canvas.height / 2, canvas.width / 2, 0, Math.PI * 2); 478 ctx.fill(); 479 480 // è®¾ç½®ææ¬æ ·å¼ 481 ctx.font = `${opts.fontSize}px ${opts.font}`; 482 483 if (opts.textColor) { 484 ctx.fillStyle = opts.textColor; 485 } else if (opts.useTextGradient) { 486 // çææåççº¿æ§æ¸å 487 const textGradient = ctx.createLinearGradient(0, 0, canvas.width, canvas.height); 488 textGradient.addColorStop(0, Joe.getRandomColor(0.9)); // æåçæ¸åè² 489 textGradient.addColorStop(1, Joe.getRandomColor(0.9)); // æåçæ¸åè² 490 ctx.fillStyle = textGradient; 491 } else if (opts.bgColor) { 492 // 设置äºèæ¯è²ï¼ä½æ¯æ²¡æè®¾ç½®æåé¢è²ï¼åéè¦è®¾ç½®é»è®¤æåé¢è²ä¸ºé»è²ï¼é²æ¢æåé¢è²åèæ¯è²ä¸è´ã注ï¼èæ¯è²ä¸ºæ¸åè²ï¼æåè½æ¾ç¤ºåºæ¥ï¼å æ¤ä¸éè¦è®¾ç½®æåé¢è²ã
493 // 妿 bgColor 为é»è²ï¼åæåé¢è²è®¾ç½®ä¸ºç½è²ï¼å¦å设置为é»è² 494 ctx.fillStyle = /(#000000|#000|black)/.test(opts.bgColor) ? '#fff' : '#000'; 495 } 496 497 ctx.textAlign = 'center'; 498 ctx.textBaseline = 'middle'; 499 500 // å¨ Canvas ä¸ç»å¶ææ¬ 501 ctx.fillText(text.charAt(0), canvas.width / 2, canvas.height / 2); 502 503 // è¿åçæçå¾ç对象 base64 ç¼ç 504 return canvas.toDataURL(); 505 }, 506 }; 507 ThemeConfig.enable_console_theme && 508 console.log( 509 '%cTheme By Jiewen' + ' | çæ¬ V' + ThemeConfig.version, 510 'padding: 8px 15px;color:#fff;background: linear-gradient(270deg, #986fee, #8695e6, #68b7dd, #18d7d3);border-radius: 0 15px 0 15px;' 511 ); 512 </script>
512 513 514 515 <!-- <th:block th:replace="~{modules/themeSettingVariable :: themeSetting}" />--> 516 <!-- <th:block th:if="${htmlType == 'post'}">--> 517 <!-- <th:block th:replace="~{modules/postMetaVariable :: postSetting}" />--> 518 <!-- </th:block>--> 519 <link rel="shortcut icon" size="32x32" href="/upload/favicon.png" /> 520 <link rel="canonical" href="https://disue.com" /> 521 <link rel="apple-touch-icon" sizes="180x180" href="/upload/favicon.png" /> 522 523 <style> 524 525 @font-face { 526 font-family: "Joe Font"; 527 font-weight: 400; 528 font-style: normal; 529 font-display: swap; 530 531 532 533 } 534 html body { 535 --waline-avatar-size: 2.25rem; 536 --waline-m-avatar-size: calc(var(--waline-avatar-size) * 9 / 13); 537 --waline-theme-color:#1A73E8; 538 --waline-active-color: #1A73E8; 539 540 --theme: #1A73E8; 541 --wave-color: #fff; 542 --scroll-bar: #c0c4cc; 543 --loading-bar: var(--theme); 544 --img-max-width: 100%; 545 font-family: "Joe Font", "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软é é»", Arial, "sans-serif"; 546 --halo-comment-widget-base-font-family: "Joe Font", "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软é é»", Arial, "sans-serif"; 547 --halo-search-widget-base-font-family: "Joe Font", "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软é é»", Arial, "sans-serif"; 548 --halo-comment-widget-base-color: var(--main); 549 --halo-comment-widget-base-info-color:var(--routine); 550 551 552 553 } 554 html[data-mode='dark'] body { 555 556 --waline-theme-color:#9999ff; 557 --waline-active-color: #9999ff; 558 --theme: #9999ff; 559 --wave-color: #fff; 560 --scroll-bar: #c0c4cc; 561 --loading-bar: var(--theme); 562 --halo-search-widget-color-modal-layer: rgba(10, 11, 12, 0.8); 563 --halo-search-widget-color-modal-content-bg: rgb(27, 27, 30); 564 --halo-search-widget-color-form-input: rgb(255, 255, 255); 565 --halo-search-widget-color-form-input-placeholder: #868686; 566 --halo-search-widget-color-form-input-bg: rgb(27, 27, 30); 567 --halo-search-widget-color-form-divider: #292929; 568 --halo-search-widget-color-result-item-bg: #232323; 569 --halo-search-widget-color-result-item-hover-bg: #2b3033; 570 --halo-search-widget-color-result-item-title: rgb(255 255 255); 571 --halo-search-widget-color-result-item-content: #868686; 572 --halo-search-widget-color-command-kbd-item: #868686; 573 --halo-search-widget-color-command-kbd-border: #868686; 574 --halo-search-widget-color-result-empty: #868686; 575 --halo-comment-widget-component-form-input-bg-color: #475569; 576 --halo-comment-widget-component-form-input-color: #ffffff; 577 --halo-comment-widget-component-form-input-border-color: #495056; 578 --halo-comment-widget-component-form-input-border-color-focus: #65a3ff; 579 --halo-comment-widget-component-form-input-box-shadow-focus: 0 0 0 0.15em #1c3966; 580 --halo-comment-widget-component-form-button-login-bg-color: #334155; 581 --halo-comment-widget-component-form-button-login-bg-color-hover: #475569; 582 --halo-comment-widget-component-form-button-login-border-color: #475569; 583 --halo-comment-widget-component-form-button-submit-border-color: #475569; 584 --halo-comment-widget-component-form-button-submit-border-color-hover: #64748b; 585 --halo-comment-widget-component-form-button-emoji-color: #cbd5e1; 586 587 --halo-comment-widget-component-comment-item-action-bg-color-hover: #475569; 588 --halo-comment-widget-component-comment-item-action-color: #64748b; 589 --halo-comment-widget-component-comment-item-action-color-hover: #94a3b8; 590 591 --halo-comment-widget-component-pagination-button-bg-color-hover: #475569; 592 --halo-comment-widget-component-pagination-button-bg-color-active: #475569; 593 --halo-comment-widget-component-pagination-button-border-color-active: #475569; 594 595 --halo-comment-widget-component-emoji-picker-rgb-color: 222, 222, 221; 596 --halo-comment-widget-component-emoji-picker-rgb-accent: 58, 130, 247; 597 --halo-comment-widget-component-emoji-picker-rgb-background: 21, 22, 23; 598 --halo-comment-widget-component-emoji-picker-rgb-input: 0, 0, 0; 599 --halo-comment-widget-component-emoji-picker-color-border: rgba(255, 255, 255, 0.1); 600 --halo-comment-widget-component-emoji-picker-color-border-over: rgba(255, 255, 255, 0.2); 601 602 603 } 604 ::-webkit-scrollbar {
605 width: 8px; 606 } 607 ::-webkit-scrollbar-thumb { 608 background: var(--scroll-bar); 609 } 610 611 612 html[data-mode="dark"] body { 613 background-repeat: no-repeat; 614 background-size: cover; 615 position: relative; 616 } 617 618 html[data-mode="dark"] body::before { 619 content: ""; 620 position: fixed; 621 top: 0; 622 left: 0; 623 width: 100%; 624 height: 100%; 625 background-image: url(""); 626 background-position: top center; 627 background-size: cover; 628 background-repeat: no-repeat; 629 z-index: -1; /* ä¿è¯å 容å±å¨èæ¯ä¹ä¸ */ 630 } 631 632 633 634 html[data-mode="dark"] body { 635 background-image: none; 636 } 637 638 </style> 639 640 641 <!-- å è½½æ¡ --> 642 <link rel="stylesheet" href="/themes/theme-Joe3/assets/lib/nprogress/nprogress.min.css" /> 643 <style> 644 #nprogress .bar { 645 height: 3px; 646 background: var(--loading-bar); 647 } 648 #nprogress .peg { 649 display: none; 650 } 651 </style> 652
652<script src="/themes/theme-Joe3/assets/lib/nprogress/nprogress.min.js"></script>
652 653 654 <link 655 rel="preload stylesheet" 656 as="style" 657 href="/themes/theme-Joe3/assets/css/min/normalize.min.css?v=1.4.0" 658 /> 659 <link 660 rel="preload stylesheet" 661 as="style" 662 href="/themes/theme-Joe3/assets/lib/font-awesome/css/font-awesome.min.css" 663 /> 664 <link 665 rel="preload stylesheet" 666 as="style" 667 href="//at.alicdn.com/t/font_2788564_crkap1ed9j5.css" 668 /> 669 <link 670 rel="preload stylesheet" 671 as="style" 672 href="//at.alicdn.com/t/c/font_4198339_jcoci5bgy7.css" 673 /> 674 675 <link 676 rel="preload stylesheet" 677 as="style" 678 href="/themes/theme-Joe3/assets/css/min/theme.min.css?v=1.4.0" 679 /> 680 <style> 681 #Joe .joe_container { 682 max-width: 1320px !important; 683 } 684 685 @media (max-width: 1360px) { 686 #Joe .joe_container { 687 max-width: initial !important; 688 } 689 } 690 @media (max-width: 768px) { 691 #Joe .joe_container { 692 max-width: initial !important; 693 } 694 } 695 </style> 696 <link rel="stylesheet" href="/themes/theme-Joe3/assets/lib/qmsg/qmsg.css" /> 697 <link 698 rel="preload stylesheet" 699 as="style" 700 href="/themes/theme-Joe3/assets/lib/animate/animate.min.css" 701 /> 702 703 704 <link 705 rel="preload stylesheet" 706 as="style" 707 href="/themes/theme-Joe3/assets/css/min/global.min.css?v=1.4.0" 708 /> 709 710 <link 711 rel="preload stylesheet" 712 as="style" 713 href="/themes/theme-Joe3/assets/css/min/index.min.css?v=1.4.0" 714 /> 715 716 717 718 719 720 721 <link 722 rel="preload stylesheet" 723 as="style" 724 href="/themes/theme-Joe3/assets/css/min/responsive.min.css?v=1.4.0" 725 /> 726 <link 727 rel="stylesheet" 728 href="/themes/theme-Joe3/assets/lib/fancybox/jquery.fancybox.min.css" 729 /> 730 731 732 <link 733 rel="preload stylesheet" 734 as="style" 735 href="/themes/theme-Joe3/assets/css/min/beauty.min.css?v=1.4.0" 736 /> 737 738 739
739<script src="/themes/theme-Joe3/assets/lib/[email protected]/jquery.min.js?v=1.4.0"></script>
739 740 741 <meta name="generator" content="Halo 2.26.1"/><!-- plugin-comment-widget start --> 742<link rel="modulepreload" href="/plugins/PluginCommentWidget/assets/static/comment-widget.js?version=3.0.0"> 743<link rel="stylesheet" href="/plugins/PluginCommentWidget/assets/static/index.css?version=3.0.0" /> 744<!-- plugin-comment-widget end --> 745<!-- PluginSearchWidget start -->
746<script src="/plugins/PluginSearchWidget/assets/static/search-widget.iife.js?version=1.7.1" defer></script>
746 747<link rel="stylesheet" href="/plugins/PluginSearchWidget/assets/static/style.css?version=1.7.1" /> 748<!-- PluginSearchWidget end --> 749<link rel="icon" href="/upload/favicon.png" /> 750<meta name="keywords" content="VPS,äºæå¡å¨,åå,Cloudflare,esim,é¶è¡å¡,VPS æå¡å¨å¸¸ç¨èæ¬,æå¡å¨è¿ç»´æå,å ¨ç eSIM è´ä¹°,æ¬ç¦å·¥ CN2 GIA è¯æµ" /> 751<meta name="description" content="Dynamic Internet Security Utility Engine" /> 752</head> 753 <!-- /OG --> 754 755 <body> 756 <div id="Joe"> 757 <!-- navbar--> 758 759 <header class="joe_header"> 760 <div 761 class="joe_header__above topInDown fixed " 762 > 763 <div 764 class="joe_container joe_header_container" 765 > 766 <i class="joe-font joe-icon-caidan joe_header__above-slideicon"></i> 767 768 <a 769 title="Disue · è¿ªç´ " 770 class="joe_header__above-logo" 771 href="https://disue.com" 772 > 773 <img 774 style="border-radius:4px" 775 src="/upload/favicon.png" 776 alt="Disue · è¿ªç´ " 777 onerror="Joe.errorImg(this, 'ErrAvatarImg')" sizes="(max-width: 640px) 94vw, (max-width: 768px) 92vw, (max-width: 1024px) 88vw, min(800px, 85vw)" srcset="/upload/favicon.png?width=1600 1600w, /upload/favicon.png?width=400 400w, /upload/favicon.png?width=800 800w, /upload/favicon.png?width=1200 1200w" 778 /> 779 </a> 780 781 <nav 782 class="joe_header__above-nav " 783 > 784 785 <!-- èªé导èª--> 786 787 788 789 790 791 792 <a 793 class="item" 794 href="/" 795 title="é¦é¡µ" 796 > 797 798 é¦é¡µ 799 </a> 800 801 802 803 804 805 806 <a 807 class="item" 808 href="//img.disue.com" 809 target="_blank" 810 title="å¾åº" 811 > 812 813 å¾åº 814 </a> 815 816 817 818 819 820 821 <a 822 class="item" 823 href="/about" 824 target="_self" 825 title="å ³äº" 826 > 827 828 å ³äº 829 </a> 830 831 832 833 834 835 836 <a 837 class="item" 838 href="/links" 839 target="_self" 840 title="åé¾" 841 > 842 843 åé¾ 844 </a> 845 846 847 848 849 850 851 852 </nav> 853 854 <div class="joe_header__above-search"> 855 <!-- <div class="nav_login">--> 856 <!-- <th:block th:if="${#authentication.name == 'anonymousUser'}">--> 857 <!-- <a href="/console" title="æç´¢"><i class="jiewen joe-icon-zhanghao"></i></a>--> 858 <!-- </th:block>--> 859 <!-- <th:block th:if="${#authentication.name != 'anonymousUser'}">--> 860 <!-- <th:block th:with="contributor = ${contributorFinder.getContributor(#authentication.name)}">--> 861 <!-- <img th:src="${contributor.avatar}" th:title="${contributor.displayName}" th:alt="${contributor.displayName}" onerror="Joe.errorImg(this, 'ErrAvatarImg')" >--> 862 <!-- </th:block>--> 863 <!-- </th:block>--> 864 <!-- </div>--> 865 <!-- <input maxlength="16" autocomplete="off" placeholder="请è¾å ¥å ³é®å..." name="keyword" value="" class="input" type="text">--> 866 <button 867 type="submit" 868 id="halo-search" 869 class="submit" 870 style="border-radius: 17px 17px 17px 17px" 871 aria-label="æç´¢æé®" 872 > 873 <i class="joe-font joe-icon-search"></i> 874 </button> 875 <!-- <span class="icon"></span>--> 876 877 <!-- <nav class="result">--> 878 <!-- <a href="archives/ce-shi-wen-zhang.html" title="æµè¯æç« " class="item">-->
879 <!-- <span class="sort">1</span>--> 880 <!-- <span class="text">æµè¯æç« </span>--> 881 <!-- </a>--> 882 <!-- <a href="archives/hello-halo.html" title="Hello Halo" class="item">--> 883 <!-- <span class="sort">2</span>--> 884 <!-- <span class="text">Hello Halo</span>--> 885 <!-- </a>--> 886 <!-- </nav>--> 887 </div> 888 889 <a href="javascript:SearchWidget.open()" title="æç´¢" 890 ><i class="joe-font joe-icon-search joe_header__above-searchicon"></i 891 ></a> 892 </div> 893 </div> 894 895 <div class="joe_header__slideout"> 896 <div class="joe_header__slideout-wrap"> 897 <img 898 width="100%" 899 height="150" 900 class="joe_header__slideout-image" 901 src="/themes/theme-Joe3/assets/img/author_bg.jpg?v=1.4.0" 902 alt="ä¾§è¾¹æ å£çº¸" 903 onerror="Joe.errorImg(this)" sizes="(max-width: 640px) 94vw, (max-width: 768px) 92vw, (max-width: 1024px) 88vw, min(800px, 85vw)" srcset="/themes/theme-Joe3/assets/img/author_bg.jpg?v=1.4.0&width=1600 1600w, /themes/theme-Joe3/assets/img/author_bg.jpg?v=1.4.0&width=400 400w, /themes/theme-Joe3/assets/img/author_bg.jpg?v=1.4.0&width=800 800w, /themes/theme-Joe3/assets/img/author_bg.jpg?v=1.4.0&width=1200 1200w" 904 /> 905 <div class="joe_header__slideout-author"> 906 <img 907 width="50" 908 height="50" 909 class="avatar ls-is-cached lazyloaded" 910 data-src="/upload/photo_2025-09-26_13-23-33.jpg" 911 src="/upload/photo_2025-09-26_13-23-33.jpg" 912 alt="å主头å" 913 data-text-avatar="Disue · è¿ªç´ " 914 onload="Joe.loadedPlaceholderReplaceImg(this, 'AvatarImg')" 915 onerror="Joe.errorImg(this, 'ErrAvatarImg')" sizes="(max-width: 640px) 94vw, (max-width: 768px) 92vw, (max-width: 1024px) 88vw, min(800px, 85vw)" srcset="/upload/photo_2025-09-26_13-23-33.jpg?width=1600 1600w, /upload/photo_2025-09-26_13-23-33.jpg?width=400 400w, /upload/photo_2025-09-26_13-23-33.jpg?width=800 800w, /upload/photo_2025-09-26_13-23-33.jpg?width=1200 1200w" 916 /> 917 <div class="info"> 918 <a 919 class="link" 920 href="https://disue.com" 921 target="_blank" 922 rel="noopener noreferrer nofollow" 923 >Disue · è¿ªç´ 924 925 </a> 926 <p class="motto joe_motto">Carpe diem</p> 927 </div> 928 </div> 929 930 <ul class="joe_header__slideout-count"> 931 <li class="item"> 932 <i class="joe-font joe-icon-danganguanli"></i> 933 <span>累计æ°å <strong>16</strong> ç¯æç« </span> 934 </li> 935 936 <li class="item"> 937 <i class="joe-font joe-icon-remen"></i> 938 <span>累计å建 <strong>16</strong> 个æ ç¾</span> 939 </li> 940 941 942 <li class="item"> 943 <i class="joe-font joe-icon-message"></i> 944 <span>累计æ¶å° <strong>2</strong> æ¡è¯è®º</span> 945 </li> 946 947 948 </ul> 949 <ul class="joe_header__slideout-menu panel-box"> 950 <li> 951 <a class="link panel in" href="#" rel="nofollow"> 952 <span>æ ç®</span> 953 <i class="joe-font joe-icon-arrow-right"></i> 954 </a> 955 <ul class="slides panel-body panel-box panel-side-menu" style="display: block"> 956 957 958 959 960 961 962 <li> 963 <a 964 class="link" 965 href="/" 966 title="é¦é¡µ" 967 >é¦é¡µ</a 968 > 969 </li> 970 971 972 973 974 <li> 975 <a 976 class="link" 977 href="//img.disue.com" 978 target="_blank" 979 title="å¾åº" 980 >å¾åº</a 981 > 982 </li> 983 984 985 986 987 <li> 988 <a 989 class="link" 990 href="/about" 991 target="_self" 992 title="å ³äº" 993 >å ³äº</a 994 > 995 </li> 996 997 998 999 1000 <li> 1001 <a 1002 class="link" 1003 href="/links" 1004 target="_self" 1005 title="åé¾" 1006 >åé¾</a 1007 > 1008 </li> 1009 1010 1011 1012 1013 1014 1015 </ul> 1016 </li> 1017 </ul> 1018 </div> 1019 </div> 1020 1021 <div class="joe_header__searchout"> 1022 <a href="javascript:SearchWidget.open()" title="æç´¢"></a> 1023 <!-- <div class="joe_container">--> 1024 1025 <!-- <div class="joe_header__searchout-inner">--> 1026 <!-- <form class="joe_header__above-search-mobile" method="get" action="http://localhost:8093/search">--> 1027 <!-- <input maxlength="16" autocomplete="off" placeholder="请è¾å ¥å ³é®å..." name="keyword" value="" class="input" type="text">--> 1028 <!-- <button type="submit" class="submit">æç´¢</button>--> 1029 <!-- </form>--> 1030 <!-- </div>--> 1031 <!-- </div>--> 1032 </div> 1033 1034 <div class="joe_header__toc"> 1035 <div class="joe_header__toc-wrap"> 1036 <div class="toc_top"> 1037 <h3>ç® å½<span>CONTENT</span></h3> 1038 <img 1039 width="100%" 1040 height="150" 1041 src="/themes/theme-Joe3/assets/img/context_bg.png" 1042 alt="æç« ç®å½" 1043 onerror="Joe.errorImg(this)" sizes="(max-width: 640px) 94vw, (max-width: 768px) 92vw, (max-width: 1024px) 88vw, min(800px, 85vw)" srcset="/themes/theme-Joe3/assets/img/context_bg.png?width=1600 1600w, /themes/theme-Joe3/assets/img/context_bg.png?width=400 400w, /themes/theme-Joe3/assets/img/context_bg.png?width=800 800w, /themes/theme-Joe3/assets/img/context_bg.png?width=1200 1200w" 1044 /> 1045 </div> 1046 <div id="js-toc-mobile" class="toc"></div> 1047 </div> 1048 </div> 1049 1050 <div class="joe_header__mask"></div> 1051 </header> 1052 1053 <!-- é¦é¡µå¤§å¾--> 1054 1055 1056 <div 1057 class="joe_container joe_main_container page-index animated showInUp " 1058 > 1059 <div class="joe_main"> 1060 <div class="joe_index"> 1061 <!-- è½®æå¾--> 1062 1063 <!-- ç鍿¨¡å--> 1064 1065 1066 1067 <div class="joe_index__article"> 1068 <div class="joe_index__title"> 1069 <ul class="joe_index__title-title passage-list-tabs default"> 1070 <li class="item active" data-type="1">ææ°æç« </li> 1071 </ul> 1072 1073 </div> 1074 <div class="joe_index__list"> 1075 <ul class="joe_list"> 1076 1077 1078 <li 1079 class="joe_list__item default animated wow data-wow-delay="0.0s"" 1080 style="animation-delay: 0.0s;" 1081 > 1082 1083 <a 1084 href="/archives/esimgg" 1085 class="thumbnail" 1086 title="å嫿¼«æ¸¸ç¦æ¼ï¼æ¥æ±èªç±è¿æ¥ï¼eSIM.gg" 1087 target="_blank" 1088 rel="noopener noreferrer" 1089 > 1090 1091 <img 1092 width="100%" 1093 height="100%" 1094 class="lazyload" 1095 data-src="/upload/image-WrDk.png" 1096 srcset="/upload/image-WrDk.png?width=400 400w, 1097 /upload/image-WrDk.png?width=800 800w, 1098 /upload/image-WrDk.png?width=1200 1200w, 1099 /upload/image-WrDk.png?width=1600 1600w"
1100 sizes="(max-width: 1600px) 100vw, 1600px" 1101 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1102 alt="å嫿¼«æ¸¸ç¦æ¼ï¼æ¥æ±èªç±è¿æ¥ï¼eSIM.gg" 1103 onerror="Joe.errorImg(this, 'HomeErrImg')" 1104 /> 1105 1106 <time datetime="2025-09-22" 1107 >2025-09-22</time 1108 > 1109 <i class="joe-font joe-icon-picture"></i> 1110 </a> 1111 1112 <div class="information"> 1113 <a 1114 href="/archives/esimgg" 1115 class="title" 1116 title="å嫿¼«æ¸¸ç¦æ¼ï¼æ¥æ±èªç±è¿æ¥ï¼eSIM.gg" 1117 target="_blank" 1118 rel="noopener noreferrer" 1119 > 1120 1121 <span class="badge" style="display: inline-block">置顶</span> 1122 1123 å嫿¼«æ¸¸ç¦æ¼ï¼æ¥æ±èªç±è¿æ¥ï¼eSIM.gg 1124 </a> 1125 <a 1126 class="abstract" 1127 href="/archives/esimgg" 1128 title="æ¨æ¯å¦åå¦äºæè´µçå½é 漫游费ãç¹ççå®ä½ SIM 塿´æ¢ï¼ä»¥åå°è¾¾ç®çå°åå¯»æ¾æ¬å°å¡ç麻ç¦ï¼ ç°å¨ï¼æ¯æ¶åå å ¥æ°ååä¿¡èµ eSIM.gg çæ è¡è ï¼ä½éªç±ç¤¾åºåéå¬ççå ¨çæ ç¼è¿æ¥è§£å³æ¹æ¡ï¼ æºäºç¤¾åºçè¿æ¥é©æ°ï¼eSIM.gg çè¯çæ äº" 1129 target="_blank" 1130 rel="noopener noreferrer" 1131 >æ¨æ¯å¦åå¦äºæè´µçå½é 漫游费ãç¹ççå®ä½ SIM 塿´æ¢ï¼ä»¥åå°è¾¾ç®çå°åå¯»æ¾æ¬å°å¡ç麻ç¦ï¼ ç°å¨ï¼æ¯æ¶åå å ¥æ°ååä¿¡èµ eSIM.gg çæ è¡è ï¼ä½éªç±ç¤¾åºåéå¬ççå ¨çæ ç¼è¿æ¥è§£å³æ¹æ¡ï¼ æºäºç¤¾åºçè¿æ¥é©æ°ï¼eSIM.gg çè¯çæ äº</a 1132 > 1133 <div class="meta"> 1134 <ul class="items"> 1135 <li>2025-09-22</li> 1136 <li><i class="joe-font joe-icon-eye"></i>601</li> 1137 1138 <li><i class="joe-font joe-icon-message"></i>0</li> 1139 1140 1141 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1142 </ul> 1143 1144 <ul class="categories"> 1145 <li class="pcate"> 1146 <svg 1147 class="icon"
1148 viewBox="0 0 1024 1024" 1149 xmlns="http://www.w3.org/2000/svg" 1150 width="15" 1151 height="15" 1152 > 1153 <path 1154 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1155 fill="var(--minor)" 1156 ></path> 1157 <path 1158 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1159 fill="#ff6a18" 1160 ></path> 1161 </svg> 1162 <a 1163 class="link" 1164 target="_blank" 1165 rel="noopener noreferrer" 1166 href="/categories/digitalnomad" 1167 >æ°åçæ´»</a 1168 > 1169 </li> 1170 </ul> 1171 1172 </div> 1173 </div> 1174 </li> 1175 1176 1177 1178 <li 1179 class="joe_list__item default animated wow data-wow-delay="0.1s"" 1180 style="animation-delay: 0.1s;" 1181 > 1182 1183 <a 1184 href="/archives/hk-vps-line" 1185 class="thumbnail" 1186 title="馿¸¯ VPS çº¿è·¯å ¨è§£æï¼NetLabãXNNetãVH GlobalãCloudie ç䏿¸¸ä¸çé¨å家大æ´ç" 1187 target="_blank" 1188 rel="noopener noreferrer" 1189 > 1190 1191 <img 1192 width="100%" 1193 height="100%" 1194 class="lazyload" 1195 data-src="/upload/VPS.png" 1196 srcset="/upload/VPS.png?width=400 400w, 1197 /upload/VPS.png?width=800 800w, 1198 /upload/VPS.png?width=1200 1200w, 1199 /upload/VPS.png?width=1600 1600w" 1200 sizes="(max-width: 1600px) 100vw, 1600px" 1201 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1202 alt="馿¸¯ VPS çº¿è·¯å ¨è§£æï¼NetLabãXNNetãVH GlobalãCloudie ç䏿¸¸ä¸çé¨å家大æ´ç" 1203 onerror="Joe.errorImg(this, 'HomeErrImg')" 1204 /> 1205 1206 <time datetime="2026-09-20" 1207 >2026-09-20</time 1208 > 1209 <i class="joe-font joe-icon-picture"></i> 1210 </a> 1211 1212 <div class="information"> 1213 <a 1214 href="/archives/hk-vps-line" 1215 class="title" 1216 title="馿¸¯ VPS çº¿è·¯å ¨è§£æï¼NetLabãXNNetãVH GlobalãCloudie ç䏿¸¸ä¸çé¨å家大æ´ç" 1217 target="_blank" 1218 rel="noopener noreferrer" 1219 > 1220 1221 馿¸¯ VPS çº¿è·¯å ¨è§£æï¼NetLabãXNNetãVH GlobalãCloudie ç䏿¸¸ä¸çé¨å家大æ´ç 1222 </a> 1223 <a 1224 class="abstract" 1225 href="/archives/hk-vps-line" 1226 title="馿¸¯ VPS ä¸ç´æ¯å½å ç¨æ·éæ©æµ·å¤æå¡å¨æ¶æ¯è¾ç¹æ®çä¸ç±»äº§åã 䏿¹é¢ï¼é¦æ¸¯è·ç¦»ä¸å½å¤§éè¾è¿ï¼å»¶è¿éå¸¸ææ¾ä½äºæ¬§ç¾ãæ¥æ¬çå°åºï¼å¦ä¸æ¹é¢ï¼é¦æ¸¯å½é å¸¦å®½èµæºä¸°å¯ï¼è¿è¥åå IDC ä¼å¤ï¼åæ ·æ æ³¨â馿¸¯ä¼åââä¸ç½ç´è¿ââCMIââCN2âç VPSï¼å®é ä½éªå´å¯è½å®å ¨ä¸åã å°¤å ¶æ¯è¿å å¹´ï¼å¤§éä½ä»·é¦" 1227 target="_blank" 1228 rel="noopener noreferrer" 1229 >馿¸¯ VPS ä¸ç´æ¯å½å ç¨æ·éæ©æµ·å¤æå¡å¨æ¶æ¯è¾ç¹æ®çä¸ç±»äº§åã 䏿¹é¢ï¼é¦æ¸¯è·ç¦»ä¸å½å¤§éè¾è¿ï¼å»¶è¿éå¸¸ææ¾ä½äºæ¬§ç¾ãæ¥æ¬çå°åºï¼å¦ä¸æ¹é¢ï¼é¦æ¸¯å½é å¸¦å®½èµæºä¸°å¯ï¼è¿è¥åå IDC ä¼å¤ï¼åæ ·æ æ³¨â馿¸¯ä¼åââä¸ç½ç´è¿ââCMIââCN2âç VPSï¼å®é ä½éªå´å¯è½å®å ¨ä¸åã å°¤å ¶æ¯è¿å å¹´ï¼å¤§éä½ä»·é¦</a 1230 > 1231 <div class="meta"> 1232 <ul class="items"> 1233 <li>2026-09-20</li> 1234 <li>
1234<i class="joe-font joe-icon-eye"></i>61</li> 1235 1236 <li><i class="joe-font joe-icon-message"></i>0</li> 1237 1238 1239 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1240 </ul> 1241 1242 <ul class="categories"> 1243 <li class="pcate"> 1244 <svg 1245 class="icon" 1246 viewBox="0 0 1024 1024" 1247 xmlns="http://www.w3.org/2000/svg" 1248 width="15" 1249 height="15" 1250 > 1251 <path 1252 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1253 fill="var(--minor)" 1254 ></path> 1255 <path 1256 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1257 fill="#ff6a18" 1258 ></path> 1259 </svg> 1260 <a 1261 class="link" 1262 target="_blank" 1263 rel="noopener noreferrer" 1264 href="/categories/digitalnomad" 1265 >æ°åçæ´»</a 1266 > 1267 </li> 1268 </ul> 1269 1270 </div> 1271 </div> 1272 </li> 1273 1274 1275 1276 <li 1277 class="joe_list__item default animated wow data-wow-delay="0.2s"" 1278 style="animation-delay: 0.2s;" 1279 > 1280 1281 <a 1282 href="/archives/hermesai" 1283 class="thumbnail" 1284 title="ä»è天æºå¨äººå° AI å·¥ä½ä¼ä¼´ï¼æä½¿ç¨ Hermes ä¸ AI ç䏿®µå®è·µ" 1285 target="_blank" 1286 rel="noopener noreferrer" 1287 > 1288 1289 <img 1290 width="100%" 1291 height="100%" 1292 class="lazyload" 1293 data-src="/upload/hermes.jpg" 1294 srcset="/upload/hermes.jpg?width=400 400w, 1295 /upload/hermes.jpg?width=800 800w, 1296 /upload/hermes.jpg?width=1200 1200w, 1297 /upload/hermes.jpg?width=1600 1600w" 1298 sizes="(max-width: 1600px) 100vw, 1600px" 1299 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1300 alt="ä»è天æºå¨äººå° AI å·¥ä½ä¼ä¼´ï¼æä½¿ç¨ Hermes ä¸ AI ç䏿®µå®è·µ" 1301 onerror="Joe.errorImg(this, 'HomeErrImg')" 1302 /> 1303 1304 <time datetime="2026-08-19" 1305 >2026-08-19</time 1306 > 1307 <i class="joe-font joe-icon-picture"></i> 1308 </a> 1309 1310 <div class="information"> 1311 <a 1312 href="/archives/hermesai" 1313 class="title" 1314 title="ä»è天æºå¨äººå° AI å·¥ä½ä¼ä¼´ï¼æä½¿ç¨ Hermes ä¸ AI ç䏿®µå®è·µ" 1315 target="_blank" 1316 rel="noopener noreferrer" 1317 > 1318 1319 ä»è天æºå¨äººå° AI å·¥ä½ä¼ä¼´ï¼æä½¿ç¨ Hermes ä¸ AI ç䏿®µå®è·µ 1320 </a> 1321 <a 1322 class="abstract" 1323 href="/archives/hermesai" 1324 title="è¿æ®µæ¶é´ï¼æä¸ç´å¨æè ¾ AIã ä¸¥æ ¼æ¥è¯´ï¼ä¹ä¸æ¯å纯âç¨ AIâã ææ´æå ´è¶£çæ¯ï¼è½ä¸è½æ AI çæ£æ¥è¿èªå·±ççµèãæå¡å¨ãæ°æ®åæ¥å¸¸å·¥ä½éã æä»¥è¿æ®µæ¶é´ï¼ææè ¾äºä¸å°ä¸è¥¿ï¼ä¸åç大模åãOpenRouterãTelegramãHermes AgentãDockerãæ°æ®åºãExcelãOCR" 1325 target="_blank" 1326 rel="noopener noreferrer" 1327 >è¿æ®µæ¶é´ï¼æä¸ç´å¨æè ¾ AIã ä¸¥æ ¼æ¥è¯´ï¼ä¹ä¸æ¯å纯âç¨ AIâã ææ´æå ´è¶£çæ¯ï¼è½ä¸è½æ AI çæ£æ¥è¿èªå·±ççµèãæå¡å¨ãæ°æ®åæ¥å¸¸å·¥ä½éã æä»¥è¿æ®µæ¶é´ï¼ææè ¾äºä¸å°ä¸è¥¿ï¼ä¸åç大模åãOpenRouterãTelegramãHermes AgentãDockerãæ°æ®åºãExcelãOCR</a 1328 > 1329 <div class="meta"> 1330 <ul class="items"> 1331 <li>2026-08-19</li> 1332 <li>
1332<i class="joe-font joe-icon-eye"></i>46</li> 1333 1334 <li><i class="joe-font joe-icon-message"></i>0</li> 1335 1336 1337 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1338 </ul> 1339 1340 <ul class="categories"> 1341 <li class="pcate"> 1342 <svg 1343 class="icon" 1344 viewBox="0 0 1024 1024" 1345 xmlns="http://www.w3.org/2000/svg" 1346 width="15" 1347 height="15" 1348 > 1349 <path 1350 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1351 fill="var(--minor)" 1352 ></path> 1353 <path 1354 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1355 fill="#ff6a18" 1356 ></path> 1357 </svg> 1358 <a 1359 class="link" 1360 target="_blank" 1361 rel="noopener noreferrer" 1362 href="/categories/digitalnomad" 1363 >æ°åçæ´»</a 1364 > 1365 </li> 1366 </ul> 1367 1368 </div> 1369 </div> 1370 </li> 1371 1372 1373 1374 <li 1375 class="joe_list__item default animated wow data-wow-delay="0.3s"" 1376 style="animation-delay: 0.3s;" 1377 > 1378 1379 <a 1380 href="/archives/ikuai-openwrt-agh-guide" 1381 class="thumbnail" 1382 title="iKuai + OpenWrt + AdGuard Home æä½³ç½ç»æ¶æä¸ DNS ä¼åé ç½®ä¸æå" 1383 target="_blank" 1384 rel="noopener noreferrer" 1385 > 1386 1387 <img 1388 width="100%" 1389 height="100%" 1390 class="lazyload" 1391 data-src="/upload/ik+op+dns.jpg" 1392 srcset="/upload/ik+op+dns.jpg?width=400 400w, 1393 /upload/ik+op+dns.jpg?width=800 800w, 1394 /upload/ik+op+dns.jpg?width=1200 1200w, 1395 /upload/ik+op+dns.jpg?width=1600 1600w" 1396 sizes="(max-width: 1600px) 100vw, 1600px" 1397 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1398 alt="iKuai + OpenWrt + AdGuard Home æä½³ç½ç»æ¶æä¸ DNS ä¼åé ç½®ä¸æå" 1399 onerror="Joe.errorImg(this, 'HomeErrImg')" 1400 /> 1401 1402 <time datetime="2026-07-25" 1403 >2026-07-25</time 1404 > 1405 <i class="joe-font joe-icon-picture"></i> 1406 </a> 1407 1408 <div class="information"> 1409 <a 1410 href="/archives/ikuai-openwrt-agh-guide" 1411 class="title" 1412 title="iKuai + OpenWrt + AdGuard Home æä½³ç½ç»æ¶æä¸ DNS ä¼åé ç½®ä¸æå" 1413 target="_blank" 1414 rel="noopener noreferrer" 1415 > 1416 1417 iKuai + OpenWrt + AdGuard Home æä½³ç½ç»æ¶æä¸ DNS ä¼åé ç½®ä¸æå 1418 </a> 1419 <a 1420 class="abstract" 1421 href="/archives/ikuai-openwrt-agh-guide" 1422 title="1. æ ¸å¿æ¶æè®¾è®¡æè·¯ è¿å¥æ¶æçæ ¸å¿ç念æ¯ï¼åå·¥æç¡®ãé«å¯ç¨ä¼å ãå ¨ç½å»å¹¿åãæéæºè½åæµã iKuaiï¼ä¸»è·¯ç±ï¼ï¼è´è´£è¿è¥åæ¨å·ãDHCP å°ååé ãå¤ WAN è´è½½åè¡¡åæ´ä½ç½ç»ç¨³
1422宿§ãæ®éè®¾å¤æµéç´è¿ä¸»è·¯ç±ï¼ç¡®ä¿è¾ å©è®¾å¤ç»´æ¤æé坿¶ï¼å ¨å®¶åºç¡ç½ç»ä¸åä»»ä½å½±åã AdGuard Home (A" 1423 target="_blank" 1424 rel="noopener noreferrer" 1425 >1. æ ¸å¿æ¶æè®¾è®¡æè·¯ è¿å¥æ¶æçæ ¸å¿ç念æ¯ï¼åå·¥æç¡®ãé«å¯ç¨ä¼å ãå ¨ç½å»å¹¿åãæéæºè½åæµã iKuaiï¼ä¸»è·¯ç±ï¼ï¼è´è´£è¿è¥åæ¨å·ãDHCP å°ååé ãå¤ WAN è´è½½åè¡¡åæ´ä½ç½ç»ç¨³å®æ§ãæ®éè®¾å¤æµéç´è¿ä¸»è·¯ç±ï¼ç¡®ä¿è¾ å©è®¾å¤ç»´æ¤æé坿¶ï¼å ¨å®¶åºç¡ç½ç»ä¸åä»»ä½å½±åã AdGuard Home (A</a 1426 > 1427 <div class="meta"> 1428 <ul class="items"> 1429 <li>2026-07-25</li> 1430 <li><i class="joe-font joe-icon-eye"></i>88</li> 1431 1432 <li><i class="joe-font joe-icon-message"></i>0</li> 1433 1434 1435 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1436 </ul> 1437 1438 <ul class="categories"> 1439 <li class="pcate"> 1440 <svg 1441 class="icon"
1442 viewBox="0 0 1024 1024" 1443 xmlns="http://www.w3.org/2000/svg" 1444 width="15" 1445 height="15" 1446 > 1447 <path 1448 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1449 fill="var(--minor)" 1450 ></path> 1451 <path 1452 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1453 fill="#ff6a18" 1454 ></path> 1455 </svg> 1456 <a 1457 class="link" 1458 target="_blank" 1459 rel="noopener noreferrer" 1460 href="/categories/digitalnomad" 1461 >æ°åçæ´»</a 1462 > 1463 </li> 1464 </ul> 1465 1466 </div> 1467 </div> 1468 </li> 1469 1470 1471 1472 <li 1473 class="joe_list__item default animated wow data-wow-delay="0.4s"" 1474 style="animation-delay: 0.4s;" 1475 > 1476 1477 <a 1478 href="/archives/network-routing-guide" 1479 class="thumbnail" 1480 title="è·¨å¢ç½ç»çº¿è·¯ç§æ®ï¼ä» 163/CN2 GIA å° IEPL/IX ä¸çº¿ä¸å½é äºèæå" 1481 target="_blank" 1482 rel="noopener noreferrer" 1483 > 1484 1485 <img 1486 width="100%" 1487 height="100%" 1488 class="lazyload" 1489 data-src="/upload/images" 1490 srcset="/upload/images 400w, 1491 /upload/images 800w, 1492 /upload/images 1200w, 1493 /upload/images 1600w" 1494 sizes="(max-width: 1600px) 100vw, 1600px" 1495 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1496 alt="è·¨å¢ç½ç»çº¿è·¯ç§æ®ï¼ä» 163/CN2 GIA å° IEPL/IX ä¸çº¿ä¸å½é äºèæå" 1497 onerror="Joe.errorImg(this, 'HomeErrImg')" 1498 /> 1499 1500 <time datetime="2026-07-15" 1501 >2026-07-15</time 1502 > 1503 <i class="joe-font joe-icon-picture"></i> 1504 </a> 1505 1506 <div class="information"> 1507 <a 1508 href="/archives/network-routing-guide" 1509 class="title" 1510 title="è·¨å¢ç½ç»çº¿è·¯ç§æ®ï¼ä» 163/CN2 GIA å° IEPL/IX ä¸çº¿ä¸å½é äºèæå" 1511 target="_blank" 1512 rel="noopener noreferrer" 1513 > 1514 1515 è·¨å¢ç½ç»çº¿è·¯ç§æ®ï¼ä» 163/CN2 GIA å° IEPL/IX ä¸çº¿ä¸å½é äºèæå 1516 </a> 1517 <a 1518 class="abstract" 1519 href="/archives/network-routing-guide" 1520 title="æ¬ææ¯ä¸ç¯å ¨é¢ç³»ç»ãéä¿ææçå ¨çè·¨å¢ç½ç»çº¿è·¯ç§æ®æåãä»ç½ç»çº¿è·¯çå®ä¹åºåï¼æ·±åº¦è§£æ AS ä¸ BGP åè®®ãä¸å½ä¸å¤§è¿è¥åï¼çµä¿¡ãèéãç§»å¨ï¼ç骨干ä¸ç²¾åç½ï¼CN2 GIA/9929/CMIN2ï¼ãIEPL/IPLC/IX ä¸çº¿æ¶æï¼ä»¥åæµ·å¤ Tier 1 è¿è¥åçå½é äºèæºå¶ï¼å¹¶æä¾å¸¸ç¨çç½ç»æµè¯å·¥å ·ï¼å©ä½ å½»åºåå«ç½ç»å»¶è¿ä¸æ¥å µã" 1521 target="_blank" 1522 rel="noopener noreferrer" 1523 >æ¬ææ¯ä¸ç¯å ¨é¢ç³»ç»ãéä¿ææçå ¨çè·¨å¢ç½ç»çº¿è·¯ç§æ®æåãä»ç½ç»çº¿è·¯çå®ä¹åºåï¼æ·±åº¦è§£æ AS ä¸ BGP åè®®ãä¸å½ä¸å¤§è¿è¥åï¼çµä¿¡ãèéãç§»å¨ï¼ç骨干ä¸ç²¾åç½ï¼CN2 GIA/9929/CMIN2ï¼ãIEPL/IPLC/IX ä¸çº¿æ¶æï¼ä»¥åæµ·å¤ Tier 1 è¿è¥åçå½é äºèæºå¶ï¼å¹¶æä¾å¸¸ç¨çç½ç»æµè¯å·¥å ·ï¼å©ä½ å½»åºåå«ç½ç»å»¶è¿ä¸æ¥å µã</a 1524 > 1525 <div class="meta"> 1526 <ul class="items"> 1527 <li>2026-07-15</li> 1528 <li>
1528<i class="joe-font joe-icon-eye"></i>82</li> 1529 1530 <li><i class="joe-font joe-icon-message"></i>0</li> 1531 1532 1533 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1534 </ul> 1535 1536 <ul class="categories"> 1537 <li class="pcate"> 1538 <svg 1539 class="icon" 1540 viewBox="0 0 1024 1024" 1541 xmlns="http://www.w3.org/2000/svg" 1542 width="15" 1543 height="15" 1544 > 1545 <path 1546 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1547 fill="var(--minor)" 1548 ></path> 1549 <path 1550 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1551 fill="#ff6a18" 1552 ></path> 1553 </svg> 1554 <a 1555 class="link" 1556 target="_blank" 1557 rel="noopener noreferrer" 1558 href="/categories/cloudtech" 1559 >äºç«¯æè ¾</a 1560 > 1561 </li> 1562 </ul> 1563 1564 </div> 1565 </div> 1566 </li> 1567 1568 1569 1570 <li 1571 class="joe_list__item default animated wow data-wow-delay="0.5s"" 1572 style="animation-delay: 0.5s;" 1573 > 1574 1575 <a 1576 href="/archives/halosq" 1577 class="thumbnail" 1578 title="1Panel ä¸ Halo å客å®å ¨å åºå®ææå" 1579 target="_blank" 1580 rel="noopener noreferrer" 1581 > 1582 1583 <img 1584 width="100%" 1585 height="100%" 1586 class="lazyload" 1587 data-src="https://img.disue.com/image/71df72889d113e9627ebec21e2394e5d" 1588 srcset="https://img.disue.com/image/71df72889d113e9627ebec21e2394e5d 400w, 1589 https://img.disue.com/image/71df72889d113e9627ebec21e2394e5d 800w, 1590 https://img.disue.com/image/71df72889d113e9627ebec21e2394e5d 1200w, 1591 https://img.disue.com/image/71df72889d113e9627ebec21e2394e5d 1600w" 1592 sizes="(max-width: 1600px) 100vw, 1600px" 1593 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1594 alt="1Panel ä¸ Halo å客å®å ¨å åºå®ææå" 1595 onerror="Joe.errorImg(this, 'HomeErrImg')" 1596 /> 1597 1598 <time datetime="2026-04-08" 1599 >2026-04-08</time 1600 > 1601 <i class="joe-font joe-icon-picture"></i> 1602 </a> 1603 1604 <div class="information"> 1605 <a 1606 href="/archives/halosq" 1607 class="title" 1608 title="1Panel ä¸ Halo å客å®å ¨å åºå®ææå" 1609 target="_blank" 1610 rel="noopener noreferrer" 1611 > 1612 1613 1Panel ä¸ Halo å客å®å ¨å åºå®ææå 1614 </a> 1615 <a 1616 class="abstract" 1617 href="/archives/halosq" 1618 title="å¨å ¬ç½ç¯å¢ä¸è¿è¡å客ï¼å®å ¨æ¯ç¬¬ä¸è¦å¡ãæ¬æå°ä»é¢æ¿ãä¼ è¾ãé²ç«å¢ãåºç¨åç³»ç»äºä¸ªç»´åº¦ï¼è¯¦ç»ä»ç»å¦ä½æå»ºä¸ä¸ªâå ¡å级âç Halo å客ã 1. 1Panel 颿¿å±ï¼éæ»âåå°å¤§é¨â 1Panel æ¯æå¡å¨ç管ç䏿¢ï¼å¿ é¡»ä¼å éåâç©çé离âçç¥ï¼é²æ¢éæ³æ¢æµã ä¿®æ¹é»è®¤ç«¯å£ï¼ é»è®¤ç«¯å£ï¼å¦ 888" 1619 target="_blank" 1620 rel="noopener noreferrer" 1621 >å¨å ¬ç½ç¯å¢ä¸è¿è¡å客ï¼å®å ¨æ¯ç¬¬ä¸è¦å¡ãæ¬æå°ä»é¢æ¿ãä¼ è¾ãé²ç«å¢ãåºç¨åç³»ç»äºä¸ªç»´åº¦ï¼è¯¦ç»ä»ç»å¦ä½æå»ºä¸ä¸ªâå ¡å级âç Halo å客ã 1. 1Panel 颿¿å±ï¼éæ»âåå°å¤§é¨â 1Panel æ¯æå¡å¨ç管ç䏿¢ï¼å¿ é¡»ä¼å éåâç©çé离âçç¥ï¼é²æ¢éæ³æ¢æµã ä¿®æ¹é»è®¤ç«¯å£ï¼ é»è®¤ç«¯å£ï¼å¦ 888</a 1622 > 1623 <div class="meta"> 1624 <ul class="items"> 1625 <li>2026-04-08</li> 1626 <li>
1626<i class="joe-font joe-icon-eye"></i>104</li> 1627 1628 <li><i class="joe-font joe-icon-message"></i>1</li> 1629 1630 1631 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1632 </ul> 1633 1634 <ul class="categories"> 1635 <li class="pcate"> 1636 <svg 1637 class="icon" 1638 viewBox="0 0 1024 1024" 1639 xmlns="http://www.w3.org/2000/svg" 1640 width="15" 1641 height="15" 1642 > 1643 <path 1644 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1645 fill="var(--minor)" 1646 ></path> 1647 <path 1648 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1649 fill="#ff6a18" 1650 ></path> 1651 </svg> 1652 <a 1653 class="link" 1654 target="_blank" 1655 rel="noopener noreferrer" 1656 href="/categories/cloudtech" 1657 >äºç«¯æè ¾</a 1658 > 1659 </li> 1660 </ul> 1661 1662 </div> 1663 </div> 1664 </li> 1665 1666 1667 1668 <li 1669 class="joe_list__item default animated wow data-wow-delay="0.6s"" 1670 style="animation-delay: 0.6s;" 1671 > 1672 1673 <a 1674 href="/archives/bwh-to-zgo" 1675 class="thumbnail" 1676 title="haloå客æé 90%ï¼å©ç¨æ¬ç¦å·¥åä¸è½¬ï¼å®ç°å¨æå 容ä¸éæèµæºçæè´å é" 1677 target="_blank" 1678 rel="noopener noreferrer" 1679 > 1680 1681 <img 1682 width="100%" 1683 height="100%" 1684 class="lazyload" 1685 data-src="/upload/bwh-zgo.png" 1686 srcset="/upload/bwh-zgo.png?width=400 400w, 1687 /upload/bwh-zgo.png?width=800 800w, 1688 /upload/bwh-zgo.png?width=1200 1200w, 1689 /upload/bwh-zgo.png?width=1600 1600w" 1690 sizes="(max-width: 1600px) 100vw, 1600px" 1691 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1692 alt="haloå客æé 90%ï¼å©ç¨æ¬ç¦å·¥åä¸è½¬ï¼å®ç°å¨æå 容ä¸éæèµæºçæè´å é" 1693 onerror="Joe.errorImg(this, 'HomeErrImg')" 1694 /> 1695 1696 <time datetime="2026-04-05" 1697 >2026-04-05</time 1698 > 1699 <i class="joe-font joe-icon-picture"></i> 1700 </a> 1701 1702 <div class="information"> 1703 <a 1704 href="/archives/bwh-to-zgo" 1705 class="title" 1706 title="haloå客æé 90%ï¼å©ç¨æ¬ç¦å·¥åä¸è½¬ï¼å®ç°å¨æå 容ä¸éæèµæºçæè´å é" 1707 target="_blank" 1708 rel="noopener noreferrer" 1709 > 1710 1711 haloå客æé 90%ï¼å©ç¨æ¬ç¦å·¥åä¸è½¬ï¼å®ç°å¨æå 容ä¸éæèµæºçæè´å é 1712 </a> 1713 <a 1714 class="abstract" 1715 href="/archives/bwh-to-zgo" 1716 title="0. åè¨ï¼ä½ æ¯å¦ä¹å¨ä¸ºå客å è½½é度头ç¼ï¼ å¾å¤åä¸»å° Halo é¨ç½²å¨æµ·å¤è½å°æºä¸ï¼è½ç¶æ§ä»·æ¯é«ï¼ä½å½å è®¿å®¢å¨æé«å³°å è½½èµæºæ¶å¸¸æâå°¿æ¥âãè½ç¶ 1Panel 颿¿èªå¸¦äºâæå¡å¨ç¼åâå¼å ³ï¼ä½ä¼ ç»çâä¸ååâç¼åå¾å¾ä¼å¯¼è´åå°ä¿å失败ãè¯è®ºä¸å®æ¶ãçè³ç»å½æçº¿ã ä»å¤©å享ä¸å¥ååååæºå éâç»ææ¹" 1717 target="_blank" 1718 rel="noopener noreferrer" 1719 >0. åè¨ï¼ä½ æ¯å¦ä¹å¨ä¸ºå客å è½½é度头ç¼ï¼ å¾å¤åä¸»å° Halo é¨ç½²å¨æµ·å¤è½å°æºä¸ï¼è½ç¶æ§ä»·æ¯é«ï¼ä½å½å è®¿å®¢å¨æé«å³°å è½½èµæºæ¶å¸¸æâå°¿æ¥âãè½ç¶ 1Panel 颿¿èªå¸¦äºâæå¡å¨ç¼åâå¼å ³ï¼ä½ä¼ ç»çâä¸ååâç¼åå¾å¾ä¼å¯¼è´åå°ä¿å失败ãè¯è®ºä¸å®æ¶ãçè³ç»å½æçº¿ã ä»å¤©å享ä¸å¥ååååæºå éâç»ææ¹<
1719/a 1720 > 1721 <div class="meta"> 1722 <ul class="items"> 1723 <li>2026-04-05</li> 1724 <li><i class="joe-font joe-icon-eye"></i>74</li> 1725 1726 <li><i class="joe-font joe-icon-message"></i>0</li> 1727 1728 1729 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1730 </ul> 1731 1732 <ul class="categories"> 1733 <li class="pcate"> 1734 <svg 1735 class="icon" 1736 viewBox="0 0 1024 1024" 1737 xmlns="http://www.w3.org/2000/svg" 1738 width="15" 1739 height="15" 1740 > 1741 <path 1742 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1743 fill="var(--minor)" 1744 ></path> 1745 <path 1746 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1747 fill="#ff6a18" 1748 ></path> 1749 </svg> 1750 <a 1751 class="link" 1752 target="_blank" 1753 rel="noopener noreferrer" 1754 href="/categories/cloudtech" 1755 >äºç«¯æè ¾</a 1756 > 1757 </li> 1758 </ul> 1759 1760 </div> 1761 </div> 1762 </li> 1763 1764 1765 1766 <li 1767 class="joe_list__item default animated wow data-wow-delay="0.7s"" 1768 style="animation-delay: 0.7s;" 1769 > 1770 1771 <a 1772 href="/archives/esim-global" 1773 class="thumbnail" 1774 title="å ¨ç eSIM éè´ä¸é¿æä¿å·å ¨æ»ç¥" 1775 target="_blank" 1776 rel="noopener noreferrer" 1777 > 1778 1779 <img 1780 width="100%" 1781 height="100%" 1782 class="lazyload" 1783 data-src="/upload/image.png" 1784 srcset="/upload/image.png?width=400 400w, 1785 /upload/image.png?width=800 800w, 1786 /upload/image.png?width=1200 1200w, 1787 /upload/image.png?width=1600 1600w" 1788 sizes="(max-width: 1600px) 100vw, 1600px" 1789 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1790 alt="å ¨ç eSIM éè´ä¸é¿æä¿å·å ¨æ»ç¥" 1791 onerror="Joe.errorImg(this, 'HomeErrImg')" 1792 /> 1793 1794 <time datetime="2025-12-28" 1795 >2025-12-28</time 1796 > 1797 <i class="joe-font joe-icon-picture"></i> 1798 </a> 1799 1800 <div class="information"> 1801 <a 1802 href="/archives/esim-global" 1803 class="title" 1804 title="å ¨ç eSIM éè´ä¸é¿æä¿å·å ¨æ»ç¥" 1805 target="_blank" 1806 rel="noopener noreferrer" 1807 > 1808 1809 å ¨ç eSIM éè´ä¸é¿æä¿å·å ¨æ»ç¥ 1810 </a> 1811 <a 1812 class="abstract" 1813 href="/archives/esim-global" 1814 title="卿°ååçåçä»å¤©ï¼æ¥æä¸å¼ å¢å¤çµè¯å¡ä¸ä» æ¯ä¸ºäºåºå¢æ æ¸¸ï¼æ´æ¯ä¸ºäºæ³¨åæµ·å¤ç¤¾äº¤è½¯ä»¶ãä¿æ¤éç§ãç»å®æ¯ä»ç½å ³ãæ¬ææ·±åº¦æ±æ»äºå ¨ç 20+ ä¸»æµ eSIMï¼æ¶µçäºæ´²ã欧洲ãç¾æ´²ãéæ´²åå¤§æ´æ´²ï¼å©ä½ ä¸ç«å¼é¿åã ð æ ¸å¿å¯¹ç §è¡¨ï¼æå°åºåç±»ï¼ 1. ä
1814ºæ´²ç¯ (Asia) ââ æéä¸é度" 1815 target="_blank" 1816 rel="noopener noreferrer" 1817 >卿°ååçåçä»å¤©ï¼æ¥æä¸å¼ å¢å¤çµè¯å¡ä¸ä» æ¯ä¸ºäºåºå¢æ æ¸¸ï¼æ´æ¯ä¸ºäºæ³¨åæµ·å¤ç¤¾äº¤è½¯ä»¶ãä¿æ¤éç§ãç»å®æ¯ä»ç½å ³ãæ¬ææ·±åº¦æ±æ»äºå ¨ç 20+ ä¸»æµ eSIMï¼æ¶µçäºæ´²ã欧洲ãç¾æ´²ãéæ´²åå¤§æ´æ´²ï¼å©ä½ ä¸ç«å¼é¿åã ð æ ¸å¿å¯¹ç §è¡¨ï¼æå°åºåç±»ï¼ 1. äºæ´²ç¯ (Asia) ââ æéä¸é度</a 1818 > 1819 <div class="meta"> 1820 <ul class="items"> 1821 <li>2025-12-28</li> 1822 <li><i class="joe-font joe-icon-eye"></i>8875</li> 1823 1824 <li><i class="joe-font joe-icon-message"></i>1</li> 1825 1826 1827 <li><i class="joe-font joe-icon-dianzan"></i>6</li> 1828 </ul> 1829 1830 <ul class="categories"> 1831 <li class="pcate"> 1832 <svg 1833 class="icon" 1834 viewBox="0 0 1024 1024" 1835 xmlns="http://www.w3.org/2000/svg" 1836 width="15" 1837 height="15" 1838 > 1839 <path 1840 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1841 fill="var(--minor)" 1842 ></path> 1843 <path 1844 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1845 fill="#ff6a18" 1846 ></path> 1847 </svg> 1848 <a 1849 class="link" 1850 target="_blank" 1851 rel="noopener noreferrer" 1852 href="/categories/digitalnomad" 1853 >æ°åçæ´»</a 1854 > 1855 </li> 1856 </ul> 1857 1858 </div> 1859 </div> 1860 </li> 1861 1862 1863 1864 <li 1865 class="joe_list__item default animated wow data-wow-delay="0.8s"" 1866 style="animation-delay: 0.8s;" 1867 > 1868 1869 <a 1870 href="/archives/dockerself" 1871 class="thumbnail" 1872 title="ç²¾é Docker èªæç®¡é¡¹ç®æ¸ åï¼æé ä½ çå ¨è½å®¶åºæå¡å¨" 1873 target="_blank" 1874 rel="noopener noreferrer" 1875 > 1876 1877 <img 1878 width="100%" 1879 height="100%" 1880 class="lazyload" 1881 data-src="/upload/Docker.png" 1882 srcset="/upload/Docker.png?width=400 400w, 1883 /upload/Docker.png?width=800 800w, 1884 /upload/Docker.png?width=1200 1200w, 1885 /upload/Docker.png?width=1600 1600w" 1886 sizes="(max-width: 1600px) 100vw, 1600px" 1887 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1888 alt="ç²¾é Docker èªæç®¡é¡¹ç®æ¸ åï¼æé ä½ çå ¨è½å®¶åºæå¡å¨" 1889 onerror="Joe.errorImg(this, 'HomeErrImg')" 1890 /> 1891 1892 <time datetime="2025-12-27" 1893 >2025-12-27</time 1894 > 1895 <i class="joe-font joe-icon-picture"></i> 1896 </a> 1897 1898 <div class="information"> 1899 <a 1900 href="/archives/dockerself" 1901 class="title" 1902 title="ç²¾é Docker èªæç®¡é¡¹ç®æ¸ åï¼æé ä½ çå ¨è½å®¶åºæå¡å¨" 1903 target="_blank" 1904 rel="noopener noreferrer" 1905 > 1906 1907 ç²¾é Docker èªæç®¡é¡¹ç®æ¸ åï¼æé ä½ çå ¨è½å®¶åºæå¡å¨ 1908 </a> 1909 <a 1910 class="abstract" 1911 href="/archives/dockerself" 1912 title="å¨èªæç®¡ï¼Self-hostedï¼çä¸çéï¼Docker 让ä¸ååå¾ç®åãæ è®ºæ¯æ³è¦æè±åä¸è½¯ä»¶ç订é è´¹ï¼è¿æ¯æ³å®ç°æ°æ®èªä¸»ï¼æè æ¯å纯享åæè ¾æå¡å¨çä¹è¶£ï¼è¿ä»½æ¸ åé½è½ä¸ºä½ æä¾çµæã ææ´çäºæ¶µçå®å ¨ãåå¨ãå½±é³ãç产åãè¿ç»´çå¤ä¸ªç»´åº¦ççé¨ Docker 项ç®ï¼å»ºè®®æ¶èå¤ç¨ï¼ ð å®å ¨ä¸éç§ï¼ä½ " 1913 target="_blank" 1914 rel="noopener noreferrer" 1915 >å¨èªæç®¡ï¼Self-hostedï¼çä¸çéï¼Docker 让ä¸ååå¾ç®åãæ è®ºæ¯æ³è¦æè±åä¸è½¯ä»¶ç订é è´¹ï¼è¿æ¯æ³å®ç°æ°æ®èªä¸»ï¼æè æ¯å纯享åæè ¾æå¡å¨çä¹è¶£ï¼è¿ä»½æ¸ åé½è½ä¸ºä½ æä¾çµæã ææ´çäºæ¶µçå®å ¨ãåå¨ãå½±é³ãç产åãè¿ç»´çå¤ä¸ªç»´åº¦ççé¨ Docker 项ç®ï¼å»ºè®®æ¶èå¤ç¨ï¼ ð å®å ¨ä¸éç§ï¼ä½ </a 1916 > 1917 <div class="meta"> 1918 <ul class="items"> 1919 <li>2025-12-27</li> 1920 <li>
1920<i class="joe-font joe-icon-eye"></i>258</li> 1921 1922 <li><i class="joe-font joe-icon-message"></i>0</li> 1923 1924 1925 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 1926 </ul> 1927 1928 <ul class="categories"> 1929 <li class="pcate"> 1930 <svg 1931 class="icon" 1932 viewBox="0 0 1024 1024" 1933 xmlns="http://www.w3.org/2000/svg" 1934 width="15" 1935 height="15" 1936 > 1937 <path 1938 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 1939 fill="var(--minor)" 1940 ></path> 1941 <path 1942 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 1943 fill="#ff6a18" 1944 ></path> 1945 </svg> 1946 <a 1947 class="link" 1948 target="_blank" 1949 rel="noopener noreferrer" 1950 href="/categories/cloudtech" 1951 >äºç«¯æè ¾</a 1952 > 1953 </li> 1954 </ul> 1955 1956 </div> 1957 </div> 1958 </li> 1959 1960 1961 1962 <li 1963 class="joe_list__item default animated wow data-wow-delay="0.9s"" 1964 style="animation-delay: 0.9s;" 1965 > 1966 1967 <a 1968 href="/archives/short-links" 1969 class="thumbnail" 1970 title="åºäº Cloudflare Workers çå ¨åè½ç龿¥çæå¨æç¨" 1971 target="_blank" 1972 rel="noopener noreferrer" 1973 > 1974 1975 <img 1976 width="100%" 1977 height="100%" 1978 class="lazyload" 1979 data-src="/upload/ssurl.png" 1980 srcset="/upload/ssurl.png?width=400 400w, 1981 /upload/ssurl.png?width=800 800w, 1982 /upload/ssurl.png?width=1200 1200w, 1983 /upload/ssurl.png?width=1600 1600w" 1984 sizes="(max-width: 1600px) 100vw, 1600px" 1985 src="/themes/theme-Joe3/assets/img/lazyload.gif" 1986 alt="åºäº Cloudflare Workers çå ¨åè½ç龿¥çæå¨æç¨" 1987 onerror="Joe.errorImg(this, 'HomeErrImg')" 1988 /> 1989 1990 <time datetime="2025-12-17" 1991 >2025-12-17</time 1992 > 1993 <i class="joe-font joe-icon-picture"></i> 1994 </a> 1995 1996 <div class="information"> 1997 <a 1998 href="/archives/short-links" 1999 class="title" 2000 title="åºäº Cloudflare Workers çå ¨åè½ç龿¥çæå¨æç¨" 2001 target="_blank" 2002 rel="noopener noreferrer" 2003 > 2004 2005 åºäº Cloudflare Workers çå ¨åè½ç龿¥çæå¨æç¨ 2006 </a> 2007 <a 2008 class="abstract" 2009 href="/archives/short-links" 2010 title="æ¬æç¨å°æå¯¼ä½ é¨ç½²ä¸ä¸ªç¨³å®ãå®å ¨ä¸èªå¸¦ç®¡çåå°çç龿¥çæç³»ç»ã æ ¸å¿åè½ å ç½® UIï¼æ éæç®¡ç½é¡µï¼ä»£ç èªå¸¦ååºå¼çæé¡µé¢ã 管çåå°ï¼æ¯ææ¥çææé¾æ¥ãå¨æä¿®æ¹éªè¯ç é ç½®ãä¸é®å é¤ã å®å ¨é²æ¤ï¼éæ Cloudflare Turnstile éªè¯ç ï¼ææé²æ¢æºå¨äººå·éã èªå®ä¹åç¼ï¼æ¯ææå¨è¾å ¥" 2011 target="_blank" 2012 rel="noopener noreferrer" 2013 >æ¬æç¨å°æå¯¼ä½ é¨ç½²ä¸ä¸ªç¨³å®ãå®å ¨ä¸èªå¸¦ç®¡çåå°çç龿¥çæç³»ç»ã æ ¸å¿åè½ å ç½® UIï¼æ éæç®¡ç½é¡µï¼ä»£ç èªå¸¦ååºå¼çæé¡µé¢ã 管çåå°ï¼æ¯ææ¥çææé¾æ¥ãå¨æä¿®æ¹éªè¯ç é ç½®ãä¸é®å é¤ã å®å ¨é²æ¤ï¼éæ Cloudflare Turnstile éªè¯ç ï¼ææé²æ¢æºå¨äººå·éã èªå®ä¹åç¼ï¼æ¯ææå¨è¾å ¥</a 2014 > 2015 <div class="meta"> 2016 <ul class="items"> 2017 <li>2025-12-17</li> 2018 <li>
2018<i class="joe-font joe-icon-eye"></i>213</li> 2019 2020 <li><i class="joe-font joe-icon-message"></i>0</li> 2021 2022 2023 <li><i class="joe-font joe-icon-dianzan"></i>0</li> 2024 </ul> 2025 2026 <ul class="categories"> 2027 <li class="pcate"> 2028 <svg 2029 class="icon" 2030 viewBox="0 0 1024 1024" 2031 xmlns="http://www.w3.org/2000/svg" 2032 width="15" 2033 height="15" 2034 > 2035 <path 2036 d="M512.2 564.743a76.818 76.818 0 0 1-30.973-6.508L108.224 393.877c-26.105-11.508-42.56-35.755-42.927-63.272-.384-27.44 15.356-52.053 41.042-64.232l373.004-176.74c20.591-9.737 45.16-9.755 65.75.017L917.68 266.39c25.668 12.188 41.39 36.792 41.024 64.231-.384 27.5-16.821 51.73-42.908 63.237l-372.57 164.377a77.18 77.18 0 0 1-31.025 6.508zM139.843 329.592l370.213 163.241c1.291.56 3.018.567 4.345-.009l369.758-163.128-369.706-175.464v-.01c-1.326-.628-3.158-.636-4.502 0l-370.108 175.37zm748.015 1.858h.175-.175zM512.376 941.674c-10.348 0-20.8-2.32-30.537-6.997L121.05 778.624c-18.113-7.834-26.454-28.87-18.62-46.983 7.835-18.112 28.862-26.488 46.993-18.61l362.08 156.629 345.26-156.366c17.939-8.166 39.14-.253 47.324 17.746 8.166 17.964.227 39.157-17.729 47.324l-344.51 156.61c-9.196 4.449-19.281 6.7-29.471 6.7z" 2037 fill="var(--minor)" 2038 ></path> 2039 <path 2040 d="M871.563 515.449L511.81 671.775 152.358 515.787v73.578a34.248 34.248 0 0 0 20.76 31.48l301.518 129.19c11.806 5.703 24.499 8.546 37.175 8.546s25.367-2.843 37.174-8.546L850.82 620.534a34.248 34.248 0 0 0 20.744-31.474V515.45z" 2041 fill="#ff6a18" 2042 ></path> 2043 </svg> 2044 <a 2045 class="link" 2046 target="_blank" 2047 rel="noopener noreferrer" 2048 href="/categories/cloudtech" 2049 >äºç«¯æè ¾</a 2050 > 2051 </li> 2052 </ul> 2053 2054 </div> 2055 </div> 2056 </li> 2057 2058 2059 </ul> 2060 </div> 2061 </div> 2062 </div> 2063 <!-- pagination--> 2064 2065 2066 2067 2068 <!-- 页颿»æ°å°äºçäº7--> 2069 <ul class="joe_pagination"> 2070 <li class="prev disabled"> 2071 <a href="/"> 2072 <i class="joe-font joe-icon-prev"></i> 2073 </a> 2074 </li> 2075 <li class="active" 2076 > 2077 <a href="/page/1">1</a> 2078 </li> 2079 <li 2080 > 2081 <a href="/page/2">2</a> 2082 </li> 2083 <li 2084 class="next" 2085 > 2086 <a href="/page/2"> 2087 <i class="joe-font joe-icon-next"></i> 2088 </a> 2089 </li> 2090 </ul> 2091 <!-- 页颿»æ°å¤§äº7--> 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 </div> 2108 <!-- aside--> 2109 2110 2111 <aside 2112 class="joe_aside" 2113 > 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 <!-- çé¨æç« --> 2124 2125 2126 <section class="joe_aside__item newest"> 2127 <div class="joe_aside__item-title"> 2128 <i class="joe-font joe-icon-huo"></i> 2129 <span class="text">çé¨æç« </span> 2130 </div> 2131 <div class="joe_aside__item-contain"> 2132 <ul class="list"> 2133 2134 <li class="item"> 2135 <a class="link" href="/archives/esim-global" 2136 >å ¨ç eSIM éè´ä¸é¿æä¿å·å ¨æ»ç¥</a 2137 > 2138 <i class="joe-font joe-icon-link"></i> 2139 </li> 2140 <li class="item"> 2141 <a class="link" href="/archives/cf-api-ns" 2142 >Cloudflare API ä¿®æ¹åå NS æå¡å¨æå</a 2143 > 2144 <i class="joe-font joe-icon-link"></i> 2145 </li> 2146 <li class="item"> 2147 <a class="link" href="/archives/esimgg" 2148 >å嫿¼«æ¸¸ç¦æ¼ï¼æ¥æ±èªç±è¿æ¥ï¼eSIM.gg</a 2149 >
2150 <i class="joe-font joe-icon-link"></i> 2151 </li> 2152 <li class="item"> 2153 <a class="link" href="/archives/free-domain" 2154 >å è´¹åå/ä½ä»·ååæ±æ»</a 2155 > 2156 <i class="joe-font joe-icon-link"></i> 2157 </li> 2158 <li class="item"> 2159 <a class="link" href="/archives/vpscommand" 2160 >VPS/Linux æå¡å¨å¸¸ç¨èæ¬åå½ä»¤</a 2161 > 2162 <i class="joe-font joe-icon-link"></i> 2163 </li> 2164 2165 </ul> 2166 </div> 2167 </section> 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 <!-- æ ç¾äº--> 2191 2192 <section class="joe_aside__item tags-cloud" id="tags-cloud"> 2193 <div class="joe_aside__item-title"> 2194 <i class="joe-font joe-icon-tag"></i> 2195 <span class="text">æ ç¾äº</span> 2196 <a class="tags_more" href="/tags">æ´å¤<i class="joe-font joe-icon-more-right"></i></a> 2197 </div> 2198 <div class="joe_aside__item-contain"> 2199 <div 2200 class="tags-cloud-list static" 2201 style="display:none" 2202 > 2203 2204 2205 <a 2206 data-label="çç½å" 2207 data-url="/tags/duan-wang-zhi" 2208 href="/tags/duan-wang-zhi" 2209 title="çç½å" 2210 >çç½å</a 2211 ><a 2212 data-label="Fail2Ban" 2213 data-url="/tags/fail2ban" 2214 href="/tags/fail2ban" 2215 title="Fail2Ban" 2216 >Fail2Ban</a 2217 ><a 2218 data-label="å½é äºè" 2219 data-url="/tags/guo-ji-hu-lian" 2220 href="/tags/guo-ji-hu-lian" 2221 title="å½é äºè" 2222 >å½é äºè</a 2223 ><a 2224 data-label="è·¨å¢ç½ç»ä¼å" 2225 data-url="/tags/kua-jing-wang-luo-you-hua" 2226 href="/tags/kua-jing-wang-luo-you-hua" 2227 title="è·¨å¢ç½ç»ä¼å" 2228 >è·¨å¢ç½ç»ä¼å</a 2229 ><a 2230 data-label="Hermes" 2231 data-url="/tags/hermes" 2232 href="/tags/hermes" 2233 title="Hermes" 2234 >Hermes</a 2235 ><a 2236 data-label="åå" 2237 data-url="/tags/yu-ming" 2238 href="/tags/yu-ming" 2239 title="åå" 2240 >åå</a 2241 ><a 2242 data-label="馿¸¯" 2243 data-url="/tags/xiang-gang" 2244 href="/tags/xiang-gang" 2245 title="馿¸¯" 2246 >馿¸¯</a 2247 ><a 2248 data-label="Docker" 2249 data-url="/tags/docker" 2250 href="/tags/docker" 2251 title="Docker" 2252 >Docker</a 2253 ><a 2254 data-label="CN2 GIA" 2255 data-url="/tags/cn2-gia" 2256 href="/tags/cn2-gia" 2257 title="CN2 GIA" 2258 >CN2 GIA</a 2259 ><a 2260 data-label="VPS" 2261 data-url="/tags/vps" 2262 href="/tags/vps" 2263 title="VPS" 2264 >VPS</a 2265 ><a 2266 data-label="eSIM" 2267 data-url="/tags/esim" 2268 href="/tags/esim" 2269 title="eSIM" 2270 >eSIM</a 2271 ><a 2272 data-label="AI" 2273 data-url="/tags/ai" 2274 href="/tags/ai" 2275 title="AI" 2276 >AI</a 2277 ><a 2278 data-label="Nginx" 2279 data-url="/tags/nginx" 2280 href="/tags/nginx" 2281 title="Nginx" 2282 >Nginx</a 2283 ><a 2284 data-label="Cloudflare" 2285 data-url="/tags/cloudflare" 2286 href="/tags/cloudflare" 2287 title="Cloudflare" 2288 >Cloudflare</a 2289 ><a 2290 data-label="Haloå客" 2291 data-url="/tags/halobo-ke" 2292 href="/tags/halobo-ke" 2293 title="Haloå客" 2294 >Haloå客</a 2295 > 2296 2297 2298 2299 </div> 2300 2301 <div id="tags-3d"> 2302 <div class="empty">å è½½ä¸â¦</div> 2303 </div> 2304 2305 </div> 2306 </section> 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 <!-- åç±»äº--> 2343 2344 <section class="joe_aside__item tags-cloud" id="categories-cloud"> 2345 <div class="joe_aside__item-title">
2346 <i class="joe-font joe-icon-tag"></i> 2347 <span class="text">åç±»äº</span> 2348 <a class="tags_more" href="/categories" 2349 >æ´å¤<i class="joe-font joe-icon-more-right"></i 2350 ></a> 2351 </div> 2352 <div class="joe_aside__item-contain"> 2353 <div 2354 class="categories-cloud-list static" 2355 > 2356 2357 2358 2359 <a 2360 data-label="岿æ¾é" 2361 data-url="/categories/life" 2362 href="/categories/life" 2363 title="岿æ¾é" 2364 >岿æ¾é</a 2365 ><a 2366 data-label="æ°åçæ´»" 2367 data-url="/categories/digitalnomad" 2368 href="/categories/digitalnomad" 2369 title="æ°åçæ´»" 2370 >æ°åçæ´»</a 2371 ><a 2372 data-label="äºç«¯æè ¾" 2373 data-url="/categories/cloudtech" 2374 href="/categories/cloudtech" 2375 title="äºç«¯æè ¾" 2376 >äºç«¯æè ¾</a 2377 > 2378 2379 2380 </div> 2381 2382 </div> 2383 </section> 2384 2385 2386 2387 2388 2389 2390 </aside> 2391 2392 2393 </div> 2394 2395 <!--æ¬æµ®æé®--> 2396 2397 2398 <div class="joe_action"> 2399 2400 2401 2402 2403 <div class="joe_action_item mode"> 2404 <svg 2405 class="mode-light" 2406 height="25"
2407 viewBox="0 0 1024 1024" 2408 width="25" 2409 xmlns="http://www.w3.org/2000/svg" 2410 > 2411 <path 2412 d="M234.24 512a277.76 277.76 0 1 0 555.52 0 277.76 277.76 0 1 0-555.52 0zM512 187.733a42.667 42.667 0 0 1-42.667-42.666v-102.4a42.667 42.667 0 0 1 85.334 0v102.826A42.667 42.667 0 0 1 512 187.733zm-258.987 107.52a42.667 42.667 0 0 1-29.866-12.373l-72.96-73.387a42.667 42.667 0 0 1 59.306-59.306l73.387 72.96a42.667 42.667 0 0 1 0 59.733 42.667 42.667 0 0 1-29.867 12.373zm-107.52 259.414H42.667a42.667 42.667 0 0 1 0-85.334h102.826a42.667 42.667 0 0 1 0 85.334zm34.134 331.946a42.667 42.667 0 0 1-29.44-72.106l72.96-73.387a42.667 42.667 0 0 1 59.733 59.733l-73.387 73.387a42.667 42.667 0 0 1-29.866 12.373zM512 1024a42.667 42.667 0 0 1-42.667-42.667V878.507a42.667 42.667 0 0 1 85.334 0v102.826A42.667 42.667 0 0 1 512 1024zm332.373-137.387a42.667 42.667 0 0 1-29.866-12.373l-73.387-73.387a42.667 42.667 0 0 1 0-59.733 42.667 42.667 0 0 1 59.733 0l72.96 73.387a42.667 42.667 0 0 1-29.44 72.106zm136.96-331.946H878.507a42.667 42.667 0 1 1 0-85.334h102.826a42.667 42.667 0 0 1 0 85.334zM770.987 295.253a42.667 42.667 0 0 1-29.867-12.373 42.667 42.667 0 0 1 0-59.733l73.387-72.96a42.667 42.667 0 1 1 59.306 59.306l-72.96 73.387a42.667 42.667 0 0 1-29.866 12.373z" 2413 /> 2414 </svg> 2415 <svg 2416 class="mode-dark" 2417 height="25"
2418 viewBox="0 0 1024 1024" 2419 width="25" 2420 xmlns="http://www.w3.org/2000/svg" 2421 > 2422 <path 2423 d="M587.264 104.96c33.28 57.856 52.224 124.928 52.224 196.608 0 218.112-176.128 394.752-393.728 394.752-29.696 0-58.368-3.584-86.528-9.728C223.744 832.512 369.152 934.4 538.624 934.4c229.376 0 414.72-186.368 414.72-416.256 1.024-212.992-159.744-389.12-366.08-413.184z" 2424 /> 2425 <path 2426 d="M340.48 567.808l-23.552-70.144-70.144-23.552 70.144-23.552 23.552-70.144 23.552 70.144 70.144 23.552-70.144 23.552-23.552 70.144zM168.96 361.472l-30.208-91.136-91.648-30.208 91.136-30.208 30.72-91.648 30.208 91.136 91.136 30.208-91.136 30.208-30.208 91.648z" 2427 /> 2428 </svg> 2429 </div> 2430 2431 2432 <div class="joe_action_item back2top"> 2433 <svg height="25" viewBox="0 0 1024 1024" width="25" xmlns="http://www.w3.org/2000/svg"> 2434 <path 2435 d="M725.902 498.916c18.205-251.45-93.298-410.738-205.369-475.592l-6.257-3.982-6.258 3.414c-111.502 64.853-224.711 224.142-204.8 475.59-55.751 53.476-80.214 116.623-80.214 204.8v15.36l179.2-35.27c11.378 40.39 58.596 69.973 113.21 69.973 54.613 0 101.262-29.582 112.64-68.836l180.337 36.41v-15.36c-.569-89.885-25.031-153.6-82.489-206.507zM571.733 392.533c-33.564 31.29-87.04 28.445-118.329-5.12s-28.444-87.04 5.12-117.76c33.565-31.289 87.04-28.444 118.33 5.12s28.444 86.471-5.12 117.76zm-56.32 368.64c-35.84 0-64.284 29.014-64.284 64.285 0 35.84 54.044 182.613 64.284 182.613s64.285-146.773 64.285-182.613c0-35.271-29.014-64.285-64.285-64.285z" 2436 /> 2437 </svg> 2438 </div> 2439 2440 </div> 2441 2442 2443 2444 2445 <footer 2446 class="joe_footer " 2447 > 2448 <div 2449 class="joe_container" 2450 > 2451 <div class="item"> 2452 <p> 2453 © 2021 - 2026<a 2454 href="https://disue.com" 2455 target="_blank" 2456 rel="noopener noreferrer" 2457 > 2458 Disue · è¿ªç´ 2459 </a> 2460 2461 </p> 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 <p class="site_driven"> 2475 æ¬ç«ç¹ç± 2476 <a 2477 href="https://go.ms.ci/bwh" 2478 target="_blank" 2479 rel="noopener noreferrer nofollow" 2480 > 2481 <img 2482 class="custom" 2483 src="/upload/logo1.png" 2484 alt="äºæå¡å" 2485 onerror="Joe.errorImg(this, 'LoadFailedImg')" sizes="(max-width: 640px) 94vw, (max-width: 768px) 92vw, (max-width: 1024px) 88vw, min(800px, 85vw)" srcset="/upload/logo1.png?width=1600 1600w, /upload/logo1.png?width=400 400w, /upload/logo1.png?width=800 800w, /upload/logo1.png?width=1200 1200w" 2486 /> </a 2487 >æä¾äºæå¡ 2488 </p> 2489 2490 2491 2492 2493 </div> 2494 <div class="side-col"> 2495 2496 <div class="item"> 2497 2498 <a class="rss" href="/rss.xml" target="_blank" rel="noopener noreferrer" 2499 ><i class="joe-font joe-icon-rss-fill"></i> RSS</a 2500 > 2501 2502 2503 <a href="/sitemap.xml" target="_blank" rel="noopener noreferrer"> 2504 ç«ç¹å°å¾ 2505 </a> 2506 2507 </div> 2508 2509 2510 </div> 2511 </div> 2512 </footer> 2513 2514 2515 </div> 2516 2517 <!-- ===== å¼å ¥èæ¬ start ===== --> 2518 <!-- <th:block th:if="${htmlType == 'index' && theme.config.home.enable_index_list_effect == true} or ${htmlType == 'journals' && theme.config.journals.enable_journal_effect == true} or ${htmlType == 'photos' && theme.config.photos.enable_photos_effect == true}">--> 2519
2519<script src="/themes/theme-Joe3/assets/lib/wowjs/wow.min.js"></script>
2519 2520 <!-- </th:block>--> 2521
2521<script src="/themes/theme-Joe3/assets/lib/lazysizes/lazysizes.min.js"></script>
2521 2522
2522<script src="/themes/theme-Joe3/assets/lib/qmsg/qmsg.js"></script>
2522 2523 2524
2524<script src="/themes/theme-Joe3/assets/js/min/utils.min.js"></script>
2524 2525 2526 2527 2528 2529
2529<script src="/themes/theme-Joe3/assets/lib/fancybox/jquery.fancybox.min.js"></script>
2529 2530 2531
2531<script src="/themes/theme-Joe3/assets/js/min/custom.min.js?v=1.4.0"></script>
2531 2532 2533 2534
2534<script src="/themes/theme-Joe3/assets/lib/favico/favico.min.js"></script>
2534 2535 2536 2537 <!--ç¸å--> 2538 2539 2540 <!--===== å¼å ¥é¡µé¢çº§js start =====--> 2541
2541<script src="/themes/theme-Joe3/assets/js/min/common.min.js?v=1.4.0"></script>
2541 2542 2543 2544
2544<script src="/themes/theme-Joe3/assets/js/min/index.min.js?v=1.4.0"></script>
2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 <!-- ===== å¼å ¥é¡µé¢çº§js end ===== --> 2555 2556 <!-- ===== å¼å ¥èæ¬ start ===== --> 2557 2558 2559 2560 <!-- ===== å¼å ¥èæ¬ end =====--> 2561 2562 2563 2564 2565 2566 <!--æç´¢ç¹å»--> 2567
2567<script> 2568 const searchButton = document.getElementById('halo-search'); 2569 searchButton.addEventListener('click', function () { 2570 SearchWidget.open(); 2571 }); 2572 </script>
2572 2573 <!-- 大å¾é ç½®--> 2574 2575 2576 2577 2578 </body> 2579 2580</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.