sinzmise-cetastories 2.0.0-1731139285615 → 2.0.0-1731141961663

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/404/index.html +1 -1
  2. package/about/index.html +1 -1
  3. package/album/index.html +1 -1
  4. package/archives/2021/12/index.html +1 -1
  5. package/archives/2021/index.html +1 -1
  6. package/archives/2022/12/index.html +1 -1
  7. package/archives/2022/index.html +1 -1
  8. package/archives/2023/01/index.html +1 -1
  9. package/archives/2023/02/index.html +1 -1
  10. package/archives/2023/03/index.html +1 -1
  11. package/archives/2023/04/index.html +1 -1
  12. package/archives/2023/07/index.html +1 -1
  13. package/archives/2023/08/index.html +1 -1
  14. package/archives/2023/09/index.html +1 -1
  15. package/archives/2023/10/index.html +1 -1
  16. package/archives/2023/11/index.html +1 -1
  17. package/archives/2023/12/index.html +1 -1
  18. package/archives/2023/index.html +1 -1
  19. package/archives/2023/page/2/index.html +1 -1
  20. package/archives/2023/page/3/index.html +1 -1
  21. package/archives/2024/01/index.html +1 -1
  22. package/archives/2024/02/index.html +1 -1
  23. package/archives/2024/03/index.html +1 -1
  24. package/archives/2024/04/index.html +1 -1
  25. package/archives/2024/05/index.html +1 -1
  26. package/archives/2024/06/index.html +1 -1
  27. package/archives/2024/07/index.html +1 -1
  28. package/archives/2024/08/index.html +1 -1
  29. package/archives/2024/09/index.html +1 -1
  30. package/archives/2024/10/index.html +1 -1
  31. package/archives/2024/index.html +1 -1
  32. package/archives/2024/page/2/index.html +1 -1
  33. package/archives/index.html +1 -1
  34. package/archives/page/2/index.html +1 -1
  35. package/archives/page/3/index.html +1 -1
  36. package/archives/page/4/index.html +1 -1
  37. package/archives/page/5/index.html +1 -1
  38. package/atom.xml +31 -31
  39. package/bbs/bbs.html +1 -1
  40. package/bbs/index.html +1 -1
  41. package/categories/index.html +1 -1
  42. package/categories//344/270/252/344/272/272/345/260/217/350/256/260/index.html +1 -1
  43. package/categories//344/270/252/344/272/272/345/260/217/350/256/260/page/2/index.html +1 -1
  44. package/categories//346/255/214/346/233/262/346/224/266/351/233/206/index.html +1 -1
  45. package/categories//346/270/270/346/210/217/347/233/270/345/205/263/index.html +1 -1
  46. package/categories//347/253/231/347/202/271/346/212/230/350/205/276/index.html +1 -1
  47. package/categories//347/253/231/347/202/271/346/212/230/350/205/276/page/2/index.html +1 -1
  48. package/categories//351/241/271/347/233/256/346/212/230/350/205/276/index.html +1 -1
  49. package/charts/index.html +1 -1
  50. package/comments/index.html +1 -1
  51. package/css/style.css +1 -1
  52. package/essay/index.html +1 -1
  53. package/fcircle/index.html +1 -1
  54. package/games +11 -13
  55. package/index.html +1 -1
  56. package/link/index.html +1 -1
  57. package/maps/css/style.css.map +1 -1
  58. package/maps/sw.js.map +1 -1
  59. package/music/index.html +1 -1
  60. package/package.json +1 -1
  61. package/page/2/index.html +1 -1
  62. package/page/3/index.html +1 -1
  63. package/page/4/index.html +1 -1
  64. package/page/5/index.html +1 -1
  65. package/posts/10021/index.html +2 -2
  66. package/posts/10045/index.html +1 -1
  67. package/posts/10733/index.html +1 -1
  68. package/posts/10996/index.html +2 -2
  69. package/posts/12779/index.html +1 -1
  70. package/posts/13624/index.html +1 -1
  71. package/posts/15688/index.html +1 -1
  72. package/posts/15748/index.html +2 -2
  73. package/posts/15799/index.html +1 -1
  74. package/posts/15842/index.html +2 -2
  75. package/posts/16107/index.html +1 -1
  76. package/posts/18063/index.html +1 -1
  77. package/posts/20412/index.html +1 -1
  78. package/posts/21375/index.html +1 -1
  79. package/posts/22945/index.html +2 -2
  80. package/posts/23021/index.html +1 -1
  81. package/posts/27531/index.html +2 -2
  82. package/posts/28536/index.html +1 -1
  83. package/posts/28733/index.html +1 -1
  84. package/posts/29196/index.html +1 -1
  85. package/posts/38917/index.html +1 -1
  86. package/posts/38964/index.html +1 -1
  87. package/posts/42487/index.html +1 -1
  88. package/posts/42580/index.html +1 -1
  89. package/posts/45875/index.html +1 -1
  90. package/posts/46640/index.html +1 -1
  91. package/posts/48762/index.html +1 -1
  92. package/posts/50710/index.html +1 -1
  93. package/posts/52677/index.html +1 -1
  94. package/posts/53662/index.html +1 -1
  95. package/posts/54386/index.html +1 -1
  96. package/posts/54481/index.html +1 -1
  97. package/posts/54787/index.html +2 -2
  98. package/posts/56467/index.html +1 -1
  99. package/posts/57692/index.html +1 -1
  100. package/posts/58203/index.html +1 -1
  101. package/posts/61417/index.html +1 -1
  102. package/posts/61712/index.html +1 -1
  103. package/posts/646/index.html +1 -1
  104. package/posts/64856/index.html +1 -1
  105. package/posts/64935/index.html +1 -1
  106. package/search.xml +77 -77
  107. package/seas/index.html +1 -1
  108. package/sw.js +1 -1
  109. package/tags/Flash/347/233/270/345/205/263/index.html +1 -1
  110. package/tags/Steam/346/270/270/346/210/217/index.html +1 -1
  111. package/tags/Windows/350/275/257/344/273/266/index.html +1 -1
  112. package/tags/index.html +1 -1
  113. package/tags//344/270/252/344/272/272/345/260/217/350/256/260/index.html +1 -1
  114. package/tags//344/270/252/344/272/272/345/260/217/350/256/260/page/2/index.html +1 -1
  115. package/tags//345/205/266/345/256/203/346/270/270/346/210/217/index.html +1 -1
  116. package/tags//345/212/240/350/275/275/345/212/250/347/224/273/index.html +1 -1
  117. package/tags//346/202/254/346/265/256/345/256/240/347/211/251-/347/234/213/346/235/277/345/250/230/index.html +1 -1
  118. package/tags//346/255/214/346/233/262/346/224/266/351/233/206/index.html +1 -1
  119. package/tags//346/270/270/346/210/217/347/233/270/345/205/263/index.html +1 -1
  120. package/tags//347/253/231/347/202/271/345/272/225/351/203/250/351/255/224/346/224/271/index.html +1 -1
  121. package/tags//347/253/231/347/202/271/346/212/230/350/205/276/index.html +1 -1
  122. package/tags//347/253/231/347/202/271/346/212/230/350/205/276/page/2/index.html +1 -1
  123. package/tags//350/207/252/345/273/272/351/203/250/347/275/262/index.html +1 -1
  124. package/tags//351/241/265/351/235/242/351/255/224/346/224/271/index.html +1 -1
  125. package/tags//351/241/271/347/233/256/346/212/230/350/205/276/index.html +1 -1
  126. package/update/index.html +1 -1
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="zh-CN"><head hexo-theme="https://github.com/volantis-x/hexo-theme-volantis/#6.0.0-alpha.0"><meta name="generator" content="Hexo 7.3.0"><meta charset="utf-8"><link rel="canonical" href="https://blog.sinzmise.top/posts/28733/"><meta name="renderer" content="webkit"><meta name="force-rendering" content="webkit"><meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"><meta name="HandheldFriendly" content="True"><meta name="mobile-web-app-capable" content="yes"><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=5"><meta content="black-translucent" name="apple-mobile-web-app-status-bar-style"><meta content="telephone=no" name="format-detection"><meta name="msapplication-TileColor" content="#ccf6f4"><meta name="theme-color" content="#ccf6f4"><link rel="apple-touch-icon" sizes="180x180" href="/images/siteicon/ios/180.png"><link rel="icon" type="image/png" sizes="32x32" href="/images/siteicon/ios/32.png"><link rel="icon" type="image/png" sizes="16x16" href="/images/siteicon/ios/16.png"><link rel="manifest" href="/manifest.json"><link rel="shortcut icon" href="/images/siteicon/favicon.ico"><meta name="apple-mobile-web-app-title" content="Volantis"><meta name="application-name" content="Volantis"><meta name="msapplication-TileColor" content="#f4f4f4"><meta name="msapplication-TileImage" content="/images/siteicon/ios/32.png"><meta name="theme-color" content="#f4f4f4" media="(prefers-color-scheme: light)"><meta name="theme-color" content="#121212" media="(prefers-color-scheme: dark)"><meta name="baidu-site-verification" content="codeva-NA6uDlCuZg"><meta name="msvalidate.01" content="18428535B4425286753107589FC35E79"><meta name="google-site-verification" content="H2O2-443XGKJh5l1ik9o6ZgFmcBEf9AKSoMRRlNIltQ"><script>function registerServiceWorker(e){"localhost"!=window.location.hostname&&"serviceWorker"in navigator&&navigator.serviceWorker.register(`${e}?time=${(new Date).getTime()}`).then((function(e){e.onupdatefound=function(){var r=e.installing;r.onstatechange=function(){switch(r.state){case"installed":navigator.serviceWorker.controller?console.log("Updated Service Worker."):console.log("Service Worker Sucess!");break;case"redundant":console.log("The installing service worker became redundant.")}}}})).catch((function(e){console.error("Error during service worker registration:",e),"undefined"==typeof swinstallretry&&(swinstallretry=1,registerServiceWorker("/sw.js"))}))}registerServiceWorker("/sw.js")</script><link rel="preload" href="/css/style.css" as="style"><link rel="preload" href="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/VarelaRound/VarelaRound-Regular.ttf" as="font" type="font/ttf" crossorigin="anonymous"><link rel="preload" href="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/UbuntuMono/UbuntuMono-Regular.ttf" as="font" type="font/ttf" crossorigin="anonymous"><link rel="alternate" href="/atom.xml" title="汐塔魔法屋" type="application/atom+xml"><title>Vercel部署Umami - 汐塔魔法屋</title><meta name="keywords" content="站点折腾,自建部署,null"><meta desc name="description" content="之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车) - 王九弦SZ·Ninty - 汐塔魔法屋"><meta property="og:type" content="article"><meta property="og:title" content="Vercel部署Umami"><meta property="og:url" content="https://blog.sinzmise.top/posts/28733/"><meta property="og:site_name" content="汐塔魔法屋"><meta property="og:description" content="之前我是想参考这个教程来部署:https:&#x2F;&#x2F;digu.plus&#x2F;post&#x2F;8034746f42b3495fbb19926e3fb8ec4f&#x2F;然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><meta property="og:locale" content="zh_CN"><meta property="og:image" content="https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"><meta property="article:published_time" content="2023-07-14T08:48:13.000Z"><meta property="article:modified_time" content="2024-11-09T08:00:35.901Z"><meta property="article:author" content="王九弦SZ·Ninty"><meta property="article:tag" content="站点折腾"><meta property="article:tag" content="自建部署"><meta name="twitter:card" content="summary"><meta name="twitter:image" content="https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"><style>#safearea{display:none}.fa-duotone.red,.fa-light.red,.fa-regular.red,.fa-solid.red,.fa-thin.red,.fa.red,.fad.red,.fal.red,.far.red,.fas.red,.iziToast>.iziToast-body .iziToast-icon.red{color:#f44336}.fa-duotone.pink,.fa-light.pink,.fa-regular.pink,.fa-solid.pink,.fa-thin.pink,.fa.pink,.fad.pink,.fal.pink,.far.pink,.fas.pink,.iziToast>.iziToast-body .iziToast-icon.pink{color:#e91e63}.fa-duotone.purple,.fa-light.purple,.fa-regular.purple,.fa-solid.purple,.fa-thin.purple,.fa.purple,.fad.purple,.fal.purple,.far.purple,.fas.purple,.iziToast>.iziToast-body .iziToast-icon.purple{color:#9c27b0}.fa-duotone.indigo,.fa-light.indigo,.fa-regular.indigo,.fa-solid.indigo,.fa-thin.indigo,.fa.indigo,.fad.indigo,.fal.indigo,.far.indigo,.fas.indigo,.iziToast>.iziToast-body .iziToast-icon.indigo{color:#3f51b5}.fa-duotone.light-blue,.fa-light.light-blue,.fa-regular.light-blue,.fa-solid.light-blue,.fa-thin.light-blue,.fa.light-blue,.fad.light-blue,.fal.light-blue,.far.light-blue,.fas.light-blue,.iziToast>.iziToast-body .iziToast-icon.light-blue{color:#4ba7ee}.fa-duotone.deep-blue,.fa-light.deep-blue,.fa-regular.deep-blue,.fa-solid.deep-blue,.fa-thin.deep-blue,.fa.deep-blue,.fad.deep-blue,.fal.deep-blue,.far.deep-blue,.fas.deep-blue,.iziToast>.iziToast-body .iziToast-icon.deep-blue{color:#3367d6}.fa-duotone.teal,.fa-light.teal,.fa-regular.teal,.fa-solid.teal,.fa-thin.teal,.fa.teal,.fad.teal,.fal.teal,.far.teal,.fas.teal,.iziToast>.iziToast-body .iziToast-icon.teal{color:#009688}.fa-duotone.light-green,.fa-light.light-green,.fa-regular.light-green,.fa-solid.light-green,.fa-thin.light-green,.fa.light-green,.fad.light-green,.fal.light-green,.far.light-green,.fas.light-green,.iziToast>.iziToast-body .iziToast-icon.light-green{color:#8bc34a}.fa-duotone.orange,.fa-light.orange,.fa-regular.orange,.fa-solid.orange,.fa-thin.orange,.fa.orange,.fad.orange,.fal.orange,.far.orange,.fas.orange,.iziToast>.iziToast-body .iziToast-icon.orange{color:#ff9800}.fa-duotone.deep-orange,.fa-light.deep-orange,.fa-regular.deep-orange,.fa-solid.deep-orange,.fa-thin.deep-orange,.fa.deep-orange,.fad.deep-orange,.fal.deep-orange,.far.deep-orange,.fas.deep-orange,.iziToast>.iziToast-body .iziToast-icon.deep-orange{color:#ff5722}.fa-duotone.brown,.fa-light.brown,.fa-regular.brown,.fa-solid.brown,.fa-thin.brown,.fa.brown,.fad.brown,.fal.brown,.far.brown,.fas.brown,.iziToast>.iziToast-body .iziToast-icon.brown{color:#795548}.fa-duotone.blue-grey,.fa-light.blue-grey,.fa-regular.blue-grey,.fa-solid.blue-grey,.fa-thin.blue-grey,.fa.blue-grey,.fad.blue-grey,.fal.blue-grey,.far.blue-grey,.fas.blue-grey,.iziToast>.iziToast-body .iziToast-icon.blue-grey{color:#607d8b}.fa-duotone.yellow,.fa-light.yellow,.fa-regular.yellow,.fa-solid.yellow,.fa-thin.yellow,.fa.yellow,.fad.yellow,.fal.yellow,.far.yellow,.fas.yellow,.iziToast>.iziToast-body .iziToast-icon.yellow{color:#fcec60}.fa-duotone.TURQUOISE,.fa-light.TURQUOISE,.fa-regular.TURQUOISE,.fa-solid.TURQUOISE,.fa-thin.TURQUOISE,.fa.TURQUOISE,.fad.TURQUOISE,.fal.TURQUOISE,.far.TURQUOISE,.fas.TURQUOISE,.iziToast>.iziToast-body .iziToast-icon.TURQUOISE{color:#1abc9c}.fa-duotone.EMERALD,.fa-light.EMERALD,.fa-regular.EMERALD,.fa-solid.EMERALD,.fa-thin.EMERALD,.fa.EMERALD,.fad.EMERALD,.fal.EMERALD,.far.EMERALD,.fas.EMERALD,.iziToast>.iziToast-body .iziToast-icon.EMERALD{color:#2ecc71}.fa-duotone.PETERRIVE,.fa-light.PETERRIVE,.fa-regular.PETERRIVE,.fa-solid.PETERRIVE,.fa-thin.PETERRIVE,.fa.PETERRIVE,.fad.PETERRIVE,.fal.PETERRIVE,.far.PETERRIVE,.fas.PETERRIVE,.iziToast>.iziToast-body .iziToast-icon.PETERRIVE{color:#3498db}.fa-duotone.AMETHYST,.fa-light.AMETHYST,.fa-regular.AMETHYST,.fa-solid.AMETHYST,.fa-thin.AMETHYST,.fa.AMETHYST,.fad.AMETHYST,.fal.AMETHYST,.far.AMETHYST,.fas.AMETHYST,.iziToast>.iziToast-body .iziToast-icon.AMETHYST{color:#9b59b6}.fa-duotone.WETASPHALT,.fa-light.WETASPHALT,.fa-regular.WETASPHALT,.fa-solid.WETASPHALT,.fa-thin.WETASPHALT,.fa.WETASPHALT,.fad.WETASPHALT,.fal.WETASPHALT,.far.WETASPHALT,.fas.WETASPHALT,.iziToast>.iziToast-body .iziToast-icon.WETASPHALT{color:#34495e}.fa-duotone.GREENSEA,.fa-light.GREENSEA,.fa-regular.GREENSEA,.fa-solid.GREENSEA,.fa-thin.GREENSEA,.fa.GREENSEA,.fad.GREENSEA,.fal.GREENSEA,.far.GREENSEA,.fas.GREENSEA,.iziToast>.iziToast-body .iziToast-icon.GREENSEA{color:#16a085}.fa-duotone.NEPHRITIS,.fa-light.NEPHRITIS,.fa-regular.NEPHRITIS,.fa-solid.NEPHRITIS,.fa-thin.NEPHRITIS,.fa.NEPHRITIS,.fad.NEPHRITIS,.fal.NEPHRITIS,.far.NEPHRITIS,.fas.NEPHRITIS,.iziToast>.iziToast-body .iziToast-icon.NEPHRITIS{color:#27ae60}.fa-duotone.BELIZEHOLE,.fa-light.BELIZEHOLE,.fa-regular.BELIZEHOLE,.fa-solid.BELIZEHOLE,.fa-thin.BELIZEHOLE,.fa.BELIZEHOLE,.fad.BELIZEHOLE,.fal.BELIZEHOLE,.far.BELIZEHOLE,.fas.BELIZEHOLE,.iziToast>.iziToast-body .iziToast-icon.BELIZEHOLE{color:#2980b9}.fa-duotone.WISTERIA,.fa-light.WISTERIA,.fa-regular.WISTERIA,.fa-solid.WISTERIA,.fa-thin.WISTERIA,.fa.WISTERIA,.fad.WISTERIA,.fal.WISTERIA,.far.WISTERIA,.fas.WISTERIA,.iziToast>.iziToast-body .iziToast-icon.WISTERIA{color:#8e44ad}.fa-duotone.MIDNIGHTBLUE,.fa-light.MIDNIGHTBLUE,.fa-regular.MIDNIGHTBLUE,.fa-solid.MIDNIGHTBLUE,.fa-thin.MIDNIGHTBLUE,.fa.MIDNIGHTBLUE,.fad.MIDNIGHTBLUE,.fal.MIDNIGHTBLUE,.far.MIDNIGHTBLUE,.fas.MIDNIGHTBLUE,.iziToast>.iziToast-body .iziToast-icon.MIDNIGHTBLUE{color:#2c3e50}.fa-duotone.SUNFLOWER,.fa-light.SUNFLOWER,.fa-regular.SUNFLOWER,.fa-solid.SUNFLOWER,.fa-thin.SUNFLOWER,.fa.SUNFLOWER,.fad.SUNFLOWER,.fal.SUNFLOWER,.far.SUNFLOWER,.fas.SUNFLOWER,.iziToast>.iziToast-body .iziToast-icon.SUNFLOWER{color:#f1c40f}.fa-duotone.CARROT,.fa-light.CARROT,.fa-regular.CARROT,.fa-solid.CARROT,.fa-thin.CARROT,.fa.CARROT,.fad.CARROT,.fal.CARROT,.far.CARROT,.fas.CARROT,.iziToast>.iziToast-body .iziToast-icon.CARROT{color:#e67e22}.fa-duotone.ALIZARIN,.fa-light.ALIZARIN,.fa-regular.ALIZARIN,.fa-solid.ALIZARIN,.fa-thin.ALIZARIN,.fa.ALIZARIN,.fad.ALIZARIN,.fal.ALIZARIN,.far.ALIZARIN,.fas.ALIZARIN,.iziToast>.iziToast-body .iziToast-icon.ALIZARIN{color:#e74c3c}.fa-duotone.CLOUDS,.fa-light.CLOUDS,.fa-regular.CLOUDS,.fa-solid.CLOUDS,.fa-thin.CLOUDS,.fa.CLOUDS,.fad.CLOUDS,.fal.CLOUDS,.far.CLOUDS,.fas.CLOUDS,.iziToast>.iziToast-body .iziToast-icon.CLOUDS{color:#ecf0f1}.fa-duotone.CONCRETE,.fa-light.CONCRETE,.fa-regular.CONCRETE,.fa-solid.CONCRETE,.fa-thin.CONCRETE,.fa.CONCRETE,.fad.CONCRETE,.fal.CONCRETE,.far.CONCRETE,.fas.CONCRETE,.iziToast>.iziToast-body .iziToast-icon.CONCRETE{color:#95a5a6}.fa-duotone.ORANGE,.fa-light.ORANGE,.fa-regular.ORANGE,.fa-solid.ORANGE,.fa-thin.ORANGE,.fa.ORANGE,.fad.ORANGE,.fal.ORANGE,.far.ORANGE,.fas.ORANGE,.iziToast>.iziToast-body .iziToast-icon.ORANGE{color:#f39c12}.fa-duotone.PUMPKIN,.fa-light.PUMPKIN,.fa-regular.PUMPKIN,.fa-solid.PUMPKIN,.fa-thin.PUMPKIN,.fa.PUMPKIN,.fad.PUMPKIN,.fal.PUMPKIN,.far.PUMPKIN,.fas.PUMPKIN,.iziToast>.iziToast-body .iziToast-icon.PUMPKIN{color:#d35400}.fa-duotone.POMEGRANATE,.fa-light.POMEGRANATE,.fa-regular.POMEGRANATE,.fa-solid.POMEGRANATE,.fa-thin.POMEGRANATE,.fa.POMEGRANATE,.fad.POMEGRANATE,.fal.POMEGRANATE,.far.POMEGRANATE,.fas.POMEGRANATE,.iziToast>.iziToast-body .iziToast-icon.POMEGRANATE{color:#c0392b}.fa-duotone.SILVER,.fa-light.SILVER,.fa-regular.SILVER,.fa-solid.SILVER,.fa-thin.SILVER,.fa.SILVER,.fad.SILVER,.fal.SILVER,.far.SILVER,.fas.SILVER,.iziToast>.iziToast-body .iziToast-icon.SILVER{color:#bdc3c7}.fa-duotone.ASBESTOS,.fa-light.ASBESTOS,.fa-regular.ASBESTOS,.fa-solid.ASBESTOS,.fa-thin.ASBESTOS,.fa.ASBESTOS,.fad.ASBESTOS,.fal.ASBESTOS,.far.ASBESTOS,.fas.ASBESTOS,.iziToast>.iziToast-body .iziToast-icon.ASBESTOS{color:#7f8c8d}.article-title,.md .footer .header,.meta-v3,.new-meta-box,.prev-next,.widget header,details summary{font-family:"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Helvetica,monospace}:root{--color-site-body:#f4f4f4;--color-site-bg:#f4f4f4;--color-site-inner:#fff;--color-site-footer:#666;--color-card:#fff;--color-text:#444;--color-block:#f4f4f4;--color-inlinecode:#444;--color-codeblock:#f4f4f4;--color-h1:#3a3a3a;--color-h2:#3a3a3a;--color-h3:#333;--color-h4:#444;--color-h5:#555;--color-h6:#666;--color-p:#444;--color-list:#666;--color-list-hl:#30ad91;--color-meta:#888;--color-read-bkg:#e0d8c8;--color-read-post:#f8f1e2;--color-copyright-bkg:#f5f5f5;--color-white-png:#fff;--color-img-error:#f5f5f5}*{box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;outline:0;margin:0;padding:0}::-webkit-scrollbar{height:4px;width:4px}::-webkit-scrollbar-track-piece{background:0 0}::-webkit-scrollbar-thumb{background:#3dd9b6;cursor:pointer;border-radius:2px;-webkit-border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#ff5722}html{color:var(--color-text);width:100%;height:100%;font-family:UbuntuMono,"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Menlo,Monaco,monospace,sans-serif;font-size:16px}html>::-webkit-scrollbar{height:4px;width:4px}html>::-webkit-scrollbar-track-piece{background:0 0}html>::-webkit-scrollbar-thumb{background:#3dd9b6;cursor:pointer;border-radius:2px;-webkit-border-radius:2px}html>::-webkit-scrollbar-thumb:hover{background:#ff5722}body{background-color:var(--color-site-body);text-rendering:optimizelegibility;-webkit-tap-highlight-color:transparent;line-height:1.6;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body.modal-active{overflow:hidden}@media screen and (max-width:680px){body.modal-active{position:fixed;top:0;right:0;bottom:0;left:0}}a{color:#2092ec;cursor:pointer;text-decoration:none;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}a:active,a:hover{outline:0}ol,ul{padding-left:0}ol li,ul li{list-style:none}header{display:block}img{border:0;background:0 0;max-width:100%}svg:not(:root){overflow:hidden}hr{-moz-box-sizing:content-box;box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;height:0;border:0;border-radius:1px;-webkit-border-radius:1px;border-bottom:1px solid rgba(68,68,68,.1)}article hr{background-image:none;height:2em;border:none;margin:1em 0 1em;text-align:center}article hr:after{content:"···";letter-spacing:2em;padding-left:2em;font-weight:700}button,input{color:inherit;font:inherit;margin:0}button{overflow:visible;text-transform:none;-webkit-appearance:button;cursor:pointer}@supports (backdrop-filter:blur(20px)){.blur{background:rgba(255,255,255,.9)!important;backdrop-filter:saturate(200%) blur(20px)}}@supports (backdrop-filter:blur(20px)){.blur#comments{backdrop-filter:unset}}.shadow{box-shadow:0 1px 2px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.1)}.shadow.floatable{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.shadow.floatable:hover{box-shadow:0 2px 4px 0 rgba(0,0,0,.1),0 4px 8px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.1),0 4px 8px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.1)}#l_cover{min-height:64px}.cover-wrapper{top:0;left:0;max-width:100%;height:100vh;display:flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-khtml-flex-wrap:nowrap;-moz-flex-wrap:nowrap;-o-flex-wrap:nowrap;-ms-flex-wrap:nowrap;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:vertical;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;align-items:center;align-self:center;align-content:center;color:var(--color-site-inner);padding:0 16px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;position:relative;overflow:hidden;margin-bottom:-100px}.cover-wrapper .cover-bg{position:absolute;width:100%;height:100%;background-position:center;background-size:cover;-webkit-background-size:cover;-moz-background-size:cover}.cover-wrapper .cover-bg.lazyload:not(.loaded){opacity:0;-webkit-opacity:0;-moz-opacity:0}.cover-wrapper .cover-bg.lazyload.loaded{animation-delay:0s;animation-duration:.5s;animation-fill-mode:forwards;animation-timing-function:ease-out;animation-name:fadeIn}@-moz-keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-webkit-keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-o-keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}.cover-wrapper .cover-body{z-index:1;position:relative;width:100%;height:100%}.cover-wrapper#full{height:calc(100vh + 100px);padding-bottom:100px}.cover-wrapper#half{max-height:640px;min-height:460px;height:calc(36vh - 64px + 200px)}.cover-wrapper #scroll-down{width:100%;height:64px;position:absolute;bottom:100px;text-align:center;cursor:pointer}.cover-wrapper #scroll-down .scroll-down-effects{color:#fff;font-size:24px;line-height:64px;position:absolute;width:24px;left:calc(50% - 12px);text-shadow:0 1px 2px rgba(0,0,0,.1);animation:scroll-down-effect 1.5s infinite;-webkit-animation:scroll-down-effect 1.5s infinite;-khtml-animation:scroll-down-effect 1.5s infinite;-moz-animation:scroll-down-effect 1.5s infinite;-o-animation:scroll-down-effect 1.5s infinite;-ms-animation:scroll-down-effect 1.5s infinite}@-moz-keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-webkit-keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-o-keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}@keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}.cover-wrapper .cover-body{margin-top:64px;margin-bottom:120px}.cover-wrapper .cover-body,.cover-wrapper .cover-body .bottom,.cover-wrapper .cover-body .top{display:flex;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:vertical;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;align-items:center;justify-content:center;-webkit-justify-content:center;-khtml-justify-content:center;-moz-justify-content:center;-o-justify-content:center;-ms-justify-content:center;max-width:100%}.cover-wrapper .cover-body .bottom{margin-top:32px}.cover-wrapper .cover-body .title{font-family:"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Helvetica,monospace;font-size:3.125rem;text-shadow:0 1px 2px rgba(0,0,0,.1);text-align:center}.cover-wrapper .cover-body .subtitle{font-size:16px}.cover-wrapper .cover-body .logo{max-height:120px;max-width:calc(100% - 4 * 16px)}@media screen and (min-height:1024px){.cover-wrapper .cover-body .title{font-size:3rem}.cover-wrapper .cover-body .subtitle{font-size:.875rem}.cover-wrapper .cover-body .logo{max-height:150px}}.cover-wrapper .cover-body .m_search{position:relative;max-width:calc(100% - 16px);width:320px;vertical-align:middle}.cover-wrapper .cover-body .m_search .form{position:relative;display:block;width:100%}.cover-wrapper .cover-body .m_search .icon,.cover-wrapper .cover-body .m_search .input{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.cover-wrapper .cover-body .m_search .icon{position:absolute;display:block;line-height:2.5rem;width:32px;top:0;left:5px;color:rgba(68,68,68,.75)}.cover-wrapper .cover-body .m_search .input{display:block;height:2.5rem;width:100%;box-shadow:none;-webkit-box-shadow:none;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;font-size:.875rem;-webkit-appearance:none;padding-left:36px;border-radius:1.4rem;-webkit-border-radius:1.4rem;background:rgba(255,255,255,.6);backdrop-filter:blur(10px);border:none;color:var(--color-text)}@media screen and (max-width:500px){.cover-wrapper .cover-body .m_search .input{padding-left:36px}}.cover-wrapper .cover-body .m_search .input:hover{background:rgba(255,255,255,.8)}.cover-wrapper .cover-body .m_search .input:focus{background:#fff}.cover-wrapper .list-h{display:flex;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:horizontal;-moz-box-orient:horizontal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;flex-wrap:wrap;-webkit-flex-wrap:wrap;-khtml-flex-wrap:wrap;-moz-flex-wrap:wrap;-o-flex-wrap:wrap;-ms-flex-wrap:wrap;align-items:stretch;border-radius:4px;-webkit-border-radius:4px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.cover-wrapper .list-h a{-webkit-box-flex:1;-moz-box-flex:1;-webkit-flex:1 0;-ms-flex:1 0;flex:1 0;display:flex;font-weight:600}.cover-wrapper .list-h a img{display:block;border-radius:2px;-webkit-border-radius:2px;margin:4px;min-width:40px;max-width:44px}@media screen and (max-width:768px){.cover-wrapper .list-h a img{min-width:36px;max-width:40px}}@media screen and (max-width:500px){.cover-wrapper .list-h a img{margin:2px 4px;min-width:32px;max-width:36px}}@media screen and (max-width:375px){.cover-wrapper .list-h a img{min-width:28px;max-width:32px}}.cover-wrapper{max-width:100%}.cover-wrapper.search .bottom .menu{margin-top:8px}.cover-wrapper.search .bottom .menu .list-h a{white-space:nowrap;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:horizontal;-moz-box-orient:horizontal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;align-items:baseline;padding:2px;margin:4px;color:var(--color-site-inner);opacity:.75;-webkit-opacity:0.75;-moz-opacity:0.75;text-shadow:0 1px 2px rgba(0,0,0,.05);border-bottom:2px solid transparent}.cover-wrapper.search .bottom .menu .list-h a i{margin-right:4px}.cover-wrapper.search .bottom .menu .list-h a p{font-size:.9375rem}.cover-wrapper.search .bottom .menu .list-h a.active,.cover-wrapper.search .bottom .menu .list-h a:active,.cover-wrapper.search .bottom .menu .list-h a:hover{opacity:1;-webkit-opacity:1;-moz-opacity:1;border-bottom:2px solid var(--color-site-inner)}@font-face{font-family:UbuntuMono;src:url("https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/UbuntuMono/UbuntuMono-Regular.ttf");font-weight:'normal';font-style:'normal';font-display:swap}@font-face{font-family:'Varela Round';src:url("https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/VarelaRound/VarelaRound-Regular.ttf");font-weight:'normal';font-style:'normal';font-display:swap}.l_header{position:fixed;z-index:1000;top:0;width:100%;height:64px;background:var(--color-card);box-shadow:0 1px 2px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.1)}.l_header.auto{transition:opacity .4s ease;-webkit-transition:opacity .4s ease;-khtml-transition:opacity 0.4s ease;-moz-transition:opacity .4s ease;-o-transition:opacity .4s ease;-ms-transition:opacity .4s ease;visibility:hidden}.l_header.auto.showed{opacity:1!important;-webkit-opacity:1!important;-moz-opacity:1!important;visibility:visible}.l_header .container{margin-left:16px;margin-right:16px}.l_header #wrapper{height:100%;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.l_header #wrapper .nav-main,.l_header #wrapper .nav-sub{display:flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-khtml-flex-wrap:nowrap;-moz-flex-wrap:nowrap;-o-flex-wrap:nowrap;-ms-flex-wrap:nowrap;justify-content:space-between;-webkit-justify-content:space-between;-khtml-justify-content:space-between;-moz-justify-content:space-between;-o-justify-content:space-between;-ms-justify-content:space-between;align-items:center}.l_header #wrapper .nav-main{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.l_header #wrapper.sub .nav-main{transform:translateY(-64px);-webkit-transform:translateY(-64px);-khtml-transform:translateY(-64px);-moz-transform:translateY(-64px);-o-transform:translateY(-64px);-ms-transform:translateY(-64px)}.l_header #wrapper .nav-sub{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;opacity:0;-webkit-opacity:0;-moz-opacity:0;height:64px;width:calc(100% - 2 * 16px);position:absolute}.l_header #wrapper .nav-sub ::-webkit-scrollbar{display:none}@media screen and (min-width:2048px){.l_header #wrapper .nav-sub{max-width:55vw;margin:auto}}.l_header #wrapper.sub .nav-sub{opacity:1;-webkit-opacity:1;-moz-opacity:1}.l_header #wrapper .title{position:relative;color:var(--color-text);padding-left:24px;max-height:64px}.l_header #wrapper .nav-main .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;line-height:64px;padding:0 8px;font-size:1.25rem;font-family:"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Helvetica,monospace}.l_header #wrapper .nav-main .title img{height:64px;padding:8px}.l_header .nav-sub{max-width:1080px;margin:auto}.l_header .nav-sub .title{font-weight:700;font-family:UbuntuMono,"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Menlo,Monaco,monospace,sans-serif;line-height:1.2;max-height:64px;white-space:normal;flex-shrink:1}.l_header .switcher{display:none;line-height:64px;align-items:center}.l_header .switcher .s-toc{display:none}@media screen and (max-width:768px){.l_header .switcher .s-toc{display:flex}}.l_header .switcher>li{height:48px;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;margin:2px}@media screen and (max-width:500px){.l_header .switcher>li{margin:0 1px;height:48px}}.l_header .switcher>li>a{display:flex;justify-content:center;-webkit-justify-content:center;-khtml-justify-content:center;-moz-justify-content:center;-o-justify-content:center;-ms-justify-content:center;align-items:center;width:48px;height:48px;padding:.85em 1.1em;border-radius:100px;-webkit-border-radius:100px;border:none;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;color:#3dd9b6}.l_header .switcher>li>a:hover{border:none}.l_header .switcher>li>a.active,.l_header .switcher>li>a:active{border:none;background:var(--color-site-bg)}@media screen and (max-width:500px){.l_header .switcher>li>a{width:36px;height:48px}}.l_header .nav-sub .switcher{display:flex}.l_header .m_search{display:flex;height:64px;width:240px;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}@media screen and (max-width:1024px){.l_header .m_search{width:44px;min-width:44px}.l_header .m_search input::placeholder{opacity:0;-webkit-opacity:0;-moz-opacity:0}.l_header .m_search:hover{width:240px}.l_header .m_search:hover input::placeholder{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@media screen and (min-width:500px){.l_header .m_search:hover .input{width:100%}.l_header .m_search:hover .input::placeholder{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@media screen and (max-width:500px){.l_header .m_search{min-width:0}.l_header .m_search input::placeholder{opacity:1;-webkit-opacity:1;-moz-opacity:1}}.l_header .m_search .form{position:relative;display:flex;width:100%;align-items:center}.l_header .m_search .icon{position:absolute;width:36px;left:5px;color:var(--color-meta)}@media screen and (max-width:500px){.l_header .m_search .icon{display:none}}.l_header .m_search .input{display:block;padding-top:8px;padding-bottom:8px;line-height:1.3;width:100%;color:var(--color-text);background:#fafafa;box-shadow:none;-webkit-box-shadow:none;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;padding-left:40px;font-size:.875rem;border-radius:8px;-webkit-border-radius:8px;border:none;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}@media screen and (min-width:500px){.l_header .m_search .input:focus{box-shadow:0 4px 8px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 4px 8px 0 rgba(0,0,0,.1)}}@media screen and (max-width:500px){.l_header .m_search .input{background:var(--color-block);padding-left:8px;border:none}.l_header .m_search .input:focus,.l_header .m_search .input:hover{border:none}}@media (max-width:500px){.l_header .m_search{left:0;width:0;overflow:hidden;position:absolute;background:#fff;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.l_header .m_search .input{border-radius:32px;-webkit-border-radius:32px;margin-left:16px;padding-left:16px}.l_header.z_search-open .m_search{width:100%}.l_header.z_search-open .m_search .input{width:calc(100% - 120px)}}ul.list-v li:hover>ul.list-v,ul.m-pc li:hover>ul.list-v{display:block}ul.nav-list-h{display:flex;align-items:stretch}ul.nav-list-h>li{position:relative;justify-content:center;-webkit-justify-content:center;-khtml-justify-content:center;-moz-justify-content:center;-o-justify-content:center;-ms-justify-content:center;height:100%;line-height:2.4;border-radius:4px;-webkit-border-radius:4px}ul.nav-list-h>li>a{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ul.nav-list-h>li>a span{font-weight:600}ul.list-v{z-index:1;display:none;position:absolute;background:var(--color-card);box-shadow:0 2px 4px 0 rgba(0,0,0,.08),0 4px 8px 0 rgba(0,0,0,.08),0 8px 16px 0 rgba(0,0,0,.08);-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.08),0 4px 8px 0 rgba(0,0,0,.08),0 8px 16px 0 rgba(0,0,0,.08);margin-top:-6px;border-radius:4px;-webkit-border-radius:4px;padding:8px 0}ul.list-v.show{display:block}ul.list-v hr{margin-top:8px;margin-bottom:8px}ul.list-v>li{white-space:nowrap;word-break:keep-all}ul.list-v>li.header{font-size:.78125rem;font-weight:700;line-height:2em;color:var(--color-meta);margin:8px 16px 4px}ul.list-v>li.header i{margin-right:8px}ul.list-v>li ul{margin-left:0;display:none;margin-top:-40px}ul.list-v .aplayer-container{min-height:64px;padding:6px 16px}ul.list-v>li>a{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;display:block;color:var(--color-list);font-size:.875rem;line-height:36px;padding:0 20px 0 16px;text-overflow:ellipsis;margin:0 4px;border-radius:4px;-webkit-border-radius:4px}@media screen and (max-width:1024px){ul.list-v>li>a{line-height:40px}}ul.list-v>li>a>i{margin-right:8px}ul.list-v>li>a.active,ul.list-v>li>a:active{color:var(--color-list-hl)}ul.list-v>li>a:hover{color:var(--color-list-hl);background:var(--color-site-bg)}.l_header .menu>ul>li>a{display:block;padding:0 8px;display:flex}.l_header .menu>ul>li>a .icon{width:16px;margin-right:6px}.l_header .menu>ul>li>a .icon i{display:inline-block}.l_header .menu>ul>li>ul .icon{width:16px;margin-right:2px}.l_header .menu>ul>li>ul .icon i{display:inline-block}.l_header ul.nav-list-h>li{color:var(--color-list);line-height:64px}.l_header ul.nav-list-h>li>a{max-height:64px;overflow:hidden;color:inherit}.l_header ul.nav-list-h>li>a.active span,.l_header ul.nav-list-h>li>a:active span{color:#3dd9b6}.l_header ul.nav-list-h>li:hover>a{color:var(--color-list-hl)}.l_header ul.nav-list-h>li i.music{animation:rotate-effect 1.5s linear infinite;-webkit-animation:rotate-effect 1.5s linear infinite;-khtml-animation:rotate-effect 1.5s linear infinite;-moz-animation:rotate-effect 1.5s linear infinite;-o-animation:rotate-effect 1.5s linear infinite;-ms-animation:rotate-effect 1.5s linear infinite}@-moz-keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}@-webkit-keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}@-o-keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}@keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}.menu-phone li ul.list-v{right:calc(100% - .5 * 16px)}.menu-phone li ul.list-v ul{right:calc(100% - .5 * 16px)}#wrapper{max-width:1080px;margin:auto}@media screen and (min-width:2048px){#wrapper{max-width:55vw}}#wrapper .menu{-webkit-box-flex:1;-moz-box-flex:1;-webkit-flex:1 1;-ms-flex:1 1;flex:1 1;margin:0 16px 0 0}#wrapper .menu .list-v ul{left:calc(100% - .5 * 16px)}.menu-phone{display:none;margin-top:16px;right:8px;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.menu-phone ul{right:calc(100% - .5 * 16px)}@media screen and (max-width:500px){.menu-phone{display:block}}.l_header{max-width:65vw;left:calc((100% - 65vw) * .5);border-bottom-left-radius:8px;border-bottom-right-radius:8px}@media screen and (max-width:2048px){.l_header{max-width:1112px;left:calc((100% - 1112px) * .5)}}@media screen and (max-width:1112px){.l_header{left:0;border-radius:0;-webkit-border-radius:0;max-width:100%}}@media screen and (max-width:500px){.l_header .container{margin-left:0;margin-right:0}.l_header #wrapper .nav-main .title{padding-left:16px;padding-right:16px}.l_header #wrapper .nav-sub{width:100%}.l_header #wrapper .nav-sub .title{overflow-y:scroll;margin-top:2px;padding:8px 16px}.l_header #wrapper .switcher{display:flex;margin-right:8px;height:64px}.l_header .menu{display:none}}@media screen and (max-width:500px){.list-v li{max-width:270px}}@media screen and (min-width:768px){#l_cover,#l_header{display:none}}#u-search{display:none;position:fixed;top:0;left:0;width:100%;height:100%;padding:60px 20px;z-index:1001}@media screen and (max-width:680px){#u-search{padding:0}}</style><link rel="stylesheet" href="/css/style.css" media="print" onload='this.media="all",this.onload=null'><noscript><link rel="stylesheet" href="/css/style.css"></noscript><script>document.addEventListener("error",(function(t){const a=t.target,e=t.target.parentElement,r=e.classList.toString(),s=e.parentElement.classList.toString();"img"===a.tagName.toLowerCase()&&(a.classList.add("fix-cursor-default","error"),"fancybox"===r&&"fancybox"===s?(e.parentElement.classList.add("hideFancybox"),e.parentElement.classList.remove("fancybox"),e.classList.remove("fancybox")):"img-bg"===r&&"img-wrap"===s?e.parentElement.classList.add("hideFancybox"):"author"===r?e.parentElement.classList.add("fix-author-imgError"):-1!=r.indexOf("tk-avatar")&&e.parentElement.classList.add("fix-avatar-imgError"))}),!0)</script><script>window.MSInputMethodContext&&document.documentMode&&document.write('<style>html{overflow-x: hidden !important;overflow-y: hidden !important;}.kill-ie{text-align:center;height: 100%;margin-top: 15%;margin-bottom: 5500%;}.kill-t{font-size: 2rem;}.kill-c{font-size: 1.2rem;}#l_header,#l_body{display: none;}</style><div class="kill-ie"><span class="kill-t"><b>抱歉,您的浏览器无法访问本站</b></span><br/><span class="kill-c">微软已经于2016年终止了对 Internet Explorer (IE) 10 及更早版本的支持,<br/>继续使用存在极大的安全隐患,请使用当代主流的浏览器进行访问。</span><br/><a target="_blank" rel="noopener" href="https://blogs.windows.com/windowsexperience/2021/05/19/the-future-of-internet-explorer-on-windows-10-is-in-microsoft-edge/"><strong>了解详情 ></strong></a></div>')</script><noscript><style>html{overflow-x:hidden!important;overflow-y:hidden!important}.kill-noscript{text-align:center;height:100%;margin-top:15%;margin-bottom:5500%}.kill-t{font-size:2rem}.kill-c{font-size:1.2rem}#l_body,#l_header{display:none}</style><div class="kill-noscript"> <span class="kill-t"><b>抱歉,您的浏览器无法访问本站</b></span><br> <span class="kill-c">本页面需要浏览器支持(启用)JavaScript</span><br> <a target="_blank" rel="noopener" href="https://www.baidu.com/s?wd=启用JavaScript"><strong>了解详情 ></strong></a></div></noscript><script>function volantisEventListener(e,t,n){this.type=e,this.f=t,this.ele=n}function volantisDom(e){return e||(e=document.createElement("div")),this.ele=e,this.ele.find=e=>{let t=this.ele.querySelector(e);if(t)return new volantisDom(t)},this.ele.hasClass=e=>this.ele.className.match(new RegExp("(\\s|^)"+e+"(\\s|$)")),this.ele.addClass=e=>(this.ele.classList.add(e),this.ele),this.ele.removeClass=e=>(this.ele.classList.remove(e),this.ele),this.ele.toggleClass=e=>(this.ele.hasClass(e)?this.ele.removeClass(e):this.ele.addClass(e),this.ele),this.ele.on=(e,t,n=1)=>(this.ele.addEventListener(e,t,!1),n&&volantis.EventListener.list.push(new volantisEventListener(e,t,this.ele)),this.ele),this.ele.click=(e,t)=>(this.ele.on("click",e,t),this.ele),this.ele.scroll=(e,t)=>(this.ele.on("scroll",e,t),this.ele),this.ele.html=e=>(this.ele.innerHTML=e,this.ele),this.ele.hide=e=>(this.ele.style.display="none",this.ele),this.ele.show=e=>(this.ele.style.display="block",this.ele),this.ele}function RunItem(){function e(e,t){this.name=t||e.name,this.run=()=>{try{e()}catch(e){console.log(e)}}}this.list=[],this.start=()=>{for(var e=0;e<this.list.length;e++)this.list[e].run()},this.push=(t,n,s=!0)=>{let o=t;s&&(o=()=>{volantis.requestAnimationFrame(t)});var l=new e(o,n);this.list.push(l)},this.remove=e=>{for(let t=0;t<this.list.length;t++){this.list[t].name==e&&this.list.splice(t,1)}}}function errorImgAvatar(e){e.src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/avatar/round/3442075.svg",e.onerror=null}function errorImgCover(e){e.src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/cover/76b86c0226ffd.svg",e.onerror=null}window.volantis={},volantis.debug="env",volantis.dom={},volantis.EventListener={},volantis.EventListener.list=[],volantis.EventListener.remove=()=>{volantis.EventListener.list.forEach((function(e){e.ele.removeEventListener(e.type,e.f,!1)})),volantis.EventListener.list=[]},volantis.dom.$=e=>e?new volantisDom(e):null,volantis.pjax={},volantis.pjax.method={complete:new RunItem,error:new RunItem,send:new RunItem},volantis.pjax=Object.assign(volantis.pjax,{push:volantis.pjax.method.complete.push,error:volantis.pjax.method.error.push,send:volantis.pjax.method.send.push}),volantis.rightmenu={},volantis.rightmenu.method={handle:new RunItem},volantis.rightmenu=Object.assign(volantis.rightmenu,{handle:volantis.rightmenu.method.handle.push}),volantis.dark={},volantis.dark.method={toggle:new RunItem},volantis.dark=Object.assign(volantis.dark,{push:volantis.dark.method.toggle.push}),volantis.js=(e,t)=>new Promise((n=>{setTimeout((function(){var s=document.getElementsByTagName("head")[0]||document.documentElement,o=document.createElement("script");if(o.setAttribute("type","text/javascript"),t)if(JSON.stringify(t))for(let e in t)"onload"==e?o[e]=()=>{t[e](),n()}:(o[e]=t[e],o.onload=n);else o.onload=()=>{t(),n()};else o.onload=n;o.setAttribute("src",e),s.appendChild(o)}))})),volantis.css=e=>new Promise((t=>{setTimeout((function(){var n=document.createElement("link");n.rel="stylesheet",n.href=e,n.onload=t,document.getElementsByTagName("head")[0].appendChild(n)}))})),volantis.import={jQuery:()=>"undefined"==typeof jQuery?volantis.js("https://jsd.cdn.storisinz.site/npm/jquery@3.6.0/dist/jquery.min.js"):new Promise((e=>{e()}))},volantis.requestAnimationFrame=e=>{window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame),window.requestAnimationFrame(e)},volantis.layoutHelper=(e,t,n)=>{function s(e,t,n){volantis.tempDiv=document.createElement("div"),volantis.tempDiv.innerHTML=t;let s=document.querySelector("#layoutHelper-"+e);s&&(n&&(s.innerHTML=""),s.append(volantis.tempDiv))}n=Object.assign({clean:!1,pjax:!0},n),s(e,t,n.clean),n.pjax&&volantis.pjax.push((()=>{s(e,t,n.clean)}),"layoutHelper-"+e)},volantis.scroll={engine:new RunItem,unengine:new RunItem},volantis.scroll=Object.assign(volantis.scroll,{push:volantis.scroll.engine.push}),volantis.scroll.getScrollTop=()=>{let e;return window.pageYOffset?e=window.pageYOffset:document.compatMode&&"BackCompat"!=document.compatMode?e=document.documentElement.scrollTop:document.body&&(e=document.body.scrollTop),e},volantis.scroll.scrollHeight=function(){return Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},volantis.scroll.offsetHeight=function(){return Math.max(document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},volantis.scroll.progress=function(){return volantis.scroll.getScrollTop()/(volantis.scroll.scrollHeight()-volantis.scroll.offsetHeight())},volantis.scroll.handleScrollEvents=()=>{volantis.scroll.lastScrollTop=volantis.scroll.getScrollTop(),volantis.requestAnimationFrame((function e(){const t=volantis.scroll.getScrollTop();volantis.scroll.lastScrollTop!==t?(volantis.scroll.del=t-volantis.scroll.lastScrollTop,volantis.scroll.lastScrollTop=t,volantis.scroll.unengine.list=[],volantis.scroll.engine.start()):volantis.scroll.unengine.start(),volantis.requestAnimationFrame(e)}))},volantis.scroll.handleScrollEvents(),volantis.scroll.ele=null,volantis.scroll.to=(e,t={})=>{e&&(volantis.scroll.ele=e,opt={top:e.getBoundingClientRect().top+document.documentElement.scrollTop,behavior:"smooth"},"top"in t&&(opt.top=t.top),"behavior"in t&&(opt.behavior=t.behavior),"addTop"in t&&(opt.top+=t.addTop),"observerDic"in t||(t.observerDic=100),window.scrollTo(opt),t.observer&&setTimeout((()=>{volantis.scroll.ele==e&&volantis.scroll.unengine.push((()=>{let n=e.getBoundingClientRect().top;n>=-t.observerDic&&n<=t.observerDic||volantis.scroll.to(e,t),volantis.scroll.unengine.remove("unengineObserver")}),"unengineObserver")}),1e3))},volantis.cleanContentVisibility=()=>{document.querySelector(".post-story")&&(console.log("cleanContentVisibility"),document.querySelectorAll(".post-story").forEach((e=>{e.classList.remove("post-story")})))}</script><script>volantis.GLOBAL_CONFIG={root:"/",debug:"env",default:{avatar:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/avatar/round/3442075.svg",link:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/link/8f277b4ee0ecd.svg",cover:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/cover/76b86c0226ffd.svg",image:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/image/2659360.svg"},lastupdate:new Date(1731139260214),cdn:{izitoast_css:"https://jsd.cdn.storisinz.site/npm/izitoast@1.4.0/dist/css/iziToast.min.css",izitoast_js:"https://jsd.cdn.storisinz.site/npm/izitoast@1.4.0/dist/js/iziToast.min.js",fancybox_css:"https://jsd.cdn.storisinz.site/npm/@fancyapps/ui@4.0.31/dist/fancybox.css",fancybox_js:"https://jsd.cdn.storisinz.site/npm/@fancyapps/ui@4.0.31/dist/fancybox.umd.js"},sidebar:{for_page:["nextsite","nextblogger","category","tagcloud","webinfo"],for_post:["nextsite","nextblogger","category","tagcloud","toc","webinfo"],webinfo:{lastupd:{enable:!0,friendlyShow:!0},runtime:{data:"2020/01/01",unit:"天"}}},plugins:{message:{enable:!0,icon:{default:"fa-solid fa-info-circle light-blue",quection:"fa-solid fa-question-circle light-blue"},time:{default:5e3,quection:2e4},position:"topRight",transitionIn:"bounceInLeft",transitionOut:"fadeOutRight",titleColor:"var(--color-text)",messageColor:"var(--color-text)",backgroundColor:"var(--color-card)",zindex:2147483647,copyright:{enable:!0,title:"知识共享许可协议",message:"请遵守 CC BY-NC-SA 4.0 协议。",icon:"far fa-copyright light-blue"},aplayer:{enable:!0,play:"fa-solid fa-play",pause:"fa-solid fa-pause"},rightmenu:{enable:!0,notice:!0}}},search:{appId:"72TOQYD33Q",indexName:"hexo",apiKey:"608d2f3acd06140a2473153f6cb61eda",hitsPerPage:"5",placeholder:"Search...",searchAsYouType:!0},languages:{search:{hits_empty:"找不到您查询的内容:${query}",hits_stats:"找到 ${hits} 条结果,用时 ${time} 毫秒"}}}</script><link rel="authorization_endpoint" href="https://indieauth.com/auth"><link rel="token_endpoint" href="https://tokens.indieauth.com/token"><script src="https://jsd.cdn.storisinz.site/npm/axios@1.7.7/dist/axios.js" crossorigin="anonymous" referrerpolicy="no-referrer"></script></head><body itemscope itemtype="http://schema.org/WebPage"><header itemscope itemtype="http://schema.org/WPHeader" id="l_header" class="l_header auto shadow floatable blur show showed" style="opacity:0"><div class="container"><div id="wrapper"><div class="nav-sub"><p class="title fix-header-title"></p><ul class="switcher nav-list-h m-phone" id="pjax-header-nav-list"><li><a id="s-comment" class="fa-solid fa-comments fa-fw" target="_self" title="comment"></a></li><li><a id="s-toc" class="s-toc fa-solid fa-list fa-fw" target="_self" title="toc"></a></li></ul></div><div class="nav-main"><a class="title flat-box" target="_self" href="/"><i class="fa fa-home"></i> <span>汐塔魔法屋</span></a><div class="menu navigation"><ul class="nav-list-h m-pc"><li><a class="menuitem flat-box faa-parent animated-hover" href="/categories/" title="分类" active-action="action-categories"><span class="icon"><i class="fa-solid fa-folder-open fa-fw"></i></span> <span>分类</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/tags/" title="标签" active-action="action-tags"><span class="icon"><i class="fa-solid fa-tags fa-fw"></i></span> <span>标签</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/archives/" title="归档" active-action="action-archives"><span class="icon"><i class="fa-solid fa-archive fa-fw"></i></span> <span>归档</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/link/" title="友链" active-action="action-link"><span class="icon"><i class="fa-solid fa-link fa-fw"></i></span> <span>友链</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://www.travellings.cn/go.html" title="开往" active-action="action-https:wwwtravellingscngohtml"><span class="icon"><i class="fa-solid fa-subway fa-fw"></i></span> <span>开往</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://en.blog.sinzmise.top/" title="English" active-action="action-https:enblogsinzmisetop"><span class="icon"><i class="fa fa-language fa-fw fa-fw"></i></span> <span>English</span></a></li></ul></div><div class="m_search"><form name="searchform" class="form u-search-form"><i class="icon fas fa-search fa-fw"></i> <input type="text" class="input u-search-input" placeholder="Search..."></form></div><ul class="switcher nav-list-h m-phone"><li><a class="s-search fa-solid fa-search fa-fw" target="_self" title="search"></a></li><li><a class="s-menu fa-solid fa-bars fa-fw" target="_self" title="menu"></a><ul class="menu-phone list-v navigation white-box"><li><a class="menuitem flat-box faa-parent animated-hover" href="/categories/" title="分类" active-action="action-categories"><span class="icon"><i class="fa-solid fa-folder-open fa-fw"></i></span> <span>分类</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/tags/" title="标签" active-action="action-tags"><span class="icon"><i class="fa-solid fa-tags fa-fw"></i></span> <span>标签</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/archives/" title="归档" active-action="action-archives"><span class="icon"><i class="fa-solid fa-archive fa-fw"></i></span> <span>归档</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/link/" title="友链" active-action="action-link"><span class="icon"><i class="fa-solid fa-link fa-fw"></i></span> <span>友链</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://www.travellings.cn/go.html" title="开往" active-action="action-https:wwwtravellingscngohtml"><span class="icon"><i class="fa-solid fa-subway fa-fw"></i></span> <span>开往</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://en.blog.sinzmise.top/" title="English" active-action="action-https:enblogsinzmisetop"><span class="icon"><i class="fa fa-language fa-fw fa-fw"></i></span> <span>English</span></a></li></ul></li></ul></div></div></div></header><div id="l_body"><div id="l_cover"></div><div id="safearea"><div class="body-wrapper"><div id="l_main" class=""><article itemscope itemtype="http://schema.org/Article" class="h-entry article post white-box reveal md shadow floatable blur article-type-post" id="post" itemscope itemprop="blogPost"><link itemprop="mainEntityOfPage" href="https://blog.sinzmise.top/posts/28733/"><span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization"><meta itemprop="name" content="汐塔魔法屋"></span><span hidden itemprop="post" itemscope itemtype="http://schema.org/Post"><meta itemprop="name" content="汐塔魔法屋"><meta itemprop="description" content="The Story,The Dream."></span><span hidden><meta itemprop="image" content="https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"></span><div class="article-meta" id="top"><h1 class="title allow-select p-name" itemprop="name headline"> Vercel部署Umami</h1><div class="new-meta-box"><div class="new-meta-item author p-author h-card" itemprop="author" itemscope itemtype="http://schema.org/Person"> <a itemprop="url" class="author u-url" href="https://blog.sinzmise.top/" rel="nofollow"><img itemprop="image" class="u-photo" no-lazy src="/img/avatar.png" alt="Author"><p itemprop="name" class="p-name">王九弦SZ·Ninty</p></a></div><div class="new-meta-item category"><i class="fa-solid fa-folder-open fa-fw" aria-hidden="true"></i> <a class="category-link" href="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/">站点折腾</a> <span hidden itemprop="about" itemscope itemtype="http://schema.org/Thing"><a href="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" itemprop="url"><span itemprop="name p-category">站点折腾</span></a></span></div><div class="new-meta-item date" itemprop="dateCreated datePublished"><a class="notlink"><i class="fa-solid fa-calendar-alt fa-fw" aria-hidden="true"></i><p>发布于:<time class="dataToShow dt-published" datetime="2023-07-14T08:48:13+00:00" title="2023年7月14日">2023年7月14日</time></p></a></div><div class="new-meta-item browse"><a class="notlink"><p><i class="fa-solid fa-eye fa-fw" aria-hidden="true"></i><span id="busuanzi_value_page_pv"><i class="fa-solid fa-loader fa-spin fa-fw" aria-hidden="true"></i></span> <span>次浏览</span></p></a></div></div></div><div id="layoutHelper-page-plugins"></div><div id="post-body" itemprop="articleBody" class="e-content"><p>之前我是想参考这个教程来部署:<a target="_blank" rel="noopener" href="https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/">https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/</a><br>然而部署过程中翻了车<br>这个教程新版教程(顺便总结一下我翻的车)<br><span id="more"></span></p><h1 id="数据库选择"><a href="#数据库选择" class="headerlink" title="数据库选择"></a>数据库选择</h1><p>Umami支持MySQL和PostgreSQL数据库,选择自己喜欢的数据库进行数据初始化即可。下面是几个免费的数据库服务,这里选择的是ElephantSQL,当然,并不限于这些。<br>目前www.jsdelivr.ren免费数据库如下:</p><ul><li>MySQL:<a target="_blank" rel="noopener" href="https://freedb.tech/">FREEDB.TECH</a>、<a target="_blank" rel="noopener" href="https://www.db4free.net/">db4free</a>、<a target="_blank" rel="noopener" href="https://sqlpub.com/">SQLPub</a></li><li>PostgreSQL:<a target="_blank" rel="noopener" href="https://www.elephantsql.com/">ElephantSQL</a>、<a target="_blank" rel="noopener" href="https://supabase.com/">Supabase</a></li></ul><h1 id="数据库部署"><a href="#数据库部署" class="headerlink" title="数据库部署"></a>数据库部署</h1><div class="note warning"><p>目前已知Supabase部署失败原因:<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230716/msedge_DL0IGBX6O1.2876ewjv3lz4.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230716/msedge_DL0IGBX6O1.2876ewjv3lz4.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_DL0IGBX6O1"></p></div><div class="tabs" id="tab-数据库部署"><ul class="nav-tabs"><li class="tab active"><a class="#数据库部署-1">MySQL</a></li><li class="tab"><a class="#数据库部署-2">PostgreSQL</a></li></ul><div class="tab-content"><div class="tab-pane active" id="数据库部署-1"><div class="tabs" id="tab-mysql数据库"><ul class="nav-tabs"><li class="tab active"><a class="#mysql数据库-1">FREEDB.TECH</a></li><li class="tab"><a class="#mysql数据库-2">db4free(不推荐,官网访问较慢)</a></li><li class="tab"><a class="#mysql数据库-3">SQLPub(推荐)</a></li></ul><div class="tab-content"><div class="tab-pane active" id="mysql数据库-1"><p>打开<a target="_blank" rel="noopener" href="https://freedb.tech/">FREEDB.TECH</a>,注册登录,创建数据库和用户</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_gi9vdCGiIt.48n3g4pzzvw0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_gi9vdCGiIt.48n3g4pzzvw0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_gi9vdCGiIt"></p><p>得到你的数据库和密码:<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_fGVbS9POH4.409i0oz7v9k0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_fGVbS9POH4.409i0oz7v9k0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_fGVbS9POH4"></p><p>组合一下:<br></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">mysql://(DATABASE USER):(PASSWORD)@(HOST):(PORT)/(DATABASE NAME)</span><br></pre></td></tr></table></figure><p></p></div><div class="tab-pane" id="mysql数据库-2"><div class="note warning"><p>这个数据库疑似国人开办,建议用国内邮箱收验证码,国外的基本收不到<br>(转自:<a target="_blank" rel="noopener" href="https://www.freeaday.com/2023/01/db4free/">https://www.freeaday.com/2023/01/db4free/</a> 的一条评论)</p></div><p></p><p>打开<a target="_blank" rel="noopener" href="https://www.db4free.net/">db4free</a>,点击“注册免费账号”,输入信息然后点击“注册”,一会后你会收到如下邮件:</p><p></p><p></p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/网易灵犀办公_JmFVOuOEIc.30smaneqwfa0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/网易灵犀办公_JmFVOuOEIc.30smaneqwfa0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="网易灵犀办公_JmFVOuOEIc"></p><p></p><p></p><p>访问邮件提供的确认网址,数据库就创建成功了</p><p></p><p></p><p>然后将你设置的信息替换掉下面括号里的内容(注意:括号得去掉):<br></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">mysql://(你设置的数据库用户名):(你设置的数据库密码)@db4free.net:3306/(你设置的数据库名)</span><br></pre></td></tr></table></figure><p></p>&lt;/div&gt;<div class="tab-pane" id="mysql数据库-3"><p>访问<a target="_blank" rel="noopener" href="https://sqlpub.com/">SQLPub</a>,输入账号密码,点击申请,申请成功后会有如下提示<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_8FyIBEs6Ja.14toupglasps.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_8FyIBEs6Ja.14toupglasps.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_8FyIBEs6Ja"><br>然后将里面的替换掉下面括号里的内容(注意:括号得去掉):<br></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">mysql://(数据库用户):(数据库密码)@(数据库地址)/(数据库名称)</span><br></pre></td></tr></table></figure><p></p></div>&lt;/div&gt;&lt;/div&gt;<p></p></div><div class="tab-pane" id="数据库部署-2"><div class="tabs" id="tab-postgresql"><ul class="nav-tabs"><li class="tab active"><a class="#postgresql-1">Supabase(推荐)</a></li><li class="tab"><a class="#postgresql-2">ElephantSQL</a></li></ul><div class="tab-content"><div class="tab-pane active" id="postgresql-1"><p>打开<a target="_blank" rel="noopener" href="https://supabase.com/">Supabase</a>,推荐使用Github登录。登陆成功后,创建一个新的项目New project-&gt;personal。</p><ul><li>Name:随意</li><li>Database Password:建议点击Generate a password生成</li><li>Region:建议选择US,因为Vercel的免费服务器在漂亮国</li><li>Pricing Plan:Free白嫖</li></ul><p>创建成功后,打开菜单Project Setting -&gt; Database -&gt; Connection string -&gt; URI,如下图:<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.3jutc7fp3fc0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.3jutc7fp3fc0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="image"><br>将红框内的内容复制下来,然后把<code>[YOUR-PASSWORD]</code>替换成你生成的密码,复制备用</p></div><div class="tab-pane" id="postgresql-2"><p>打开ElephantSQL,推荐使用Github登录,创建一个新的实例。Plan选择Tiny Turtle(Free)、Region随意,提交创建。<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_ELQQZsgMsH.68dwkz5in1w0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_ELQQZsgMsH.68dwkz5in1w0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_ELQQZsgMsH"><br>打开刚刚创建的示例,找到URL,点击眼睛图标,然后将URL复制下来备用</p></div></div></div></div></div></div><h1 id="Vercel部署"><a href="#Vercel部署" class="headerlink" title="Vercel部署"></a>Vercel部署</h1><p><a target="_blank" rel="noopener" href="https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fmikecao%2Fumami&amp;env=DATABASE_URL,HASH_SALT,TRACKER_SCRIPT_NAME&amp;envDescription=These%20values%20are%20defined%20in%20the%20configure%20Umami%20step%20from%20Install&amp;envLink=https%3A%2F%2Fumami.is%2Fdocs%2Finstall&amp;project-name=umami&amp;repo-name=umami"><img src="https://vercel.com/button" class="lazyload" data-srcset="https://vercel.com/button" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="部署到Vercel"></a></p><ol><li>点击上方按钮,跳转至 Vercel 进行 Server 端部署</li><li><div class="note info"><p>如果你未登录的话,Vercel 会让你注册或登录,请使用 GitHub 账户进行快捷登录。</p></div></li><li><p>输入一个你喜欢的 Vercel 项目名称并点击 Create 继续:</p></li></ol><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_EtpjrPwPlG"></p><ol><li>配置环境变量</li></ol><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_EtpjrPwPlG"><br>部署完成后,会跳转到环境变量部分,请按照如下方式配置环境变量:<br>| 名称 | 说明 |<br>| —————- | —————- |<br>|DATABASE_URL|(必填)数据库链接|<br>|HASH_SALT|(必填)任意字符串,推荐<a target="_blank" rel="noopener" href="https://uuid.bmcx.com/">这里</a>生成一串UUID|<br>|TRACKER_SCRIPT_NAME|(建议)任意字符串,推荐<a target="_blank" rel="noopener" href="https://uuid.bmcx.com/">这里</a>生成一串UUID(不填会导致去广告插件把这段脚本给拦截)|</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_3VF46Qh4uk.6ebntqavbmw.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_3VF46Qh4uk.6ebntqavbmw.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_3VF46Qh4uk"></p><p>配置完成后点击Deploy开始部署,部署过程大概两分钟,部署成功后会有一个彩纸的喜庆页面。</p><h1 id="绑定域名"><a href="#绑定域名" class="headerlink" title="绑定域名"></a>绑定域名</h1><p>点击Go to Dashboard,进入Settings——&gt;Domains绑定域名</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.6kbvzv14uic.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.6kbvzv14uic.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="image"></p><p>你绑定的域名就是umami的后台网址</p><h1 id="配置后台"><a href="#配置后台" class="headerlink" title="配置后台"></a>配置后台</h1><p>点击你绑定的域名,进入Umami后台登录(默认用户名admin和密码umami)进入后第一时间修改密码。</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_V6f3L8vvos.3pvc55z6eqw0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_V6f3L8vvos.3pvc55z6eqw0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_V6f3L8vvos"></p><h1 id="添加站点-amp-获取代码"><a href="#添加站点-amp-获取代码" class="headerlink" title="添加站点 &amp; 获取代码"></a>添加站点 &amp; 获取代码</h1><p>“网站”—-&gt;“添加网站”添加你自己的网站</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.x9jagr7mvxc.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.x9jagr7mvxc.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="image"></p><p>保存后点击“编辑”—-&gt;“跟踪代码”,将获取到的代码放进你的站点</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_trQnJ47k75.20wh55o85wkg.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_trQnJ47k75.20wh55o85wkg.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_trQnJ47k75"></p><p>不久后就能看到你的站点数据了</p><h1 id="问题"><a href="#问题" class="headerlink" title="问题"></a>问题</h1><ul><li>Umami无法登录,提示“Failed to load resource: the server responded with a status of 405”<br>等待几分钟后登录重试</li><li>使用Supabase数据库时,Vercel提示这个错误:</li></ul><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_D1X7RIZpUD.5wxtzukahdo0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_D1X7RIZpUD.5wxtzukahdo0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_D1X7RIZpUD"></p><p>建议重新新建数据库,还不行的话更换别的数据库</p></div><div class="footer"></div><div class="article-meta" id="bottom"><div class="new-meta-box"><div class="new-meta-item date" itemprop="dateModified"><a class="notlink"><i class="fa-solid fa-edit fa-fw" aria-hidden="true"></i><p>更新于:<time class="dataToShow dt-updated" datetime="2024-11-09T08:00:35+00:00" title="2024年11月9日">2024年11月9日</time></p></a></div><div class="new-meta-item meta-tags"><a class="tag" href="/tags/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" rel="nofollow"><i class="fa-solid fa-hashtag fa-fw" aria-hidden="true"></i><p>站点折腾</p></a></div><div class="new-meta-item meta-tags"><a class="tag" href="/tags/%E8%87%AA%E5%BB%BA%E9%83%A8%E7%BD%B2/" rel="nofollow"><i class="fa-solid fa-hashtag fa-fw" aria-hidden="true"></i><p>自建部署</p></a></div> <span hidden itemprop="keywords">站点折腾 自建部署</span><div class="new-meta-item share -mob-share-list"><div class="-mob-share-list share-body"> <a class="-mob-share-qq" title="" rel="external nofollow noopener noreferrer noopener" target="_blank" href="http://connect.qq.com/widget/shareqq/index.html?url=https://blog.sinzmise.top/posts/28733/&title=Vercel部署Umami - 汐塔魔法屋&summary=之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><img src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qq.png" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qq.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a class="-mob-share-qzone" title="" rel="external nofollow noopener noreferrer noopener" target="_blank" href="https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=https://blog.sinzmise.top/posts/28733/&title=Vercel部署Umami - 汐塔魔法屋&summary=之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><img src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qzone.png" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qzone.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a class="-mob-share-weibo" title="" rel="external nofollow noopener noreferrer noopener" target="_blank" href="http://service.weibo.com/share/share.php?url=https://blog.sinzmise.top/posts/28733/&title=Vercel部署Umami - 汐塔魔法屋&summary=之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><img src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/weibo.png" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/weibo.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a></div></div></div></div><div class="prev-next"><a class="prev" href="/posts/50710/"><p class="title"><i class="fa-solid fa-angle-double-left" aria-hidden="true"></i>我的tulpa —— 夏玖铃的简介</p><p class="content"> 注意,由于名字和《逆水寒》游戏里的一个流派名冲突,改名为“夏玖铃” 她的出现与其说是Tulpa,不如说是DID(解离性人格障碍)因为她是从我永远的噩梦:四年级出现的那时我总是被班级最后一名的那...</p></a><a class="next" href="/posts/12779/"><p class="title">盘点我访问过的古老站点<i class="fa-solid fa-angle-double-right" aria-hidden="true"></i></p><p class="content">这些站点有些年代了。。。。。。 秘密花园(www.yini.org )第一次认识这个站点,还得从我的企划:Prism Online开始——其实这个企划的名字不是我自定的,而是为了纪念zia之前为...</p></a></div></div></div></div></article><article class="post white-box shadow floatable blur" id="comments"><span hidden><meta itemprop="discussionUrl" content="/posts/28733/#comments"></span><p ct><i class="fa-solid fa-comments"></i> 评论</p><div id="layoutHelper-comments"></div></article></div><aside id="l_side" class="not-select default-cursor" itemscope itemtype="http://schema.org/WPSideBar"><section class="widget nextsite desktop pjax"><div class="site-brand-wrapper"><div class="site-meta"> <a href="/" class="brand" rel="start"><span class="site-title">汐塔魔法屋</span></a><p class="site-subtitle" itemprop="description">Ceta Magical House</p></div><div class="site-nav-toggle"> <button aria-label="切换导航栏"><span class="btn-bar"></span><span class="btn-bar"></span><span class="btn-bar"></span></button></div></div><nav class="site-nav"><ul class="next-main"><li class="next-main-item"><a href="/categories/" title="分类" active-action="action-categories"><i class="menu-item-icon fa-solid fa-folder-open fa-fw"></i> 分类</a></li><li class="next-main-item"><a href="/tags/" title="标签" active-action="action-tags"><i class="menu-item-icon fa-solid fa-tags fa-fw"></i> 标签</a></li><li class="next-main-item"><a href="/archives/" title="归档" active-action="action-archives"><i class="menu-item-icon fa-solid fa-archive fa-fw"></i> 归档</a></li><li class="next-main-item"><a href="/link/" title="友链" active-action="action-link"><i class="menu-item-icon fa-solid fa-link fa-fw"></i> 友链</a></li><li class="next-main-item"><a target="_blank" rel="noopener" href="https://www.travellings.cn/go.html" title="开往" active-action="action-https:wwwtravellingscngohtml"><i class="menu-item-icon fa-solid fa-subway fa-fw"></i> 开往</a></li><li class="next-main-item"><a target="_blank" rel="noopener" href="https://en.blog.sinzmise.top/" title="English" active-action="action-https:enblogsinzmisetop"><i class="menu-item-icon fa fa-language fa-fw fa-fw"></i> English</a></li><li class="next-main-item"><a href="javascript:void(0)" title="搜索" active-action="action-javascript:void(0)" onclick="OpenSearch()"><i class="menu-item-icon fa-solid fa-search fa-fw"></i> 搜索</a></li></ul></nav></section><section class="widget nextblogger desktop pjax h-card"><div class="content"> <a class="avatar u-url flat-box" href="https://blog.sinzmise.top/"><img no-lazy class="site-author-image u-photo" itemprop="image" src="/img/avatar.png" alt="王九弦SZ·Ninty"></a><div class="site-author-box"><p class="site-author-name p-name" itemprop="name">王九弦SZ·Ninty</p><p class="site-author-description" itemprop="description">种下故事的种子,随着风和光生根发芽</p></div><div class="links-of-author"><span class="links-of-author-item"><a href="/atom.xml" title="RSS" alt="汐塔魔法屋" rel="me"><i class="fa-solid fa-rss fa-fw"></i></a></span><span class="links-of-author-item"><a href="mailto:email@sinzmise.top" title="Email" alt="汐塔魔法屋" class="u-email" rel="me"><i class="fa-solid fa-envelope fa-fw"></i></a></span><span class="links-of-author-item"><a target="_blank" href="https://github.com/SinzMise/" title="Github" alt="汐塔魔法屋" rel="me noopener"><i class="fab fa-github fa-fw"></i></a></span></div></div></section><section class="widget category desktop pjax"><header><a href="/categories/"><span class="icon"><i class="fa-solid fa-folder-open fa-fw" aria-hidden="true"></i></span> <span class="name">文章分类</span></a></header><div class="content"><ul class="entry navigation"><li><a class="flat-box" title="/categories/%E4%B8%AA%E4%BA%BA%E5%B0%8F%E8%AE%B0/" href="/categories/%E4%B8%AA%E4%BA%BA%E5%B0%8F%E8%AE%B0/" active-action="action-categoriesE4B8AAE4BABAE5B08FE8AEB0"><div class="name">个人小记</div><div class="badge">(19)</div></a></li><li><a class="flat-box" title="/categories/%E6%AD%8C%E6%9B%B2%E6%94%B6%E9%9B%86/" href="/categories/%E6%AD%8C%E6%9B%B2%E6%94%B6%E9%9B%86/" active-action="action-categoriesE6AD8CE69BB2E694B6E99B86"><div class="name">歌曲收集</div><div class="badge">(1)</div></a></li><li><a class="flat-box" title="/categories/%E6%B8%B8%E6%88%8F%E7%9B%B8%E5%85%B3/" href="/categories/%E6%B8%B8%E6%88%8F%E7%9B%B8%E5%85%B3/" active-action="action-categoriesE6B8B8E6888FE79BB8E585B3"><div class="name">游戏相关</div><div class="badge">(4)</div></a></li><li><a class="flat-box" title="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" href="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" active-action="action-categoriesE7AB99E782B9E68A98E885BE"><div class="name">站点折腾</div><div class="badge">(14)</div></a></li><li><a class="flat-box" title="/categories/%E9%A1%B9%E7%9B%AE%E6%8A%98%E8%85%BE/" href="/categories/%E9%A1%B9%E7%9B%AE%E6%8A%98%E8%85%BE/" active-action="action-categoriesE9A1B9E79BAEE68A98E885BE"><div class="name">项目折腾</div><div class="badge">(3)</div></a></li></ul></div></section><section class="widget tagcloud desktop pjax"><header><a href="/tags/"><span class="icon"><i class="fa-solid fa-tags fa-fw" aria-hidden="true"></i></span> <span class="name">热门标签</span></a></header><div class="content"> <a href="/tags/Flash%E7%9B%B8%E5%85%B3/" style="font-size:14px;color:#999">Flash相关</a> <a href="/tags/Steam%E6%B8%B8%E6%88%8F/" style="font-size:14px;color:#999">Steam游戏</a> <a href="/tags/Windows%E8%BD%AF%E4%BB%B6/" style="font-size:15.67px;color:#8e8e8e">Windows软件</a> <a href="/tags/%E4%B8%AA%E4%BA%BA%E5%B0%8F%E8%AE%B0/" style="font-size:24px;color:#555">个人小记</a> <a href="/tags/%E5%85%B6%E5%AE%83%E6%B8%B8%E6%88%8F/" style="font-size:17.33px;color:#828282">其它游戏</a> <a href="/tags/%E5%8A%A0%E8%BD%BD%E5%8A%A8%E7%94%BB/" style="font-size:14px;color:#999">加载动画</a> <a href="/tags/%E6%82%AC%E6%B5%AE%E5%AE%A0%E7%89%A9-%E7%9C%8B%E6%9D%BF%E5%A8%98/" style="font-size:14px;color:#999">悬浮宠物/看板娘</a> <a href="/tags/%E6%AD%8C%E6%9B%B2%E6%94%B6%E9%9B%86/" style="font-size:14px;color:#999">歌曲收集</a> <a href="/tags/%E6%B8%B8%E6%88%8F%E7%9B%B8%E5%85%B3/" style="font-size:19px;color:#777">游戏相关</a> <a href="/tags/%E7%AB%99%E7%82%B9%E5%BA%95%E9%83%A8%E9%AD%94%E6%94%B9/" style="font-size:14px;color:#999">站点底部魔改</a> <a href="/tags/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" style="font-size:22.33px;color:#606060">站点折腾</a> <a href="/tags/%E8%87%AA%E5%BB%BA%E9%83%A8%E7%BD%B2/" style="font-size:20.67px;color:#6c6c6c">自建部署</a> <a href="/tags/%E9%A1%B5%E9%9D%A2%E9%AD%94%E6%94%B9/" style="font-size:17.33px;color:#828282">页面魔改</a> <a href="/tags/%E9%A1%B9%E7%9B%AE%E6%8A%98%E8%85%BE/" style="font-size:17.33px;color:#828282">项目折腾</a></div></section><div class="widget-sticky pjax"><section class="widget toc-wrapper desktop mobile" id="toc-div"><header><span class="icon"><i class="fa-solid fa-list fa-fw" aria-hidden="true"></i></span> <span class="name">本文目录</span></header><div class="content"></div></section><section class="widget desktop"><header><span class="icon"><i class="fa-solid fa-award fa-fw" aria-hidden="true"></i></span> <span class="name">站点信息</span></header><div class="content"><div class="webinfo"><div class="webinfo-item"><div>文章数目:</div><div>41 篇</div></div><div class="webinfo-item"><div>本站访客数:</div><div><span id="busuanzi_value_site_uv"><i class="fa-solid fa-fan fa-spin fa-fw" aria-hidden="true"></i></span> 人</div></div><div class="webinfo-item"><div>本站总访问量:</div><div><span id="busuanzi_value_site_pv"><i class="fa-solid fa-fan fa-spin fa-fw" aria-hidden="true"></i></span> 次</div></div><div class="webinfo-item"><div>最后活动时间:</div><div id="last-update-show">2024-11-09 日</div></div></div></div></section></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div></aside><pjax><script>window.pdata={ispage:!0,commentPath:"",commentPlaceholder:"",commentConfig:{}},document.getElementById("l_header")&&document.getElementById("l_header").classList.add("show")</script></pjax></div><footer class="footer clearfix" itemscope itemtype="http://schema.org/WPFooter"><br><br><br><div class="social-wrapper" itemprop="about" itemscope itemtype="http://schema.org/Thing"> <a href="https://www.travellings.cn/go.html" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="开往-友链接力"><img src="https://www.travellings.cn/assets/logo.gif" class="lazyload" data-srcset="https://www.travellings.cn/assets/logo.gif" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a href="https://boringbay.com" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="无聊湾 🥱 The Boring Bay"><img src="https://boringbay.com/api/badge/blog.sinzmise.top" class="lazyload" data-srcset="https://boringbay.com/api/badge/blog.sinzmise.top" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a href="https://blogscn.fun/" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="本站已加入BLOGS·CN"><img src="https://photo.xiangming.site/img/blogscn.png" class="lazyload" data-srcset="https://photo.xiangming.site/img/blogscn.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a href="https://blogscn.fun/random.html" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="BLOGS·CN随机访问"><img src="https://photo.xiangming.site/img/footer.gif" class="lazyload" data-srcset="https://photo.xiangming.site/img/footer.gif" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a></div><div><p>博客内容遵循 <a target="_blank" rel="noopener" href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh">署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议</a></p></div> 由 <a href="https://hexo.io" target="_blank" rel="noopener">Hexo</a> 驱动 | 主题 <a href="https://github.com/volantis-x/hexo-theme-volantis/#6.0.0-alpha.0" target="_blank" class="codename">Volantis</a><div class="copyright"><p><a target="_blank" rel="noopener" href="https://xn--sr8hvo.ws/previous">←</a> An <a target="_blank" rel="noopener" href="https://xn--sr8hvo.ws">IndieWeb Webring</a> 🕸💍 <a target="_blank" rel="noopener" href="https://xn--sr8hvo.ws/next">→</a><br>©2021 · <a href="/">中弦局·汐塔魔法屋</a><br><a target="_blank" rel="noopener" href="https://icp.gov.moe/?keyword=20231033">萌ICP备20231033号</a> | <a target="_blank" rel="noopener" href="https://icp.gov.moe/?keyword=20231033">MIIT备20240818号</a> | <a target="_blank" rel="noopener" href="https://guan.ma/hao/2024000155/">官码2024000155号</a><br>我加入的:<a target="_blank" rel="noopener" href="https://zhblogs.ohyee.cc/">中文博客列表</a> | <a target="_blank" rel="noopener" href="https://storeweb.cn/member/o/1585">个站商店</a> | <a target="_blank" rel="noopener" href="https://bf.zzxworld.com/s/995">BlogFinder</a> | <a target="_blank" rel="noopener" href="https://sites.applinzi.com/site-info?siteType=life&amp;siteId=64cb373190e35300a8eec654">站点聚合平台</a> | <a target="_blank" rel="noopener" href="https://boke.lu/">博客录</a> | <a target="_blank" rel="noopener" href="https://rssblog.cn/member/d711afd659d65c2ba2d3b18697818cf7/">RssBlog</a> | <a target="_blank" rel="noopener" href="https://blogscn.fun/">笔墨迹</a> | <a target="_blank" rel="noopener" href="https://daohang.lusongsong.com/">博客大全</a></p></div></footer><a id="s-top" class="fa-solid fa-arrow-up fa-fw" title="top"></a></div></div><div><script>volantis.dom.bodyAnchor=volantis.dom.$(document.getElementById("safearea")),volantis.dom.topBtn=volantis.dom.$(document.getElementById("s-top")),volantis.dom.wrapper=volantis.dom.$(document.getElementById("wrapper")),volantis.dom.coverAnchor=volantis.dom.$(document.querySelector("#l_cover .cover-wrapper")),volantis.dom.switcher=volantis.dom.$(document.querySelector("#l_header .switcher .s-search")),volantis.dom.header=volantis.dom.$(document.getElementById("l_header")),volantis.dom.search=volantis.dom.$(document.querySelector("#l_header .m_search")),volantis.dom.mPhoneList=volantis.dom.$(document.querySelectorAll("#l_header .m-phone .list-v")),top.location!=self.location&&(top.location=self.location),volantis.css("https://jsd.cdn.storisinz.site/npm/@fortawesome/fontawesome-free@6.1.1/css/all.min.css")</script><script src="/js/app.js"></script><script>function loadIssuesJS(){null!=document.getElementById("sites-api")&&"undefined"==typeof SitesJS&&volantis.js("/js/plugins/tags/sites.js");null!=document.getElementById("friends-api")&&"undefined"==typeof FriendsJS&&volantis.js("/js/plugins/tags/friends.js");null!=document.getElementById("contributors-api")&&"undefined"==typeof ContributorsJS&&volantis.js("/js/plugins/tags/contributors.js")}loadIssuesJS(),volantis.pjax.push((()=>{loadIssuesJS()}))</script><script defer="defer" src="https://jsd.cdn.storisinz.site/npm/vanilla-lazyload@17.1.0/dist/lazyload.min.js"></script><script>window.lazyLoadOptions={elements_selector:".lazyload",threshold:0},window.addEventListener("LazyLoad::Initialized",(function(n){window.lazyLoadInstance=n.detail.instance}),!1),document.addEventListener("DOMContentLoaded",(function(){lazyLoadInstance.update()})),document.addEventListener("pjax:complete",(function(){lazyLoadInstance.update()}))</script><script>window.FPConfig={delay:0,ignoreKeywords:["#"],maxRPS:6,hoverDelay:0}</script><script defer="defer" src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/libs/flying-pages/flying-pages.min.js"></script><script>function load_twikoo(){document.querySelectorAll("#twikoo_container")[0]&&volantis.js("https://jsd.cdn.storisinz.site/npm/twikoo@1.6.39/dist/twikoo.min.js",pjax_twikoo)}function pjax_twikoo(){if(!document.querySelectorAll("#twikoo_container")[0])return;let o=pdata.commentPath,t=pdata.commentPlaceholder||"";if(0==o.length){o=""||decodeURI(window.location.pathname)}twikoo.init(Object.assign(Object.assign({path:null,envId:"https://tk.pl.blog.sinzmise.top/",placeholder:null,visitor:!1},{el:"#twikoo_container",path:o,placeholder:t,onCommentLoaded:function(){if("undefined"==typeof VolantisFancyBox){const o=setInterval((()=>{"undefined"!=typeof VolantisFancyBox&&(clearInterval(o),VolantisFancyBox.groupBind('.tk-content img:not([class*="emo"])',"Comments"))}))}else VolantisFancyBox.groupBind('.tk-content img:not([class*="emo"])',"Comments")}}),pdata.commentConfig))}volantis.layoutHelper("comments",'<div id="twikoo_container"><i class="fa-solid fa-cog fa-spin fa-fw fa-2x"></i></div>'),load_twikoo(),volantis.pjax.push((()=>{"undefined"==typeof twikoo?load_twikoo():pjax_twikoo()}),"twikoo")</script><script defer="defer" src="https://jsd.cdn.storisinz.site/npm/penndu@1.0.0/bsz.js" data-pjax></script><script>async function loadSearchScript(){return await volantis.js("https://jsd.cdn.storisinz.site/npm/algoliasearch@4.14.2/dist/algoliasearch-lite.umd.js"),await volantis.js("https://jsd.cdn.storisinz.site/npm/instantsearch.js@4.44.0/dist/instantsearch.production.min.js"),volantis.js("/js/search/algolia.js")}function loadSearchService(){document.querySelectorAll(".input.u-search-input").forEach((e=>{e.removeEventListener("focus",loadSearchService,!1)})),document.querySelectorAll(".u-search-form").forEach((e=>{e.addEventListener("submit",(e=>{e.preventDefault()}),!1)}))}function OpenSearch(e=""){"undefined"==typeof SearchService?loadSearchScript().then((()=>{SearchService.setQueryText(e),SearchService.search()})):(SearchService.setQueryText(e),SearchService.search())}if(loadSearchScript(),window.location.search&&/^\?s=/g.test(window.location.search)){OpenSearch(decodeURI(window.location.search).replace(/\ /g,"-").replace(/^\?s=/g,""))}document.querySelectorAll(".input.u-search-input").forEach((e=>{e.addEventListener("focus",loadSearchService,!1)}))</script><script>function pjax_highlightjs_copyCode(){(document.querySelector(".highlight .code pre")||document.querySelector(".article pre code"))&&VolantisApp.utilCopyCode(".highlight .code pre, .article pre code")}volantis.requestAnimationFrame(pjax_highlightjs_copyCode),volantis.pjax.push(pjax_highlightjs_copyCode)</script><script>setTimeout((function(){function a(){dataLayer.push(arguments)}volantis.js("https://www.googletagmanager.com/gtag/js?id=G-7MR59SK1DP"),window.dataLayer=window.dataLayer||[],a("js",new Date),a("config","G-7MR59SK1DP")}),1e3),volantis.pjax.push((()=>{window.dataLayer=window.dataLayer||[],function(){dataLayer.push(arguments)}("config","G-7MR59SK1DP",{page_path:document.location.pathname})}),"google_analytics")</script><script>var _hmt=_hmt||[];setTimeout((function(){volantis.js("https://hm.baidu.com/hm.js?59986c9d6715c06178a2b6e2f118f837")}),1e3),volantis.pjax.push((()=>{_hmt.push(["_trackPageview",document.location.pathname])}),"baidu_analytics")</script><script charset="UTF-8" id="LA_COLLECT" src="//sdk.51.la/js-sdk-pro.min.js"></script><script>volantis.js("https://sdk.51.la/js-sdk-pro.min.js").then((()=>{LA.init({id:"K9WDMA2h2AfDg5GG",ck:"K9WDMA2h2AfDg5GG",autoTrack:!0,hashMode:!0})}))</script><script src="https://sdk.51.la/perf/js-sdk-perf.min.js" crossorigin="anonymous"></script><script>volantis.js("https://sdk.51.la/perf/js-sdk-perf.min.js").then((()=>{(new LingQue.Monitor).init({id:"K94JRCDsbHJJSjNs",sendSuspicious:!0,sendSpaPv:!0})}))</script><script>function load_swiper(){document.querySelectorAll(".swiper-container")[0]&&(volantis.css("https://jsd.cdn.storisinz.site/npm/swiper@8.3.2/swiper-bundle.min.css"),volantis.js("https://jsd.cdn.storisinz.site/npm/swiper@8.3.2/swiper-bundle.min.js").then((()=>{pjax_swiper()})))}function pjax_swiper(){volantis.swiper=new Swiper(".swiper-container",{slidesPerView:"auto",spaceBetween:8,centeredSlides:!0,loop:!0,pagination:{el:".swiper-pagination",clickable:!0},navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}})}load_swiper(),volantis.pjax.push((()=>{document.querySelectorAll(".swiper-container")[0]&&(void 0===volantis.swiper?load_swiper():pjax_swiper())}))</script><pjax></pjax><script>function listenSidebarTOC(){const t=document.querySelectorAll(".toc li");if(!t.length)return;const e=[];Array.from(t).forEach((t=>{const n=t.querySelector(".toc-link"),i=document.getElementById(n.getAttribute("href")?decodeURI(n.getAttribute("href")).replace("#",""):n.getAttribute("toc-action").split("toc-")[1]);return e.push(i),n.getAttribute("href")&&(n.setAttribute("toc-action","toc-"+decodeURI(n.getAttribute("href")).replace("#","")),n.removeAttribute("href")),i&&i.id&&n.addEventListener("click",(t=>{t.preventDefault(),volantis.scroll.to(i,{addTop:5,observer:!0}),history.pushState(null,document.title,"#"+i.id)})),i}));function n(t){if(t.classList.contains("active-current"))return;document.querySelectorAll(".toc .active").forEach((t=>{t.classList.remove("active","active-current")})),t.classList.add("active","active-current");let e=t.parentNode;for(;!e.matches(".toc");)e.matches("li")&&e.classList.add("active"),e=e.parentNode}volantis.activateNavIndex=0,n(t[volantis.activateNavIndex]),e[0]&&volantis.scroll.push((()=>{if(e[0].getBoundingClientRect().top>=0)volantis.activateNavIndex=0;else if(e[e.length-1].getBoundingClientRect().top<0)volantis.activateNavIndex=e.length-1;else for(let t=0;t<e.length;t++){const n=e[t],i=e[(t+1)%e.length];if(n.getBoundingClientRect().top<0&&i.getBoundingClientRect().top>=0){volantis.activateNavIndex=t;break}}n(t[volantis.activateNavIndex])}))}document.addEventListener("DOMContentLoaded",(()=>{volantis.requestAnimationFrame(listenSidebarTOC)})),volantis.pjax.push(listenSidebarTOC)</script><script>document.onreadystatechange=function(){if("complete"==document.readyState){const{saveData:e,effectiveType:t}=navigator.connection||navigator.mozConnection||navigator.webkitConnection||{};("none"==getComputedStyle(document.querySelector("#safearea"),null).display||e||/2g/.test(t))&&(document.querySelectorAll(".reveal").forEach((function(e){e.style.opacity="1"})),document.querySelector("#safearea").style.display="block")}}</script><script type="application/ld+json">[{"@context":"http://schema.org","@type":"Organization","name":"汐塔魔法屋","url":"https://blog.sinzmise.top/","logo":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png","width":192,"height":192}},{"@context":"http://schema.org","@type":"Person","name":"王九弦SZ·Ninty","image":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"},"url":"https://blog.sinzmise.top/","sameAs":["https://github.com/SinzMise"],"description":"The Story,The Dream."},{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https://blog.sinzmise.top/","name":"汐塔魔法屋"}},{"@type":"ListItem","position":2,"item":{"@id":"https://blog.sinzmise.top/categories/站点折腾/","name":"站点折腾"}},{"@type":"ListItem","position":3,"item":{"@id":"https://blog.sinzmise.top/posts/28733/","name":"Vercel部署Umami"}}]},{"@context":"http://schema.org","@type":"WebSite","name":"汐塔魔法屋","url":"https://blog.sinzmise.top/","keywords":null,"description":"The Story,The Dream.","author":{"@type":"Person","name":"王九弦SZ·Ninty","image":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"},"url":"https://blog.sinzmise.top/","description":"The Story,The Dream."},"publisher":{"@type":"Organization","name":"汐塔魔法屋","url":"https://blog.sinzmise.top/","logo":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png","width":192,"height":192}},"potentialAction":{"@type":"SearchAction","name":"Site Search","target":{"@type":"EntryPoint","urlTemplate":"https://blog.sinzmise.top?s={search_term_string}"},"query-input":"required name=search_term_string"}},{"@context":"http://schema.org","@type":"BlogPosting","headline":"Vercel部署Umami","description":"之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)","inLanguage":"zh-CN","mainEntityOfPage":{"@type":"WebPage","@id":"https://blog.sinzmise.top/posts/28733/"},"author":{"@type":"Person","name":"王九弦SZ·Ninty","image":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"},"url":"https://blog.sinzmise.top/"},"publisher":{"@type":"Organization","name":"汐塔魔法屋","logo":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png","width":192,"height":192}},"url":"https://blog.sinzmise.top/posts/28733/","wordCount":101,"datePublished":"2023-07-14T08:48:13.000Z","dateModified":"2024-11-09T08:00:35.901Z","articleSection":"站点折腾","keywords":"站点折腾,自建部署","image":{"@type":"ImageObject","url":"https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/umami-x-vercel.37hd3icfx5y0.webp","width":1024,"height":768}}]</script><script src="https://jsd.cdn.storisinz.site/npm/pjax@0.2.8/pjax.min.js"></script><script>var pjax;document.addEventListener("DOMContentLoaded",(function(){pjax=new Pjax({elements:'a[href]:not([href^="#"]):not([href="javascript:void(0)"]):not([pjax-fancybox]):not([onclick="return false;"]):not([onclick="return!1"]):not([target="_blank"]):not([target="view_window"]):not([href$=".xml"])',selectors:["head title","head meta[name=keywords]","head meta[name=description]","#l_cover","#l_main","#pjax-header-nav-list",".pjax","pjax"],cacheBust:!1,timeout:5e3})})),document.addEventListener("pjax:send",(function(e){try{var t=window.location.pathname,n=e.triggerElement.href,a=[""];""!=a[0]&&a.forEach((e=>{-1==t.indexOf(e)&&-1==n.indexOf(e)||(window.location.href=n)}))}catch(e){}volantis.pjax.method.send.start()})),document.addEventListener("pjax:complete",(function(){document.querySelectorAll("script[data-pjax], .pjax-reload script").forEach((e=>{const t=e.text||e.textContent||e.innerHTML||"",n=document.createElement("script");Object.keys(e.attributes).forEach((t=>{n.setAttribute(e.attributes[t].nodeName,e.attributes[t].nodeValue)})),t&&n.appendChild(document.createTextNode(t)),e.parentNode.replaceChild(n,e)})),volantis.pjax.method.complete.start()})),document.addEventListener("pjax:error",(function(e){"pjax"===volantis.debug?(console.error(e),console.log("pjax error: \n"+JSON.stringify(e))):(volantis.pjax.method.error.start(),window.location.href=e.triggerElement.href)}))</script></div><script defer="defer" src="https://static.cloudflareinsights.com/beacon.min.js" data-cf-beacon='{"token": "4a134f143d6048e4b0c719c11c03c452"}'></script><script data-pjax src="https://jsd.cdn.storisinz.site/npm/oh-my-live2d"></script><script>const oml2d=OML2D.loadOml2d({menus:{items:t=>[{id:"home",icon:"fa fa-house",title:"我的个人主页",onClick:()=>window.open("https://www.sinzmise.top/")},t[0],t[2],t[3]]},mobileDisplay:!1,models:[{path:"https://files.blog.sinzmise.top/live2d/dujiaoshou_6/dujiaoshou_6.model3.json",mobilePosition:[-10,23],mobileScale:.1,mobileStageStyle:{width:180,height:166},motionPreloadStrategy:"IDLE",position:[-120,-30],scale:.06,stageStyle:{width:250,height:400}},{path:"https://files.blog.sinzmise.top/live2d/dujiaoshou_4/dujiaoshou_4.model3.json",scale:.06,position:[-50,-25],stageStyle:{width:250,height:300},mobileScale:.08,mobilePosition:[0,0],mobileStageStyle:{width:180}}],parentElement:document.body,primaryColor:"var(--primary)",sayHello:!1,tips:{style:{width:230,height:120,left:"calc(50% + 6px)",top:"-100px"},mobileStyle:{width:180,height:80,left:"calc(50% - 30px)",top:"-100px"},idleTips:{interval:15e3,message:function(){return axios.get("https://v1.hitokoto.cn?c=i").then((function(t){return t.data.hitokoto})).catch((function(t){console.error(t)}))}}}})</script></body></html>
1
+ <!DOCTYPE html><html lang="zh-CN"><head hexo-theme="https://github.com/volantis-x/hexo-theme-volantis/#6.0.0-alpha.0"><meta name="generator" content="Hexo 7.3.0"><meta charset="utf-8"><link rel="canonical" href="https://blog.sinzmise.top/posts/28733/"><meta name="renderer" content="webkit"><meta name="force-rendering" content="webkit"><meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"><meta name="HandheldFriendly" content="True"><meta name="mobile-web-app-capable" content="yes"><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=5"><meta content="black-translucent" name="apple-mobile-web-app-status-bar-style"><meta content="telephone=no" name="format-detection"><meta name="msapplication-TileColor" content="#ccf6f4"><meta name="theme-color" content="#ccf6f4"><link rel="apple-touch-icon" sizes="180x180" href="/images/siteicon/ios/180.png"><link rel="icon" type="image/png" sizes="32x32" href="/images/siteicon/ios/32.png"><link rel="icon" type="image/png" sizes="16x16" href="/images/siteicon/ios/16.png"><link rel="manifest" href="/manifest.json"><link rel="shortcut icon" href="/images/siteicon/favicon.ico"><meta name="apple-mobile-web-app-title" content="Volantis"><meta name="application-name" content="Volantis"><meta name="msapplication-TileColor" content="#f4f4f4"><meta name="msapplication-TileImage" content="/images/siteicon/ios/32.png"><meta name="theme-color" content="#f4f4f4" media="(prefers-color-scheme: light)"><meta name="theme-color" content="#121212" media="(prefers-color-scheme: dark)"><meta name="baidu-site-verification" content="codeva-NA6uDlCuZg"><meta name="msvalidate.01" content="18428535B4425286753107589FC35E79"><meta name="google-site-verification" content="H2O2-443XGKJh5l1ik9o6ZgFmcBEf9AKSoMRRlNIltQ"><script>function registerServiceWorker(e){"localhost"!=window.location.hostname&&"serviceWorker"in navigator&&navigator.serviceWorker.register(`${e}?time=${(new Date).getTime()}`).then((function(e){e.onupdatefound=function(){var r=e.installing;r.onstatechange=function(){switch(r.state){case"installed":navigator.serviceWorker.controller?console.log("Updated Service Worker."):console.log("Service Worker Sucess!");break;case"redundant":console.log("The installing service worker became redundant.")}}}})).catch((function(e){console.error("Error during service worker registration:",e),"undefined"==typeof swinstallretry&&(swinstallretry=1,registerServiceWorker("/sw.js"))}))}registerServiceWorker("/sw.js")</script><link rel="preload" href="/css/style.css" as="style"><link rel="preload" href="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/VarelaRound/VarelaRound-Regular.ttf" as="font" type="font/ttf" crossorigin="anonymous"><link rel="preload" href="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/UbuntuMono/UbuntuMono-Regular.ttf" as="font" type="font/ttf" crossorigin="anonymous"><link rel="alternate" href="/atom.xml" title="汐塔魔法屋" type="application/atom+xml"><title>Vercel部署Umami - 汐塔魔法屋</title><meta name="keywords" content="站点折腾,自建部署,null"><meta desc name="description" content="之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车) - 王九弦SZ·Ninty - 汐塔魔法屋"><meta property="og:type" content="article"><meta property="og:title" content="Vercel部署Umami"><meta property="og:url" content="https://blog.sinzmise.top/posts/28733/"><meta property="og:site_name" content="汐塔魔法屋"><meta property="og:description" content="之前我是想参考这个教程来部署:https:&#x2F;&#x2F;digu.plus&#x2F;post&#x2F;8034746f42b3495fbb19926e3fb8ec4f&#x2F;然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><meta property="og:locale" content="zh_CN"><meta property="og:image" content="https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"><meta property="article:published_time" content="2023-07-14T08:48:13.000Z"><meta property="article:modified_time" content="2024-11-09T08:45:10.468Z"><meta property="article:author" content="王九弦SZ·Ninty"><meta property="article:tag" content="站点折腾"><meta property="article:tag" content="自建部署"><meta name="twitter:card" content="summary"><meta name="twitter:image" content="https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"><style>#safearea{display:none}.fa-duotone.red,.fa-light.red,.fa-regular.red,.fa-solid.red,.fa-thin.red,.fa.red,.fad.red,.fal.red,.far.red,.fas.red,.iziToast>.iziToast-body .iziToast-icon.red{color:#f44336}.fa-duotone.pink,.fa-light.pink,.fa-regular.pink,.fa-solid.pink,.fa-thin.pink,.fa.pink,.fad.pink,.fal.pink,.far.pink,.fas.pink,.iziToast>.iziToast-body .iziToast-icon.pink{color:#e91e63}.fa-duotone.purple,.fa-light.purple,.fa-regular.purple,.fa-solid.purple,.fa-thin.purple,.fa.purple,.fad.purple,.fal.purple,.far.purple,.fas.purple,.iziToast>.iziToast-body .iziToast-icon.purple{color:#9c27b0}.fa-duotone.indigo,.fa-light.indigo,.fa-regular.indigo,.fa-solid.indigo,.fa-thin.indigo,.fa.indigo,.fad.indigo,.fal.indigo,.far.indigo,.fas.indigo,.iziToast>.iziToast-body .iziToast-icon.indigo{color:#3f51b5}.fa-duotone.light-blue,.fa-light.light-blue,.fa-regular.light-blue,.fa-solid.light-blue,.fa-thin.light-blue,.fa.light-blue,.fad.light-blue,.fal.light-blue,.far.light-blue,.fas.light-blue,.iziToast>.iziToast-body .iziToast-icon.light-blue{color:#4ba7ee}.fa-duotone.deep-blue,.fa-light.deep-blue,.fa-regular.deep-blue,.fa-solid.deep-blue,.fa-thin.deep-blue,.fa.deep-blue,.fad.deep-blue,.fal.deep-blue,.far.deep-blue,.fas.deep-blue,.iziToast>.iziToast-body .iziToast-icon.deep-blue{color:#3367d6}.fa-duotone.teal,.fa-light.teal,.fa-regular.teal,.fa-solid.teal,.fa-thin.teal,.fa.teal,.fad.teal,.fal.teal,.far.teal,.fas.teal,.iziToast>.iziToast-body .iziToast-icon.teal{color:#009688}.fa-duotone.light-green,.fa-light.light-green,.fa-regular.light-green,.fa-solid.light-green,.fa-thin.light-green,.fa.light-green,.fad.light-green,.fal.light-green,.far.light-green,.fas.light-green,.iziToast>.iziToast-body .iziToast-icon.light-green{color:#8bc34a}.fa-duotone.orange,.fa-light.orange,.fa-regular.orange,.fa-solid.orange,.fa-thin.orange,.fa.orange,.fad.orange,.fal.orange,.far.orange,.fas.orange,.iziToast>.iziToast-body .iziToast-icon.orange{color:#ff9800}.fa-duotone.deep-orange,.fa-light.deep-orange,.fa-regular.deep-orange,.fa-solid.deep-orange,.fa-thin.deep-orange,.fa.deep-orange,.fad.deep-orange,.fal.deep-orange,.far.deep-orange,.fas.deep-orange,.iziToast>.iziToast-body .iziToast-icon.deep-orange{color:#ff5722}.fa-duotone.brown,.fa-light.brown,.fa-regular.brown,.fa-solid.brown,.fa-thin.brown,.fa.brown,.fad.brown,.fal.brown,.far.brown,.fas.brown,.iziToast>.iziToast-body .iziToast-icon.brown{color:#795548}.fa-duotone.blue-grey,.fa-light.blue-grey,.fa-regular.blue-grey,.fa-solid.blue-grey,.fa-thin.blue-grey,.fa.blue-grey,.fad.blue-grey,.fal.blue-grey,.far.blue-grey,.fas.blue-grey,.iziToast>.iziToast-body .iziToast-icon.blue-grey{color:#607d8b}.fa-duotone.yellow,.fa-light.yellow,.fa-regular.yellow,.fa-solid.yellow,.fa-thin.yellow,.fa.yellow,.fad.yellow,.fal.yellow,.far.yellow,.fas.yellow,.iziToast>.iziToast-body .iziToast-icon.yellow{color:#fcec60}.fa-duotone.TURQUOISE,.fa-light.TURQUOISE,.fa-regular.TURQUOISE,.fa-solid.TURQUOISE,.fa-thin.TURQUOISE,.fa.TURQUOISE,.fad.TURQUOISE,.fal.TURQUOISE,.far.TURQUOISE,.fas.TURQUOISE,.iziToast>.iziToast-body .iziToast-icon.TURQUOISE{color:#1abc9c}.fa-duotone.EMERALD,.fa-light.EMERALD,.fa-regular.EMERALD,.fa-solid.EMERALD,.fa-thin.EMERALD,.fa.EMERALD,.fad.EMERALD,.fal.EMERALD,.far.EMERALD,.fas.EMERALD,.iziToast>.iziToast-body .iziToast-icon.EMERALD{color:#2ecc71}.fa-duotone.PETERRIVE,.fa-light.PETERRIVE,.fa-regular.PETERRIVE,.fa-solid.PETERRIVE,.fa-thin.PETERRIVE,.fa.PETERRIVE,.fad.PETERRIVE,.fal.PETERRIVE,.far.PETERRIVE,.fas.PETERRIVE,.iziToast>.iziToast-body .iziToast-icon.PETERRIVE{color:#3498db}.fa-duotone.AMETHYST,.fa-light.AMETHYST,.fa-regular.AMETHYST,.fa-solid.AMETHYST,.fa-thin.AMETHYST,.fa.AMETHYST,.fad.AMETHYST,.fal.AMETHYST,.far.AMETHYST,.fas.AMETHYST,.iziToast>.iziToast-body .iziToast-icon.AMETHYST{color:#9b59b6}.fa-duotone.WETASPHALT,.fa-light.WETASPHALT,.fa-regular.WETASPHALT,.fa-solid.WETASPHALT,.fa-thin.WETASPHALT,.fa.WETASPHALT,.fad.WETASPHALT,.fal.WETASPHALT,.far.WETASPHALT,.fas.WETASPHALT,.iziToast>.iziToast-body .iziToast-icon.WETASPHALT{color:#34495e}.fa-duotone.GREENSEA,.fa-light.GREENSEA,.fa-regular.GREENSEA,.fa-solid.GREENSEA,.fa-thin.GREENSEA,.fa.GREENSEA,.fad.GREENSEA,.fal.GREENSEA,.far.GREENSEA,.fas.GREENSEA,.iziToast>.iziToast-body .iziToast-icon.GREENSEA{color:#16a085}.fa-duotone.NEPHRITIS,.fa-light.NEPHRITIS,.fa-regular.NEPHRITIS,.fa-solid.NEPHRITIS,.fa-thin.NEPHRITIS,.fa.NEPHRITIS,.fad.NEPHRITIS,.fal.NEPHRITIS,.far.NEPHRITIS,.fas.NEPHRITIS,.iziToast>.iziToast-body .iziToast-icon.NEPHRITIS{color:#27ae60}.fa-duotone.BELIZEHOLE,.fa-light.BELIZEHOLE,.fa-regular.BELIZEHOLE,.fa-solid.BELIZEHOLE,.fa-thin.BELIZEHOLE,.fa.BELIZEHOLE,.fad.BELIZEHOLE,.fal.BELIZEHOLE,.far.BELIZEHOLE,.fas.BELIZEHOLE,.iziToast>.iziToast-body .iziToast-icon.BELIZEHOLE{color:#2980b9}.fa-duotone.WISTERIA,.fa-light.WISTERIA,.fa-regular.WISTERIA,.fa-solid.WISTERIA,.fa-thin.WISTERIA,.fa.WISTERIA,.fad.WISTERIA,.fal.WISTERIA,.far.WISTERIA,.fas.WISTERIA,.iziToast>.iziToast-body .iziToast-icon.WISTERIA{color:#8e44ad}.fa-duotone.MIDNIGHTBLUE,.fa-light.MIDNIGHTBLUE,.fa-regular.MIDNIGHTBLUE,.fa-solid.MIDNIGHTBLUE,.fa-thin.MIDNIGHTBLUE,.fa.MIDNIGHTBLUE,.fad.MIDNIGHTBLUE,.fal.MIDNIGHTBLUE,.far.MIDNIGHTBLUE,.fas.MIDNIGHTBLUE,.iziToast>.iziToast-body .iziToast-icon.MIDNIGHTBLUE{color:#2c3e50}.fa-duotone.SUNFLOWER,.fa-light.SUNFLOWER,.fa-regular.SUNFLOWER,.fa-solid.SUNFLOWER,.fa-thin.SUNFLOWER,.fa.SUNFLOWER,.fad.SUNFLOWER,.fal.SUNFLOWER,.far.SUNFLOWER,.fas.SUNFLOWER,.iziToast>.iziToast-body .iziToast-icon.SUNFLOWER{color:#f1c40f}.fa-duotone.CARROT,.fa-light.CARROT,.fa-regular.CARROT,.fa-solid.CARROT,.fa-thin.CARROT,.fa.CARROT,.fad.CARROT,.fal.CARROT,.far.CARROT,.fas.CARROT,.iziToast>.iziToast-body .iziToast-icon.CARROT{color:#e67e22}.fa-duotone.ALIZARIN,.fa-light.ALIZARIN,.fa-regular.ALIZARIN,.fa-solid.ALIZARIN,.fa-thin.ALIZARIN,.fa.ALIZARIN,.fad.ALIZARIN,.fal.ALIZARIN,.far.ALIZARIN,.fas.ALIZARIN,.iziToast>.iziToast-body .iziToast-icon.ALIZARIN{color:#e74c3c}.fa-duotone.CLOUDS,.fa-light.CLOUDS,.fa-regular.CLOUDS,.fa-solid.CLOUDS,.fa-thin.CLOUDS,.fa.CLOUDS,.fad.CLOUDS,.fal.CLOUDS,.far.CLOUDS,.fas.CLOUDS,.iziToast>.iziToast-body .iziToast-icon.CLOUDS{color:#ecf0f1}.fa-duotone.CONCRETE,.fa-light.CONCRETE,.fa-regular.CONCRETE,.fa-solid.CONCRETE,.fa-thin.CONCRETE,.fa.CONCRETE,.fad.CONCRETE,.fal.CONCRETE,.far.CONCRETE,.fas.CONCRETE,.iziToast>.iziToast-body .iziToast-icon.CONCRETE{color:#95a5a6}.fa-duotone.ORANGE,.fa-light.ORANGE,.fa-regular.ORANGE,.fa-solid.ORANGE,.fa-thin.ORANGE,.fa.ORANGE,.fad.ORANGE,.fal.ORANGE,.far.ORANGE,.fas.ORANGE,.iziToast>.iziToast-body .iziToast-icon.ORANGE{color:#f39c12}.fa-duotone.PUMPKIN,.fa-light.PUMPKIN,.fa-regular.PUMPKIN,.fa-solid.PUMPKIN,.fa-thin.PUMPKIN,.fa.PUMPKIN,.fad.PUMPKIN,.fal.PUMPKIN,.far.PUMPKIN,.fas.PUMPKIN,.iziToast>.iziToast-body .iziToast-icon.PUMPKIN{color:#d35400}.fa-duotone.POMEGRANATE,.fa-light.POMEGRANATE,.fa-regular.POMEGRANATE,.fa-solid.POMEGRANATE,.fa-thin.POMEGRANATE,.fa.POMEGRANATE,.fad.POMEGRANATE,.fal.POMEGRANATE,.far.POMEGRANATE,.fas.POMEGRANATE,.iziToast>.iziToast-body .iziToast-icon.POMEGRANATE{color:#c0392b}.fa-duotone.SILVER,.fa-light.SILVER,.fa-regular.SILVER,.fa-solid.SILVER,.fa-thin.SILVER,.fa.SILVER,.fad.SILVER,.fal.SILVER,.far.SILVER,.fas.SILVER,.iziToast>.iziToast-body .iziToast-icon.SILVER{color:#bdc3c7}.fa-duotone.ASBESTOS,.fa-light.ASBESTOS,.fa-regular.ASBESTOS,.fa-solid.ASBESTOS,.fa-thin.ASBESTOS,.fa.ASBESTOS,.fad.ASBESTOS,.fal.ASBESTOS,.far.ASBESTOS,.fas.ASBESTOS,.iziToast>.iziToast-body .iziToast-icon.ASBESTOS{color:#7f8c8d}.article-title,.md .footer .header,.meta-v3,.new-meta-box,.prev-next,.widget header,details summary{font-family:"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Helvetica,monospace}:root{--color-site-body:#f4f4f4;--color-site-bg:#f4f4f4;--color-site-inner:#fff;--color-site-footer:#666;--color-card:#fff;--color-text:#444;--color-block:#f4f4f4;--color-inlinecode:#444;--color-codeblock:#f4f4f4;--color-h1:#3a3a3a;--color-h2:#3a3a3a;--color-h3:#333;--color-h4:#444;--color-h5:#555;--color-h6:#666;--color-p:#444;--color-list:#666;--color-list-hl:#30ad91;--color-meta:#888;--color-read-bkg:#e0d8c8;--color-read-post:#f8f1e2;--color-copyright-bkg:#f5f5f5;--color-white-png:#fff;--color-img-error:#f5f5f5}*{box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;outline:0;margin:0;padding:0}::-webkit-scrollbar{height:4px;width:4px}::-webkit-scrollbar-track-piece{background:0 0}::-webkit-scrollbar-thumb{background:#3dd9b6;cursor:pointer;border-radius:2px;-webkit-border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#ff5722}html{color:var(--color-text);width:100%;height:100%;font-family:UbuntuMono,"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Menlo,Monaco,monospace,sans-serif;font-size:16px}html>::-webkit-scrollbar{height:4px;width:4px}html>::-webkit-scrollbar-track-piece{background:0 0}html>::-webkit-scrollbar-thumb{background:#3dd9b6;cursor:pointer;border-radius:2px;-webkit-border-radius:2px}html>::-webkit-scrollbar-thumb:hover{background:#ff5722}body{background-color:var(--color-site-body);text-rendering:optimizelegibility;-webkit-tap-highlight-color:transparent;line-height:1.6;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body.modal-active{overflow:hidden}@media screen and (max-width:680px){body.modal-active{position:fixed;top:0;right:0;bottom:0;left:0}}a{color:#2092ec;cursor:pointer;text-decoration:none;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}a:active,a:hover{outline:0}ol,ul{padding-left:0}ol li,ul li{list-style:none}header{display:block}img{border:0;background:0 0;max-width:100%}svg:not(:root){overflow:hidden}hr{-moz-box-sizing:content-box;box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;height:0;border:0;border-radius:1px;-webkit-border-radius:1px;border-bottom:1px solid rgba(68,68,68,.1)}article hr{background-image:none;height:2em;border:none;margin:1em 0 1em;text-align:center}article hr:after{content:"···";letter-spacing:2em;padding-left:2em;font-weight:700}button,input{color:inherit;font:inherit;margin:0}button{overflow:visible;text-transform:none;-webkit-appearance:button;cursor:pointer}@supports (backdrop-filter:blur(20px)){.blur{background:rgba(255,255,255,.9)!important;backdrop-filter:saturate(200%) blur(20px)}}@supports (backdrop-filter:blur(20px)){.blur#comments{backdrop-filter:unset}}.shadow{box-shadow:0 1px 2px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.1)}.shadow.floatable{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.shadow.floatable:hover{box-shadow:0 2px 4px 0 rgba(0,0,0,.1),0 4px 8px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.1),0 4px 8px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.1)}#l_cover{min-height:64px}.cover-wrapper{top:0;left:0;max-width:100%;height:100vh;display:flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-khtml-flex-wrap:nowrap;-moz-flex-wrap:nowrap;-o-flex-wrap:nowrap;-ms-flex-wrap:nowrap;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:vertical;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;align-items:center;align-self:center;align-content:center;color:var(--color-site-inner);padding:0 16px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;position:relative;overflow:hidden;margin-bottom:-100px}.cover-wrapper .cover-bg{position:absolute;width:100%;height:100%;background-position:center;background-size:cover;-webkit-background-size:cover;-moz-background-size:cover}.cover-wrapper .cover-bg.lazyload:not(.loaded){opacity:0;-webkit-opacity:0;-moz-opacity:0}.cover-wrapper .cover-bg.lazyload.loaded{animation-delay:0s;animation-duration:.5s;animation-fill-mode:forwards;animation-timing-function:ease-out;animation-name:fadeIn}@-moz-keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-webkit-keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-o-keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@keyframes fadeIn{0%{opacity:0;-webkit-opacity:0;-moz-opacity:0;filter:blur(12px);transform:scale(1.02);-webkit-transform:scale(1.02);-khtml-transform:scale(1.02);-moz-transform:scale(1.02);-o-transform:scale(1.02);-ms-transform:scale(1.02)}100%{opacity:1;-webkit-opacity:1;-moz-opacity:1}}.cover-wrapper .cover-body{z-index:1;position:relative;width:100%;height:100%}.cover-wrapper#full{height:calc(100vh + 100px);padding-bottom:100px}.cover-wrapper#half{max-height:640px;min-height:460px;height:calc(36vh - 64px + 200px)}.cover-wrapper #scroll-down{width:100%;height:64px;position:absolute;bottom:100px;text-align:center;cursor:pointer}.cover-wrapper #scroll-down .scroll-down-effects{color:#fff;font-size:24px;line-height:64px;position:absolute;width:24px;left:calc(50% - 12px);text-shadow:0 1px 2px rgba(0,0,0,.1);animation:scroll-down-effect 1.5s infinite;-webkit-animation:scroll-down-effect 1.5s infinite;-khtml-animation:scroll-down-effect 1.5s infinite;-moz-animation:scroll-down-effect 1.5s infinite;-o-animation:scroll-down-effect 1.5s infinite;-ms-animation:scroll-down-effect 1.5s infinite}@-moz-keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-webkit-keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}@-o-keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}@keyframes scroll-down-effect{0%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}50%{top:-16px;opacity:.4;-webkit-opacity:0.4;-moz-opacity:0.4}100%{top:0;opacity:1;-webkit-opacity:1;-moz-opacity:1}}.cover-wrapper .cover-body{margin-top:64px;margin-bottom:120px}.cover-wrapper .cover-body,.cover-wrapper .cover-body .bottom,.cover-wrapper .cover-body .top{display:flex;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:vertical;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;align-items:center;justify-content:center;-webkit-justify-content:center;-khtml-justify-content:center;-moz-justify-content:center;-o-justify-content:center;-ms-justify-content:center;max-width:100%}.cover-wrapper .cover-body .bottom{margin-top:32px}.cover-wrapper .cover-body .title{font-family:"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Helvetica,monospace;font-size:3.125rem;text-shadow:0 1px 2px rgba(0,0,0,.1);text-align:center}.cover-wrapper .cover-body .subtitle{font-size:16px}.cover-wrapper .cover-body .logo{max-height:120px;max-width:calc(100% - 4 * 16px)}@media screen and (min-height:1024px){.cover-wrapper .cover-body .title{font-size:3rem}.cover-wrapper .cover-body .subtitle{font-size:.875rem}.cover-wrapper .cover-body .logo{max-height:150px}}.cover-wrapper .cover-body .m_search{position:relative;max-width:calc(100% - 16px);width:320px;vertical-align:middle}.cover-wrapper .cover-body .m_search .form{position:relative;display:block;width:100%}.cover-wrapper .cover-body .m_search .icon,.cover-wrapper .cover-body .m_search .input{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.cover-wrapper .cover-body .m_search .icon{position:absolute;display:block;line-height:2.5rem;width:32px;top:0;left:5px;color:rgba(68,68,68,.75)}.cover-wrapper .cover-body .m_search .input{display:block;height:2.5rem;width:100%;box-shadow:none;-webkit-box-shadow:none;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;font-size:.875rem;-webkit-appearance:none;padding-left:36px;border-radius:1.4rem;-webkit-border-radius:1.4rem;background:rgba(255,255,255,.6);backdrop-filter:blur(10px);border:none;color:var(--color-text)}@media screen and (max-width:500px){.cover-wrapper .cover-body .m_search .input{padding-left:36px}}.cover-wrapper .cover-body .m_search .input:hover{background:rgba(255,255,255,.8)}.cover-wrapper .cover-body .m_search .input:focus{background:#fff}.cover-wrapper .list-h{display:flex;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:horizontal;-moz-box-orient:horizontal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;flex-wrap:wrap;-webkit-flex-wrap:wrap;-khtml-flex-wrap:wrap;-moz-flex-wrap:wrap;-o-flex-wrap:wrap;-ms-flex-wrap:wrap;align-items:stretch;border-radius:4px;-webkit-border-radius:4px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.cover-wrapper .list-h a{-webkit-box-flex:1;-moz-box-flex:1;-webkit-flex:1 0;-ms-flex:1 0;flex:1 0;display:flex;font-weight:600}.cover-wrapper .list-h a img{display:block;border-radius:2px;-webkit-border-radius:2px;margin:4px;min-width:40px;max-width:44px}@media screen and (max-width:768px){.cover-wrapper .list-h a img{min-width:36px;max-width:40px}}@media screen and (max-width:500px){.cover-wrapper .list-h a img{margin:2px 4px;min-width:32px;max-width:36px}}@media screen and (max-width:375px){.cover-wrapper .list-h a img{min-width:28px;max-width:32px}}.cover-wrapper{max-width:100%}.cover-wrapper.search .bottom .menu{margin-top:8px}.cover-wrapper.search .bottom .menu .list-h a{white-space:nowrap;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-box-orient:horizontal;-moz-box-orient:horizontal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;align-items:baseline;padding:2px;margin:4px;color:var(--color-site-inner);opacity:.75;-webkit-opacity:0.75;-moz-opacity:0.75;text-shadow:0 1px 2px rgba(0,0,0,.05);border-bottom:2px solid transparent}.cover-wrapper.search .bottom .menu .list-h a i{margin-right:4px}.cover-wrapper.search .bottom .menu .list-h a p{font-size:.9375rem}.cover-wrapper.search .bottom .menu .list-h a.active,.cover-wrapper.search .bottom .menu .list-h a:active,.cover-wrapper.search .bottom .menu .list-h a:hover{opacity:1;-webkit-opacity:1;-moz-opacity:1;border-bottom:2px solid var(--color-site-inner)}@font-face{font-family:UbuntuMono;src:url("https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/UbuntuMono/UbuntuMono-Regular.ttf");font-weight:'normal';font-style:'normal';font-display:swap}@font-face{font-family:'Varela Round';src:url("https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/fonts/VarelaRound/VarelaRound-Regular.ttf");font-weight:'normal';font-style:'normal';font-display:swap}.l_header{position:fixed;z-index:1000;top:0;width:100%;height:64px;background:var(--color-card);box-shadow:0 1px 2px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.1)}.l_header.auto{transition:opacity .4s ease;-webkit-transition:opacity .4s ease;-khtml-transition:opacity 0.4s ease;-moz-transition:opacity .4s ease;-o-transition:opacity .4s ease;-ms-transition:opacity .4s ease;visibility:hidden}.l_header.auto.showed{opacity:1!important;-webkit-opacity:1!important;-moz-opacity:1!important;visibility:visible}.l_header .container{margin-left:16px;margin-right:16px}.l_header #wrapper{height:100%;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.l_header #wrapper .nav-main,.l_header #wrapper .nav-sub{display:flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-khtml-flex-wrap:nowrap;-moz-flex-wrap:nowrap;-o-flex-wrap:nowrap;-ms-flex-wrap:nowrap;justify-content:space-between;-webkit-justify-content:space-between;-khtml-justify-content:space-between;-moz-justify-content:space-between;-o-justify-content:space-between;-ms-justify-content:space-between;align-items:center}.l_header #wrapper .nav-main{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.l_header #wrapper.sub .nav-main{transform:translateY(-64px);-webkit-transform:translateY(-64px);-khtml-transform:translateY(-64px);-moz-transform:translateY(-64px);-o-transform:translateY(-64px);-ms-transform:translateY(-64px)}.l_header #wrapper .nav-sub{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;opacity:0;-webkit-opacity:0;-moz-opacity:0;height:64px;width:calc(100% - 2 * 16px);position:absolute}.l_header #wrapper .nav-sub ::-webkit-scrollbar{display:none}@media screen and (min-width:2048px){.l_header #wrapper .nav-sub{max-width:55vw;margin:auto}}.l_header #wrapper.sub .nav-sub{opacity:1;-webkit-opacity:1;-moz-opacity:1}.l_header #wrapper .title{position:relative;color:var(--color-text);padding-left:24px;max-height:64px}.l_header #wrapper .nav-main .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;line-height:64px;padding:0 8px;font-size:1.25rem;font-family:"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Helvetica,monospace}.l_header #wrapper .nav-main .title img{height:64px;padding:8px}.l_header .nav-sub{max-width:1080px;margin:auto}.l_header .nav-sub .title{font-weight:700;font-family:UbuntuMono,"Varela Round","PingFang SC","Microsoft YaHei",Helvetica,Arial,Menlo,Monaco,monospace,sans-serif;line-height:1.2;max-height:64px;white-space:normal;flex-shrink:1}.l_header .switcher{display:none;line-height:64px;align-items:center}.l_header .switcher .s-toc{display:none}@media screen and (max-width:768px){.l_header .switcher .s-toc{display:flex}}.l_header .switcher>li{height:48px;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;margin:2px}@media screen and (max-width:500px){.l_header .switcher>li{margin:0 1px;height:48px}}.l_header .switcher>li>a{display:flex;justify-content:center;-webkit-justify-content:center;-khtml-justify-content:center;-moz-justify-content:center;-o-justify-content:center;-ms-justify-content:center;align-items:center;width:48px;height:48px;padding:.85em 1.1em;border-radius:100px;-webkit-border-radius:100px;border:none;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;color:#3dd9b6}.l_header .switcher>li>a:hover{border:none}.l_header .switcher>li>a.active,.l_header .switcher>li>a:active{border:none;background:var(--color-site-bg)}@media screen and (max-width:500px){.l_header .switcher>li>a{width:36px;height:48px}}.l_header .nav-sub .switcher{display:flex}.l_header .m_search{display:flex;height:64px;width:240px;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}@media screen and (max-width:1024px){.l_header .m_search{width:44px;min-width:44px}.l_header .m_search input::placeholder{opacity:0;-webkit-opacity:0;-moz-opacity:0}.l_header .m_search:hover{width:240px}.l_header .m_search:hover input::placeholder{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@media screen and (min-width:500px){.l_header .m_search:hover .input{width:100%}.l_header .m_search:hover .input::placeholder{opacity:1;-webkit-opacity:1;-moz-opacity:1}}@media screen and (max-width:500px){.l_header .m_search{min-width:0}.l_header .m_search input::placeholder{opacity:1;-webkit-opacity:1;-moz-opacity:1}}.l_header .m_search .form{position:relative;display:flex;width:100%;align-items:center}.l_header .m_search .icon{position:absolute;width:36px;left:5px;color:var(--color-meta)}@media screen and (max-width:500px){.l_header .m_search .icon{display:none}}.l_header .m_search .input{display:block;padding-top:8px;padding-bottom:8px;line-height:1.3;width:100%;color:var(--color-text);background:#fafafa;box-shadow:none;-webkit-box-shadow:none;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;padding-left:40px;font-size:.875rem;border-radius:8px;-webkit-border-radius:8px;border:none;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}@media screen and (min-width:500px){.l_header .m_search .input:focus{box-shadow:0 4px 8px 0 rgba(0,0,0,.1);-webkit-box-shadow:0 4px 8px 0 rgba(0,0,0,.1)}}@media screen and (max-width:500px){.l_header .m_search .input{background:var(--color-block);padding-left:8px;border:none}.l_header .m_search .input:focus,.l_header .m_search .input:hover{border:none}}@media (max-width:500px){.l_header .m_search{left:0;width:0;overflow:hidden;position:absolute;background:#fff;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.l_header .m_search .input{border-radius:32px;-webkit-border-radius:32px;margin-left:16px;padding-left:16px}.l_header.z_search-open .m_search{width:100%}.l_header.z_search-open .m_search .input{width:calc(100% - 120px)}}ul.list-v li:hover>ul.list-v,ul.m-pc li:hover>ul.list-v{display:block}ul.nav-list-h{display:flex;align-items:stretch}ul.nav-list-h>li{position:relative;justify-content:center;-webkit-justify-content:center;-khtml-justify-content:center;-moz-justify-content:center;-o-justify-content:center;-ms-justify-content:center;height:100%;line-height:2.4;border-radius:4px;-webkit-border-radius:4px}ul.nav-list-h>li>a{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ul.nav-list-h>li>a span{font-weight:600}ul.list-v{z-index:1;display:none;position:absolute;background:var(--color-card);box-shadow:0 2px 4px 0 rgba(0,0,0,.08),0 4px 8px 0 rgba(0,0,0,.08),0 8px 16px 0 rgba(0,0,0,.08);-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.08),0 4px 8px 0 rgba(0,0,0,.08),0 8px 16px 0 rgba(0,0,0,.08);margin-top:-6px;border-radius:4px;-webkit-border-radius:4px;padding:8px 0}ul.list-v.show{display:block}ul.list-v hr{margin-top:8px;margin-bottom:8px}ul.list-v>li{white-space:nowrap;word-break:keep-all}ul.list-v>li.header{font-size:.78125rem;font-weight:700;line-height:2em;color:var(--color-meta);margin:8px 16px 4px}ul.list-v>li.header i{margin-right:8px}ul.list-v>li ul{margin-left:0;display:none;margin-top:-40px}ul.list-v .aplayer-container{min-height:64px;padding:6px 16px}ul.list-v>li>a{transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease;display:block;color:var(--color-list);font-size:.875rem;line-height:36px;padding:0 20px 0 16px;text-overflow:ellipsis;margin:0 4px;border-radius:4px;-webkit-border-radius:4px}@media screen and (max-width:1024px){ul.list-v>li>a{line-height:40px}}ul.list-v>li>a>i{margin-right:8px}ul.list-v>li>a.active,ul.list-v>li>a:active{color:var(--color-list-hl)}ul.list-v>li>a:hover{color:var(--color-list-hl);background:var(--color-site-bg)}.l_header .menu>ul>li>a{display:block;padding:0 8px;display:flex}.l_header .menu>ul>li>a .icon{width:16px;margin-right:6px}.l_header .menu>ul>li>a .icon i{display:inline-block}.l_header .menu>ul>li>ul .icon{width:16px;margin-right:2px}.l_header .menu>ul>li>ul .icon i{display:inline-block}.l_header ul.nav-list-h>li{color:var(--color-list);line-height:64px}.l_header ul.nav-list-h>li>a{max-height:64px;overflow:hidden;color:inherit}.l_header ul.nav-list-h>li>a.active span,.l_header ul.nav-list-h>li>a:active span{color:#3dd9b6}.l_header ul.nav-list-h>li:hover>a{color:var(--color-list-hl)}.l_header ul.nav-list-h>li i.music{animation:rotate-effect 1.5s linear infinite;-webkit-animation:rotate-effect 1.5s linear infinite;-khtml-animation:rotate-effect 1.5s linear infinite;-moz-animation:rotate-effect 1.5s linear infinite;-o-animation:rotate-effect 1.5s linear infinite;-ms-animation:rotate-effect 1.5s linear infinite}@-moz-keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}@-webkit-keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}@-o-keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}@keyframes rotate-effect{0%{transform:rotate(0);-webkit-transform:rotate(0);-khtml-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0)}25%{transform:rotate(90deg);-webkit-transform:rotate(90deg);-khtml-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg)}50%{transform:rotate(180deg);-webkit-transform:rotate(180deg);-khtml-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg)}75%{transform:rotate(270deg);-webkit-transform:rotate(270deg);-khtml-transform:rotate(270deg);-moz-transform:rotate(270deg);-o-transform:rotate(270deg);-ms-transform:rotate(270deg)}100%{transform:rotate(360deg);-webkit-transform:rotate(360deg);-khtml-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg)}}.menu-phone li ul.list-v{right:calc(100% - .5 * 16px)}.menu-phone li ul.list-v ul{right:calc(100% - .5 * 16px)}#wrapper{max-width:1080px;margin:auto}@media screen and (min-width:2048px){#wrapper{max-width:55vw}}#wrapper .menu{-webkit-box-flex:1;-moz-box-flex:1;-webkit-flex:1 1;-ms-flex:1 1;flex:1 1;margin:0 16px 0 0}#wrapper .menu .list-v ul{left:calc(100% - .5 * 16px)}.menu-phone{display:none;margin-top:16px;right:8px;transition:all .28s ease;-webkit-transition:all .28s ease;-khtml-transition:all 0.28s ease;-moz-transition:all .28s ease;-o-transition:all .28s ease;-ms-transition:all .28s ease}.menu-phone ul{right:calc(100% - .5 * 16px)}@media screen and (max-width:500px){.menu-phone{display:block}}.l_header{max-width:65vw;left:calc((100% - 65vw) * .5);border-bottom-left-radius:8px;border-bottom-right-radius:8px}@media screen and (max-width:2048px){.l_header{max-width:1112px;left:calc((100% - 1112px) * .5)}}@media screen and (max-width:1112px){.l_header{left:0;border-radius:0;-webkit-border-radius:0;max-width:100%}}@media screen and (max-width:500px){.l_header .container{margin-left:0;margin-right:0}.l_header #wrapper .nav-main .title{padding-left:16px;padding-right:16px}.l_header #wrapper .nav-sub{width:100%}.l_header #wrapper .nav-sub .title{overflow-y:scroll;margin-top:2px;padding:8px 16px}.l_header #wrapper .switcher{display:flex;margin-right:8px;height:64px}.l_header .menu{display:none}}@media screen and (max-width:500px){.list-v li{max-width:270px}}@media screen and (min-width:768px){#l_cover,#l_header{display:none}}#u-search{display:none;position:fixed;top:0;left:0;width:100%;height:100%;padding:60px 20px;z-index:1001}@media screen and (max-width:680px){#u-search{padding:0}}</style><link rel="stylesheet" href="/css/style.css" media="print" onload='this.media="all",this.onload=null'><noscript><link rel="stylesheet" href="/css/style.css"></noscript><script>document.addEventListener("error",(function(t){const a=t.target,e=t.target.parentElement,r=e.classList.toString(),s=e.parentElement.classList.toString();"img"===a.tagName.toLowerCase()&&(a.classList.add("fix-cursor-default","error"),"fancybox"===r&&"fancybox"===s?(e.parentElement.classList.add("hideFancybox"),e.parentElement.classList.remove("fancybox"),e.classList.remove("fancybox")):"img-bg"===r&&"img-wrap"===s?e.parentElement.classList.add("hideFancybox"):"author"===r?e.parentElement.classList.add("fix-author-imgError"):-1!=r.indexOf("tk-avatar")&&e.parentElement.classList.add("fix-avatar-imgError"))}),!0)</script><script>window.MSInputMethodContext&&document.documentMode&&document.write('<style>html{overflow-x: hidden !important;overflow-y: hidden !important;}.kill-ie{text-align:center;height: 100%;margin-top: 15%;margin-bottom: 5500%;}.kill-t{font-size: 2rem;}.kill-c{font-size: 1.2rem;}#l_header,#l_body{display: none;}</style><div class="kill-ie"><span class="kill-t"><b>抱歉,您的浏览器无法访问本站</b></span><br/><span class="kill-c">微软已经于2016年终止了对 Internet Explorer (IE) 10 及更早版本的支持,<br/>继续使用存在极大的安全隐患,请使用当代主流的浏览器进行访问。</span><br/><a target="_blank" rel="noopener" href="https://blogs.windows.com/windowsexperience/2021/05/19/the-future-of-internet-explorer-on-windows-10-is-in-microsoft-edge/"><strong>了解详情 ></strong></a></div>')</script><noscript><style>html{overflow-x:hidden!important;overflow-y:hidden!important}.kill-noscript{text-align:center;height:100%;margin-top:15%;margin-bottom:5500%}.kill-t{font-size:2rem}.kill-c{font-size:1.2rem}#l_body,#l_header{display:none}</style><div class="kill-noscript"> <span class="kill-t"><b>抱歉,您的浏览器无法访问本站</b></span><br> <span class="kill-c">本页面需要浏览器支持(启用)JavaScript</span><br> <a target="_blank" rel="noopener" href="https://www.baidu.com/s?wd=启用JavaScript"><strong>了解详情 ></strong></a></div></noscript><script>function volantisEventListener(e,t,n){this.type=e,this.f=t,this.ele=n}function volantisDom(e){return e||(e=document.createElement("div")),this.ele=e,this.ele.find=e=>{let t=this.ele.querySelector(e);if(t)return new volantisDom(t)},this.ele.hasClass=e=>this.ele.className.match(new RegExp("(\\s|^)"+e+"(\\s|$)")),this.ele.addClass=e=>(this.ele.classList.add(e),this.ele),this.ele.removeClass=e=>(this.ele.classList.remove(e),this.ele),this.ele.toggleClass=e=>(this.ele.hasClass(e)?this.ele.removeClass(e):this.ele.addClass(e),this.ele),this.ele.on=(e,t,n=1)=>(this.ele.addEventListener(e,t,!1),n&&volantis.EventListener.list.push(new volantisEventListener(e,t,this.ele)),this.ele),this.ele.click=(e,t)=>(this.ele.on("click",e,t),this.ele),this.ele.scroll=(e,t)=>(this.ele.on("scroll",e,t),this.ele),this.ele.html=e=>(this.ele.innerHTML=e,this.ele),this.ele.hide=e=>(this.ele.style.display="none",this.ele),this.ele.show=e=>(this.ele.style.display="block",this.ele),this.ele}function RunItem(){function e(e,t){this.name=t||e.name,this.run=()=>{try{e()}catch(e){console.log(e)}}}this.list=[],this.start=()=>{for(var e=0;e<this.list.length;e++)this.list[e].run()},this.push=(t,n,s=!0)=>{let o=t;s&&(o=()=>{volantis.requestAnimationFrame(t)});var l=new e(o,n);this.list.push(l)},this.remove=e=>{for(let t=0;t<this.list.length;t++){this.list[t].name==e&&this.list.splice(t,1)}}}function errorImgAvatar(e){e.src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/avatar/round/3442075.svg",e.onerror=null}function errorImgCover(e){e.src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/cover/76b86c0226ffd.svg",e.onerror=null}window.volantis={},volantis.debug="env",volantis.dom={},volantis.EventListener={},volantis.EventListener.list=[],volantis.EventListener.remove=()=>{volantis.EventListener.list.forEach((function(e){e.ele.removeEventListener(e.type,e.f,!1)})),volantis.EventListener.list=[]},volantis.dom.$=e=>e?new volantisDom(e):null,volantis.pjax={},volantis.pjax.method={complete:new RunItem,error:new RunItem,send:new RunItem},volantis.pjax=Object.assign(volantis.pjax,{push:volantis.pjax.method.complete.push,error:volantis.pjax.method.error.push,send:volantis.pjax.method.send.push}),volantis.rightmenu={},volantis.rightmenu.method={handle:new RunItem},volantis.rightmenu=Object.assign(volantis.rightmenu,{handle:volantis.rightmenu.method.handle.push}),volantis.dark={},volantis.dark.method={toggle:new RunItem},volantis.dark=Object.assign(volantis.dark,{push:volantis.dark.method.toggle.push}),volantis.js=(e,t)=>new Promise((n=>{setTimeout((function(){var s=document.getElementsByTagName("head")[0]||document.documentElement,o=document.createElement("script");if(o.setAttribute("type","text/javascript"),t)if(JSON.stringify(t))for(let e in t)"onload"==e?o[e]=()=>{t[e](),n()}:(o[e]=t[e],o.onload=n);else o.onload=()=>{t(),n()};else o.onload=n;o.setAttribute("src",e),s.appendChild(o)}))})),volantis.css=e=>new Promise((t=>{setTimeout((function(){var n=document.createElement("link");n.rel="stylesheet",n.href=e,n.onload=t,document.getElementsByTagName("head")[0].appendChild(n)}))})),volantis.import={jQuery:()=>"undefined"==typeof jQuery?volantis.js("https://jsd.cdn.storisinz.site/npm/jquery@3.6.0/dist/jquery.min.js"):new Promise((e=>{e()}))},volantis.requestAnimationFrame=e=>{window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame),window.requestAnimationFrame(e)},volantis.layoutHelper=(e,t,n)=>{function s(e,t,n){volantis.tempDiv=document.createElement("div"),volantis.tempDiv.innerHTML=t;let s=document.querySelector("#layoutHelper-"+e);s&&(n&&(s.innerHTML=""),s.append(volantis.tempDiv))}n=Object.assign({clean:!1,pjax:!0},n),s(e,t,n.clean),n.pjax&&volantis.pjax.push((()=>{s(e,t,n.clean)}),"layoutHelper-"+e)},volantis.scroll={engine:new RunItem,unengine:new RunItem},volantis.scroll=Object.assign(volantis.scroll,{push:volantis.scroll.engine.push}),volantis.scroll.getScrollTop=()=>{let e;return window.pageYOffset?e=window.pageYOffset:document.compatMode&&"BackCompat"!=document.compatMode?e=document.documentElement.scrollTop:document.body&&(e=document.body.scrollTop),e},volantis.scroll.scrollHeight=function(){return Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},volantis.scroll.offsetHeight=function(){return Math.max(document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},volantis.scroll.progress=function(){return volantis.scroll.getScrollTop()/(volantis.scroll.scrollHeight()-volantis.scroll.offsetHeight())},volantis.scroll.handleScrollEvents=()=>{volantis.scroll.lastScrollTop=volantis.scroll.getScrollTop(),volantis.requestAnimationFrame((function e(){const t=volantis.scroll.getScrollTop();volantis.scroll.lastScrollTop!==t?(volantis.scroll.del=t-volantis.scroll.lastScrollTop,volantis.scroll.lastScrollTop=t,volantis.scroll.unengine.list=[],volantis.scroll.engine.start()):volantis.scroll.unengine.start(),volantis.requestAnimationFrame(e)}))},volantis.scroll.handleScrollEvents(),volantis.scroll.ele=null,volantis.scroll.to=(e,t={})=>{e&&(volantis.scroll.ele=e,opt={top:e.getBoundingClientRect().top+document.documentElement.scrollTop,behavior:"smooth"},"top"in t&&(opt.top=t.top),"behavior"in t&&(opt.behavior=t.behavior),"addTop"in t&&(opt.top+=t.addTop),"observerDic"in t||(t.observerDic=100),window.scrollTo(opt),t.observer&&setTimeout((()=>{volantis.scroll.ele==e&&volantis.scroll.unengine.push((()=>{let n=e.getBoundingClientRect().top;n>=-t.observerDic&&n<=t.observerDic||volantis.scroll.to(e,t),volantis.scroll.unengine.remove("unengineObserver")}),"unengineObserver")}),1e3))},volantis.cleanContentVisibility=()=>{document.querySelector(".post-story")&&(console.log("cleanContentVisibility"),document.querySelectorAll(".post-story").forEach((e=>{e.classList.remove("post-story")})))}</script><script>volantis.GLOBAL_CONFIG={root:"/",debug:"env",default:{avatar:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/avatar/round/3442075.svg",link:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/link/8f277b4ee0ecd.svg",cover:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/cover/76b86c0226ffd.svg",image:"https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/placeholder/image/2659360.svg"},lastupdate:new Date(1731141936581),cdn:{izitoast_css:"https://jsd.cdn.storisinz.site/npm/izitoast@1.4.0/dist/css/iziToast.min.css",izitoast_js:"https://jsd.cdn.storisinz.site/npm/izitoast@1.4.0/dist/js/iziToast.min.js",fancybox_css:"https://jsd.cdn.storisinz.site/npm/@fancyapps/ui@4.0.31/dist/fancybox.css",fancybox_js:"https://jsd.cdn.storisinz.site/npm/@fancyapps/ui@4.0.31/dist/fancybox.umd.js"},sidebar:{for_page:["nextsite","nextblogger","category","tagcloud","webinfo"],for_post:["nextsite","nextblogger","category","tagcloud","toc","webinfo"],webinfo:{lastupd:{enable:!0,friendlyShow:!0},runtime:{data:"2020/01/01",unit:"天"}}},plugins:{message:{enable:!0,icon:{default:"fa-solid fa-info-circle light-blue",quection:"fa-solid fa-question-circle light-blue"},time:{default:5e3,quection:2e4},position:"topRight",transitionIn:"bounceInLeft",transitionOut:"fadeOutRight",titleColor:"var(--color-text)",messageColor:"var(--color-text)",backgroundColor:"var(--color-card)",zindex:2147483647,copyright:{enable:!0,title:"知识共享许可协议",message:"请遵守 CC BY-NC-SA 4.0 协议。",icon:"far fa-copyright light-blue"},aplayer:{enable:!0,play:"fa-solid fa-play",pause:"fa-solid fa-pause"},rightmenu:{enable:!0,notice:!0}}},search:{placeholder:"Search...",apiKey:"e9b6151de5a598167bd90d0573c3b2cbe2ca52578ff9b3a2b33f77e681f0f50b",indexName:"hexo",appId:"https://meili.search.blog.sinzmise.top"},languages:{search:{hits_empty:"找不到您查询的内容:${query}",hits_stats:"找到 ${hits} 条结果,用时 ${time} 毫秒"}}}</script><link rel="authorization_endpoint" href="https://indieauth.com/auth"><link rel="token_endpoint" href="https://tokens.indieauth.com/token"><script src="https://jsd.cdn.storisinz.site/npm/axios@1.7.7/dist/axios.js" crossorigin="anonymous" referrerpolicy="no-referrer"></script></head><body itemscope itemtype="http://schema.org/WebPage"><header itemscope itemtype="http://schema.org/WPHeader" id="l_header" class="l_header auto shadow floatable blur show showed" style="opacity:0"><div class="container"><div id="wrapper"><div class="nav-sub"><p class="title fix-header-title"></p><ul class="switcher nav-list-h m-phone" id="pjax-header-nav-list"><li><a id="s-comment" class="fa-solid fa-comments fa-fw" target="_self" title="comment"></a></li><li><a id="s-toc" class="s-toc fa-solid fa-list fa-fw" target="_self" title="toc"></a></li></ul></div><div class="nav-main"><a class="title flat-box" target="_self" href="/"><i class="fa fa-home"></i> <span>汐塔魔法屋</span></a><div class="menu navigation"><ul class="nav-list-h m-pc"><li><a class="menuitem flat-box faa-parent animated-hover" href="/categories/" title="分类" active-action="action-categories"><span class="icon"><i class="fa-solid fa-folder-open fa-fw"></i></span> <span>分类</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/tags/" title="标签" active-action="action-tags"><span class="icon"><i class="fa-solid fa-tags fa-fw"></i></span> <span>标签</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/archives/" title="归档" active-action="action-archives"><span class="icon"><i class="fa-solid fa-archive fa-fw"></i></span> <span>归档</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/link/" title="友链" active-action="action-link"><span class="icon"><i class="fa-solid fa-link fa-fw"></i></span> <span>友链</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://www.travellings.cn/go.html" title="开往" active-action="action-https:wwwtravellingscngohtml"><span class="icon"><i class="fa-solid fa-subway fa-fw"></i></span> <span>开往</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://en.blog.sinzmise.top/" title="English" active-action="action-https:enblogsinzmisetop"><span class="icon"><i class="fa fa-language fa-fw fa-fw"></i></span> <span>English</span></a></li></ul></div><div class="m_search"><form name="searchform" class="form u-search-form"><i class="icon fas fa-search fa-fw"></i> <input type="text" class="input u-search-input" placeholder="Search..."></form></div><ul class="switcher nav-list-h m-phone"><li><a class="s-search fa-solid fa-search fa-fw" target="_self" title="search"></a></li><li><a class="s-menu fa-solid fa-bars fa-fw" target="_self" title="menu"></a><ul class="menu-phone list-v navigation white-box"><li><a class="menuitem flat-box faa-parent animated-hover" href="/categories/" title="分类" active-action="action-categories"><span class="icon"><i class="fa-solid fa-folder-open fa-fw"></i></span> <span>分类</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/tags/" title="标签" active-action="action-tags"><span class="icon"><i class="fa-solid fa-tags fa-fw"></i></span> <span>标签</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/archives/" title="归档" active-action="action-archives"><span class="icon"><i class="fa-solid fa-archive fa-fw"></i></span> <span>归档</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" href="/link/" title="友链" active-action="action-link"><span class="icon"><i class="fa-solid fa-link fa-fw"></i></span> <span>友链</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://www.travellings.cn/go.html" title="开往" active-action="action-https:wwwtravellingscngohtml"><span class="icon"><i class="fa-solid fa-subway fa-fw"></i></span> <span>开往</span></a></li><li><a class="menuitem flat-box faa-parent animated-hover" target="_blank" rel="noopener" href="https://en.blog.sinzmise.top/" title="English" active-action="action-https:enblogsinzmisetop"><span class="icon"><i class="fa fa-language fa-fw fa-fw"></i></span> <span>English</span></a></li></ul></li></ul></div></div></div></header><div id="l_body"><div id="l_cover"></div><div id="safearea"><div class="body-wrapper"><div id="l_main" class=""><article itemscope itemtype="http://schema.org/Article" class="h-entry article post white-box reveal md shadow floatable blur article-type-post" id="post" itemscope itemprop="blogPost"><link itemprop="mainEntityOfPage" href="https://blog.sinzmise.top/posts/28733/"><span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization"><meta itemprop="name" content="汐塔魔法屋"></span><span hidden itemprop="post" itemscope itemtype="http://schema.org/Post"><meta itemprop="name" content="汐塔魔法屋"><meta itemprop="description" content="The Story,The Dream."></span><span hidden><meta itemprop="image" content="https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"></span><div class="article-meta" id="top"><h1 class="title allow-select p-name" itemprop="name headline"> Vercel部署Umami</h1><div class="new-meta-box"><div class="new-meta-item author p-author h-card" itemprop="author" itemscope itemtype="http://schema.org/Person"> <a itemprop="url" class="author u-url" href="https://blog.sinzmise.top/" rel="nofollow"><img itemprop="image" class="u-photo" no-lazy src="/img/avatar.png" alt="Author"><p itemprop="name" class="p-name">王九弦SZ·Ninty</p></a></div><div class="new-meta-item category"><i class="fa-solid fa-folder-open fa-fw" aria-hidden="true"></i> <a class="category-link" href="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/">站点折腾</a> <span hidden itemprop="about" itemscope itemtype="http://schema.org/Thing"><a href="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" itemprop="url"><span itemprop="name p-category">站点折腾</span></a></span></div><div class="new-meta-item date" itemprop="dateCreated datePublished"><a class="notlink"><i class="fa-solid fa-calendar-alt fa-fw" aria-hidden="true"></i><p>发布于:<time class="dataToShow dt-published" datetime="2023-07-14T08:48:13+00:00" title="2023年7月14日">2023年7月14日</time></p></a></div><div class="new-meta-item browse"><a class="notlink"><p><i class="fa-solid fa-eye fa-fw" aria-hidden="true"></i><span id="busuanzi_value_page_pv"><i class="fa-solid fa-loader fa-spin fa-fw" aria-hidden="true"></i></span> <span>次浏览</span></p></a></div></div></div><div id="layoutHelper-page-plugins"></div><div id="post-body" itemprop="articleBody" class="e-content"><p>之前我是想参考这个教程来部署:<a target="_blank" rel="noopener" href="https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/">https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/</a><br>然而部署过程中翻了车<br>这个教程新版教程(顺便总结一下我翻的车)<br><span id="more"></span></p><h1 id="数据库选择"><a href="#数据库选择" class="headerlink" title="数据库选择"></a>数据库选择</h1><p>Umami支持MySQL和PostgreSQL数据库,选择自己喜欢的数据库进行数据初始化即可。下面是几个免费的数据库服务,这里选择的是ElephantSQL,当然,并不限于这些。<br>目前www.jsdelivr.ren免费数据库如下:</p><ul><li>MySQL:<a target="_blank" rel="noopener" href="https://freedb.tech/">FREEDB.TECH</a>、<a target="_blank" rel="noopener" href="https://www.db4free.net/">db4free</a>、<a target="_blank" rel="noopener" href="https://sqlpub.com/">SQLPub</a></li><li>PostgreSQL:<a target="_blank" rel="noopener" href="https://www.elephantsql.com/">ElephantSQL</a>、<a target="_blank" rel="noopener" href="https://supabase.com/">Supabase</a></li></ul><h1 id="数据库部署"><a href="#数据库部署" class="headerlink" title="数据库部署"></a>数据库部署</h1><div class="note warning"><p>目前已知Supabase部署失败原因:<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230716/msedge_DL0IGBX6O1.2876ewjv3lz4.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230716/msedge_DL0IGBX6O1.2876ewjv3lz4.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_DL0IGBX6O1"></p></div><div class="tabs" id="tab-数据库部署"><ul class="nav-tabs"><li class="tab active"><a class="#数据库部署-1">MySQL</a></li><li class="tab"><a class="#数据库部署-2">PostgreSQL</a></li></ul><div class="tab-content"><div class="tab-pane active" id="数据库部署-1"><div class="tabs" id="tab-mysql数据库"><ul class="nav-tabs"><li class="tab active"><a class="#mysql数据库-1">FREEDB.TECH</a></li><li class="tab"><a class="#mysql数据库-2">db4free(不推荐,官网访问较慢)</a></li><li class="tab"><a class="#mysql数据库-3">SQLPub(推荐)</a></li></ul><div class="tab-content"><div class="tab-pane active" id="mysql数据库-1"><p>打开<a target="_blank" rel="noopener" href="https://freedb.tech/">FREEDB.TECH</a>,注册登录,创建数据库和用户</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_gi9vdCGiIt.48n3g4pzzvw0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_gi9vdCGiIt.48n3g4pzzvw0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_gi9vdCGiIt"></p><p>得到你的数据库和密码:<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_fGVbS9POH4.409i0oz7v9k0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_fGVbS9POH4.409i0oz7v9k0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_fGVbS9POH4"></p><p>组合一下:<br></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">mysql://(DATABASE USER):(PASSWORD)@(HOST):(PORT)/(DATABASE NAME)</span><br></pre></td></tr></table></figure><p></p></div><div class="tab-pane" id="mysql数据库-2"><div class="note warning"><p>这个数据库疑似国人开办,建议用国内邮箱收验证码,国外的基本收不到<br>(转自:<a target="_blank" rel="noopener" href="https://www.freeaday.com/2023/01/db4free/">https://www.freeaday.com/2023/01/db4free/</a> 的一条评论)</p></div><p></p><p>打开<a target="_blank" rel="noopener" href="https://www.db4free.net/">db4free</a>,点击“注册免费账号”,输入信息然后点击“注册”,一会后你会收到如下邮件:</p><p></p><p></p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/网易灵犀办公_JmFVOuOEIc.30smaneqwfa0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/网易灵犀办公_JmFVOuOEIc.30smaneqwfa0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="网易灵犀办公_JmFVOuOEIc"></p><p></p><p></p><p>访问邮件提供的确认网址,数据库就创建成功了</p><p></p><p></p><p>然后将你设置的信息替换掉下面括号里的内容(注意:括号得去掉):<br></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">mysql://(你设置的数据库用户名):(你设置的数据库密码)@db4free.net:3306/(你设置的数据库名)</span><br></pre></td></tr></table></figure><p></p>&lt;/div&gt;<div class="tab-pane" id="mysql数据库-3"><p>访问<a target="_blank" rel="noopener" href="https://sqlpub.com/">SQLPub</a>,输入账号密码,点击申请,申请成功后会有如下提示<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_8FyIBEs6Ja.14toupglasps.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_8FyIBEs6Ja.14toupglasps.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_8FyIBEs6Ja"><br>然后将里面的替换掉下面括号里的内容(注意:括号得去掉):<br></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">mysql://(数据库用户):(数据库密码)@(数据库地址)/(数据库名称)</span><br></pre></td></tr></table></figure><p></p></div>&lt;/div&gt;&lt;/div&gt;<p></p></div><div class="tab-pane" id="数据库部署-2"><div class="tabs" id="tab-postgresql"><ul class="nav-tabs"><li class="tab active"><a class="#postgresql-1">Supabase(推荐)</a></li><li class="tab"><a class="#postgresql-2">ElephantSQL</a></li></ul><div class="tab-content"><div class="tab-pane active" id="postgresql-1"><p>打开<a target="_blank" rel="noopener" href="https://supabase.com/">Supabase</a>,推荐使用Github登录。登陆成功后,创建一个新的项目New project-&gt;personal。</p><ul><li>Name:随意</li><li>Database Password:建议点击Generate a password生成</li><li>Region:建议选择US,因为Vercel的免费服务器在漂亮国</li><li>Pricing Plan:Free白嫖</li></ul><p>创建成功后,打开菜单Project Setting -&gt; Database -&gt; Connection string -&gt; URI,如下图:<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.3jutc7fp3fc0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.3jutc7fp3fc0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="image"><br>将红框内的内容复制下来,然后把<code>[YOUR-PASSWORD]</code>替换成你生成的密码,复制备用</p></div><div class="tab-pane" id="postgresql-2"><p>打开ElephantSQL,推荐使用Github登录,创建一个新的实例。Plan选择Tiny Turtle(Free)、Region随意,提交创建。<br><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_ELQQZsgMsH.68dwkz5in1w0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_ELQQZsgMsH.68dwkz5in1w0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_ELQQZsgMsH"><br>打开刚刚创建的示例,找到URL,点击眼睛图标,然后将URL复制下来备用</p></div></div></div></div></div></div><h1 id="Vercel部署"><a href="#Vercel部署" class="headerlink" title="Vercel部署"></a>Vercel部署</h1><p><a target="_blank" rel="noopener" href="https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fmikecao%2Fumami&amp;env=DATABASE_URL,HASH_SALT,TRACKER_SCRIPT_NAME&amp;envDescription=These%20values%20are%20defined%20in%20the%20configure%20Umami%20step%20from%20Install&amp;envLink=https%3A%2F%2Fumami.is%2Fdocs%2Finstall&amp;project-name=umami&amp;repo-name=umami"><img src="https://vercel.com/button" class="lazyload" data-srcset="https://vercel.com/button" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="部署到Vercel"></a></p><ol><li>点击上方按钮,跳转至 Vercel 进行 Server 端部署</li><li><div class="note info"><p>如果你未登录的话,Vercel 会让你注册或登录,请使用 GitHub 账户进行快捷登录。</p></div></li><li><p>输入一个你喜欢的 Vercel 项目名称并点击 Create 继续:</p></li></ol><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_EtpjrPwPlG"></p><ol><li>配置环境变量</li></ol><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_EtpjrPwPlG.4zkys81bppo0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_EtpjrPwPlG"><br>部署完成后,会跳转到环境变量部分,请按照如下方式配置环境变量:<br>| 名称 | 说明 |<br>| —————- | —————- |<br>|DATABASE_URL|(必填)数据库链接|<br>|HASH_SALT|(必填)任意字符串,推荐<a target="_blank" rel="noopener" href="https://uuid.bmcx.com/">这里</a>生成一串UUID|<br>|TRACKER_SCRIPT_NAME|(建议)任意字符串,推荐<a target="_blank" rel="noopener" href="https://uuid.bmcx.com/">这里</a>生成一串UUID(不填会导致去广告插件把这段脚本给拦截)|</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_3VF46Qh4uk.6ebntqavbmw.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_3VF46Qh4uk.6ebntqavbmw.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_3VF46Qh4uk"></p><p>配置完成后点击Deploy开始部署,部署过程大概两分钟,部署成功后会有一个彩纸的喜庆页面。</p><h1 id="绑定域名"><a href="#绑定域名" class="headerlink" title="绑定域名"></a>绑定域名</h1><p>点击Go to Dashboard,进入Settings——&gt;Domains绑定域名</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.6kbvzv14uic.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.6kbvzv14uic.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="image"></p><p>你绑定的域名就是umami的后台网址</p><h1 id="配置后台"><a href="#配置后台" class="headerlink" title="配置后台"></a>配置后台</h1><p>点击你绑定的域名,进入Umami后台登录(默认用户名admin和密码umami)进入后第一时间修改密码。</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_V6f3L8vvos.3pvc55z6eqw0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_V6f3L8vvos.3pvc55z6eqw0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_V6f3L8vvos"></p><h1 id="添加站点-amp-获取代码"><a href="#添加站点-amp-获取代码" class="headerlink" title="添加站点 &amp; 获取代码"></a>添加站点 &amp; 获取代码</h1><p>“网站”—-&gt;“添加网站”添加你自己的网站</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.x9jagr7mvxc.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/image.x9jagr7mvxc.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="image"></p><p>保存后点击“编辑”—-&gt;“跟踪代码”,将获取到的代码放进你的站点</p><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_trQnJ47k75.20wh55o85wkg.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_trQnJ47k75.20wh55o85wkg.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_trQnJ47k75"></p><p>不久后就能看到你的站点数据了</p><h1 id="问题"><a href="#问题" class="headerlink" title="问题"></a>问题</h1><ul><li>Umami无法登录,提示“Failed to load resource: the server responded with a status of 405”<br>等待几分钟后登录重试</li><li>使用Supabase数据库时,Vercel提示这个错误:</li></ul><p><img src="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_D1X7RIZpUD.5wxtzukahdo0.webp" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/msedge_D1X7RIZpUD.5wxtzukahdo0.webp" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" alt="msedge_D1X7RIZpUD"></p><p>建议重新新建数据库,还不行的话更换别的数据库</p></div><div class="footer"></div><div class="article-meta" id="bottom"><div class="new-meta-box"><div class="new-meta-item date" itemprop="dateModified"><a class="notlink"><i class="fa-solid fa-edit fa-fw" aria-hidden="true"></i><p>更新于:<time class="dataToShow dt-updated" datetime="2024-11-09T08:45:10+00:00" title="2024年11月9日">2024年11月9日</time></p></a></div><div class="new-meta-item meta-tags"><a class="tag" href="/tags/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" rel="nofollow"><i class="fa-solid fa-hashtag fa-fw" aria-hidden="true"></i><p>站点折腾</p></a></div><div class="new-meta-item meta-tags"><a class="tag" href="/tags/%E8%87%AA%E5%BB%BA%E9%83%A8%E7%BD%B2/" rel="nofollow"><i class="fa-solid fa-hashtag fa-fw" aria-hidden="true"></i><p>自建部署</p></a></div> <span hidden itemprop="keywords">站点折腾 自建部署</span><div class="new-meta-item share -mob-share-list"><div class="-mob-share-list share-body"> <a class="-mob-share-qq" title="" rel="external nofollow noopener noreferrer noopener" target="_blank" href="http://connect.qq.com/widget/shareqq/index.html?url=https://blog.sinzmise.top/posts/28733/&title=Vercel部署Umami - 汐塔魔法屋&summary=之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><img src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qq.png" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qq.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a class="-mob-share-qzone" title="" rel="external nofollow noopener noreferrer noopener" target="_blank" href="https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=https://blog.sinzmise.top/posts/28733/&title=Vercel部署Umami - 汐塔魔法屋&summary=之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><img src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qzone.png" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/qzone.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a class="-mob-share-weibo" title="" rel="external nofollow noopener noreferrer noopener" target="_blank" href="http://service.weibo.com/share/share.php?url=https://blog.sinzmise.top/posts/28733/&title=Vercel部署Umami - 汐塔魔法屋&summary=之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)"><img src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/weibo.png" class="lazyload" data-srcset="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/media/org.volantis/logo/128/weibo.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a></div></div></div></div><div class="prev-next"><a class="prev" href="/posts/50710/"><p class="title"><i class="fa-solid fa-angle-double-left" aria-hidden="true"></i>我的tulpa —— 夏玖铃的简介</p><p class="content"> 注意,由于名字和《逆水寒》游戏里的一个流派名冲突,改名为“夏玖铃” 她的出现与其说是Tulpa,不如说是DID(解离性人格障碍)因为她是从我永远的噩梦:四年级出现的那时我总是被班级最后一名的那...</p></a><a class="next" href="/posts/12779/"><p class="title">盘点我访问过的古老站点<i class="fa-solid fa-angle-double-right" aria-hidden="true"></i></p><p class="content">这些站点有些年代了。。。。。。 秘密花园(www.yini.org )第一次认识这个站点,还得从我的企划:Prism Online开始——其实这个企划的名字不是我自定的,而是为了纪念zia之前为...</p></a></div></div></div></div></article><article class="post white-box shadow floatable blur" id="comments"><span hidden><meta itemprop="discussionUrl" content="/posts/28733/#comments"></span><p ct><i class="fa-solid fa-comments"></i> 评论</p><div id="layoutHelper-comments"></div></article></div><aside id="l_side" class="not-select default-cursor" itemscope itemtype="http://schema.org/WPSideBar"><section class="widget nextsite desktop pjax"><div class="site-brand-wrapper"><div class="site-meta"> <a href="/" class="brand" rel="start"><span class="site-title">汐塔魔法屋</span></a><p class="site-subtitle" itemprop="description">Ceta Magical House</p></div><div class="site-nav-toggle"> <button aria-label="切换导航栏"><span class="btn-bar"></span><span class="btn-bar"></span><span class="btn-bar"></span></button></div></div><nav class="site-nav"><ul class="next-main"><li class="next-main-item"><a href="/categories/" title="分类" active-action="action-categories"><i class="menu-item-icon fa-solid fa-folder-open fa-fw"></i> 分类</a></li><li class="next-main-item"><a href="/tags/" title="标签" active-action="action-tags"><i class="menu-item-icon fa-solid fa-tags fa-fw"></i> 标签</a></li><li class="next-main-item"><a href="/archives/" title="归档" active-action="action-archives"><i class="menu-item-icon fa-solid fa-archive fa-fw"></i> 归档</a></li><li class="next-main-item"><a href="/link/" title="友链" active-action="action-link"><i class="menu-item-icon fa-solid fa-link fa-fw"></i> 友链</a></li><li class="next-main-item"><a target="_blank" rel="noopener" href="https://www.travellings.cn/go.html" title="开往" active-action="action-https:wwwtravellingscngohtml"><i class="menu-item-icon fa-solid fa-subway fa-fw"></i> 开往</a></li><li class="next-main-item"><a target="_blank" rel="noopener" href="https://en.blog.sinzmise.top/" title="English" active-action="action-https:enblogsinzmisetop"><i class="menu-item-icon fa fa-language fa-fw fa-fw"></i> English</a></li><li class="next-main-item"><a href="javascript:void(0)" title="搜索" active-action="action-javascript:void(0)" onclick="OpenSearch()"><i class="menu-item-icon fa-solid fa-search fa-fw"></i> 搜索</a></li></ul></nav></section><section class="widget nextblogger desktop pjax h-card"><div class="content"> <a class="avatar u-url flat-box" href="https://blog.sinzmise.top/"><img no-lazy class="site-author-image u-photo" itemprop="image" src="/img/avatar.png" alt="王九弦SZ·Ninty"></a><div class="site-author-box"><p class="site-author-name p-name" itemprop="name">王九弦SZ·Ninty</p><p class="site-author-description" itemprop="description">种下故事的种子,随着风和光生根发芽</p></div><div class="links-of-author"><span class="links-of-author-item"><a href="/atom.xml" title="RSS" alt="汐塔魔法屋" rel="me"><i class="fa-solid fa-rss fa-fw"></i></a></span><span class="links-of-author-item"><a href="mailto:email@sinzmise.top" title="Email" alt="汐塔魔法屋" class="u-email" rel="me"><i class="fa-solid fa-envelope fa-fw"></i></a></span><span class="links-of-author-item"><a target="_blank" href="https://github.com/SinzMise/" title="Github" alt="汐塔魔法屋" rel="me noopener"><i class="fab fa-github fa-fw"></i></a></span></div></div></section><section class="widget category desktop pjax"><header><a href="/categories/"><span class="icon"><i class="fa-solid fa-folder-open fa-fw" aria-hidden="true"></i></span> <span class="name">文章分类</span></a></header><div class="content"><ul class="entry navigation"><li><a class="flat-box" title="/categories/%E4%B8%AA%E4%BA%BA%E5%B0%8F%E8%AE%B0/" href="/categories/%E4%B8%AA%E4%BA%BA%E5%B0%8F%E8%AE%B0/" active-action="action-categoriesE4B8AAE4BABAE5B08FE8AEB0"><div class="name">个人小记</div><div class="badge">(19)</div></a></li><li><a class="flat-box" title="/categories/%E6%AD%8C%E6%9B%B2%E6%94%B6%E9%9B%86/" href="/categories/%E6%AD%8C%E6%9B%B2%E6%94%B6%E9%9B%86/" active-action="action-categoriesE6AD8CE69BB2E694B6E99B86"><div class="name">歌曲收集</div><div class="badge">(1)</div></a></li><li><a class="flat-box" title="/categories/%E6%B8%B8%E6%88%8F%E7%9B%B8%E5%85%B3/" href="/categories/%E6%B8%B8%E6%88%8F%E7%9B%B8%E5%85%B3/" active-action="action-categoriesE6B8B8E6888FE79BB8E585B3"><div class="name">游戏相关</div><div class="badge">(4)</div></a></li><li><a class="flat-box" title="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" href="/categories/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" active-action="action-categoriesE7AB99E782B9E68A98E885BE"><div class="name">站点折腾</div><div class="badge">(14)</div></a></li><li><a class="flat-box" title="/categories/%E9%A1%B9%E7%9B%AE%E6%8A%98%E8%85%BE/" href="/categories/%E9%A1%B9%E7%9B%AE%E6%8A%98%E8%85%BE/" active-action="action-categoriesE9A1B9E79BAEE68A98E885BE"><div class="name">项目折腾</div><div class="badge">(3)</div></a></li></ul></div></section><section class="widget tagcloud desktop pjax"><header><a href="/tags/"><span class="icon"><i class="fa-solid fa-tags fa-fw" aria-hidden="true"></i></span> <span class="name">热门标签</span></a></header><div class="content"> <a href="/tags/Flash%E7%9B%B8%E5%85%B3/" style="font-size:14px;color:#999">Flash相关</a> <a href="/tags/Steam%E6%B8%B8%E6%88%8F/" style="font-size:14px;color:#999">Steam游戏</a> <a href="/tags/Windows%E8%BD%AF%E4%BB%B6/" style="font-size:15.67px;color:#8e8e8e">Windows软件</a> <a href="/tags/%E4%B8%AA%E4%BA%BA%E5%B0%8F%E8%AE%B0/" style="font-size:24px;color:#555">个人小记</a> <a href="/tags/%E5%85%B6%E5%AE%83%E6%B8%B8%E6%88%8F/" style="font-size:17.33px;color:#828282">其它游戏</a> <a href="/tags/%E5%8A%A0%E8%BD%BD%E5%8A%A8%E7%94%BB/" style="font-size:14px;color:#999">加载动画</a> <a href="/tags/%E6%82%AC%E6%B5%AE%E5%AE%A0%E7%89%A9-%E7%9C%8B%E6%9D%BF%E5%A8%98/" style="font-size:14px;color:#999">悬浮宠物/看板娘</a> <a href="/tags/%E6%AD%8C%E6%9B%B2%E6%94%B6%E9%9B%86/" style="font-size:14px;color:#999">歌曲收集</a> <a href="/tags/%E6%B8%B8%E6%88%8F%E7%9B%B8%E5%85%B3/" style="font-size:19px;color:#777">游戏相关</a> <a href="/tags/%E7%AB%99%E7%82%B9%E5%BA%95%E9%83%A8%E9%AD%94%E6%94%B9/" style="font-size:14px;color:#999">站点底部魔改</a> <a href="/tags/%E7%AB%99%E7%82%B9%E6%8A%98%E8%85%BE/" style="font-size:22.33px;color:#606060">站点折腾</a> <a href="/tags/%E8%87%AA%E5%BB%BA%E9%83%A8%E7%BD%B2/" style="font-size:20.67px;color:#6c6c6c">自建部署</a> <a href="/tags/%E9%A1%B5%E9%9D%A2%E9%AD%94%E6%94%B9/" style="font-size:17.33px;color:#828282">页面魔改</a> <a href="/tags/%E9%A1%B9%E7%9B%AE%E6%8A%98%E8%85%BE/" style="font-size:17.33px;color:#828282">项目折腾</a></div></section><div class="widget-sticky pjax"><section class="widget toc-wrapper desktop mobile" id="toc-div"><header><span class="icon"><i class="fa-solid fa-list fa-fw" aria-hidden="true"></i></span> <span class="name">本文目录</span></header><div class="content"></div></section><section class="widget desktop"><header><span class="icon"><i class="fa-solid fa-award fa-fw" aria-hidden="true"></i></span> <span class="name">站点信息</span></header><div class="content"><div class="webinfo"><div class="webinfo-item"><div>文章数目:</div><div>41 篇</div></div><div class="webinfo-item"><div>本站访客数:</div><div><span id="busuanzi_value_site_uv"><i class="fa-solid fa-fan fa-spin fa-fw" aria-hidden="true"></i></span> 人</div></div><div class="webinfo-item"><div>本站总访问量:</div><div><span id="busuanzi_value_site_pv"><i class="fa-solid fa-fan fa-spin fa-fw" aria-hidden="true"></i></span> 次</div></div><div class="webinfo-item"><div>最后活动时间:</div><div id="last-update-show">2024-11-09 日</div></div></div></div></section></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div><div class="pjax"></div></aside><pjax><script>window.pdata={ispage:!0,commentPath:"",commentPlaceholder:"",commentConfig:{}},document.getElementById("l_header")&&document.getElementById("l_header").classList.add("show")</script></pjax></div><footer class="footer clearfix" itemscope itemtype="http://schema.org/WPFooter"><br><br><br><div class="social-wrapper" itemprop="about" itemscope itemtype="http://schema.org/Thing"> <a href="https://www.travellings.cn/go.html" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="开往-友链接力"><img src="https://www.travellings.cn/assets/logo.gif" class="lazyload" data-srcset="https://www.travellings.cn/assets/logo.gif" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a href="https://boringbay.com" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="无聊湾 🥱 The Boring Bay"><img src="https://boringbay.com/api/badge/blog.sinzmise.top" class="lazyload" data-srcset="https://boringbay.com/api/badge/blog.sinzmise.top" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a href="https://blogscn.fun/" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="本站已加入BLOGS·CN"><img src="https://photo.xiangming.site/img/blogscn.png" class="lazyload" data-srcset="https://photo.xiangming.site/img/blogscn.png" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a> <a href="https://blogscn.fun/random.html" class="social flat-btn" target="_blank" rel="external nofollow noopener noreferrer" itemprop="url" alt="BLOGS·CN随机访问"><img src="https://photo.xiangming.site/img/footer.gif" class="lazyload" data-srcset="https://photo.xiangming.site/img/footer.gif" srcset="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="></a></div><div><p>博客内容遵循 <a target="_blank" rel="noopener" href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh">署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议</a></p></div> 由 <a href="https://hexo.io" target="_blank" rel="noopener">Hexo</a> 驱动 | 主题 <a href="https://github.com/volantis-x/hexo-theme-volantis/#6.0.0-alpha.0" target="_blank" class="codename">Volantis</a><div class="copyright"><p><a target="_blank" rel="noopener" href="https://xn--sr8hvo.ws/previous">←</a> An <a target="_blank" rel="noopener" href="https://xn--sr8hvo.ws">IndieWeb Webring</a> 🕸💍 <a target="_blank" rel="noopener" href="https://xn--sr8hvo.ws/next">→</a><br>©2021 · <a href="/">中弦局·汐塔魔法屋</a><br><a target="_blank" rel="noopener" href="https://icp.gov.moe/?keyword=20231033">萌ICP备20231033号</a> | <a target="_blank" rel="noopener" href="https://icp.gov.moe/?keyword=20231033">MIIT备20240818号</a> | <a target="_blank" rel="noopener" href="https://guan.ma/hao/2024000155/">官码2024000155号</a><br>我加入的:<a target="_blank" rel="noopener" href="https://zhblogs.ohyee.cc/">中文博客列表</a> | <a target="_blank" rel="noopener" href="https://storeweb.cn/member/o/1585">个站商店</a> | <a target="_blank" rel="noopener" href="https://bf.zzxworld.com/s/995">BlogFinder</a> | <a target="_blank" rel="noopener" href="https://sites.applinzi.com/site-info?siteType=life&amp;siteId=64cb373190e35300a8eec654">站点聚合平台</a> | <a target="_blank" rel="noopener" href="https://boke.lu/">博客录</a> | <a target="_blank" rel="noopener" href="https://rssblog.cn/member/d711afd659d65c2ba2d3b18697818cf7/">RssBlog</a> | <a target="_blank" rel="noopener" href="https://blogscn.fun/">笔墨迹</a> | <a target="_blank" rel="noopener" href="https://daohang.lusongsong.com/">博客大全</a></p></div></footer><a id="s-top" class="fa-solid fa-arrow-up fa-fw" title="top"></a></div></div><div><script>volantis.dom.bodyAnchor=volantis.dom.$(document.getElementById("safearea")),volantis.dom.topBtn=volantis.dom.$(document.getElementById("s-top")),volantis.dom.wrapper=volantis.dom.$(document.getElementById("wrapper")),volantis.dom.coverAnchor=volantis.dom.$(document.querySelector("#l_cover .cover-wrapper")),volantis.dom.switcher=volantis.dom.$(document.querySelector("#l_header .switcher .s-search")),volantis.dom.header=volantis.dom.$(document.getElementById("l_header")),volantis.dom.search=volantis.dom.$(document.querySelector("#l_header .m_search")),volantis.dom.mPhoneList=volantis.dom.$(document.querySelectorAll("#l_header .m-phone .list-v")),top.location!=self.location&&(top.location=self.location),volantis.css("https://jsd.cdn.storisinz.site/npm/@fortawesome/fontawesome-free@6.1.1/css/all.min.css")</script><script src="/js/app.js"></script><script>function loadIssuesJS(){null!=document.getElementById("sites-api")&&"undefined"==typeof SitesJS&&volantis.js("/js/plugins/tags/sites.js");null!=document.getElementById("friends-api")&&"undefined"==typeof FriendsJS&&volantis.js("/js/plugins/tags/friends.js");null!=document.getElementById("contributors-api")&&"undefined"==typeof ContributorsJS&&volantis.js("/js/plugins/tags/contributors.js")}loadIssuesJS(),volantis.pjax.push((()=>{loadIssuesJS()}))</script><script defer="defer" src="https://jsd.cdn.storisinz.site/npm/vanilla-lazyload@17.1.0/dist/lazyload.min.js"></script><script>window.lazyLoadOptions={elements_selector:".lazyload",threshold:0},window.addEventListener("LazyLoad::Initialized",(function(n){window.lazyLoadInstance=n.detail.instance}),!1),document.addEventListener("DOMContentLoaded",(function(){lazyLoadInstance.update()})),document.addEventListener("pjax:complete",(function(){lazyLoadInstance.update()}))</script><script>window.FPConfig={delay:0,ignoreKeywords:["#"],maxRPS:6,hoverDelay:0}</script><script defer="defer" src="https://jsd.cdn.storisinz.site/npm/volantis-static@0.0.1660614606622/libs/flying-pages/flying-pages.min.js"></script><script>function load_twikoo(){document.querySelectorAll("#twikoo_container")[0]&&volantis.js("https://jsd.cdn.storisinz.site/npm/twikoo@1.6.39/dist/twikoo.min.js",pjax_twikoo)}function pjax_twikoo(){if(!document.querySelectorAll("#twikoo_container")[0])return;let o=pdata.commentPath,t=pdata.commentPlaceholder||"";if(0==o.length){o=""||decodeURI(window.location.pathname)}twikoo.init(Object.assign(Object.assign({path:null,envId:"https://tk.pl.blog.sinzmise.top/",placeholder:null,visitor:!1},{el:"#twikoo_container",path:o,placeholder:t,onCommentLoaded:function(){if("undefined"==typeof VolantisFancyBox){const o=setInterval((()=>{"undefined"!=typeof VolantisFancyBox&&(clearInterval(o),VolantisFancyBox.groupBind('.tk-content img:not([class*="emo"])',"Comments"))}))}else VolantisFancyBox.groupBind('.tk-content img:not([class*="emo"])',"Comments")}}),pdata.commentConfig))}volantis.layoutHelper("comments",'<div id="twikoo_container"><i class="fa-solid fa-cog fa-spin fa-fw fa-2x"></i></div>'),load_twikoo(),volantis.pjax.push((()=>{"undefined"==typeof twikoo?load_twikoo():pjax_twikoo()}),"twikoo")</script><script defer="defer" src="https://jsd.cdn.storisinz.site/npm/penndu@1.0.0/bsz.js" data-pjax></script><script>async function loadSearchScript(){return await volantis.js("https://jsd.cdn.storisinz.site/npm/instantsearch.js@4.44.0/dist/instantsearch.production.min.js"),await volantis.js("https://jsd.cdn.storisinz.site/npm/@meilisearch/instant-meilisearch@0.8.1/dist/instant-meilisearch.umd.min.js"),volantis.js("/js/search/meilisearch.js")}function loadSearchService(){document.querySelectorAll(".input.u-search-input").forEach((e=>{e.removeEventListener("focus",loadSearchService,!1)})),document.querySelectorAll(".u-search-form").forEach((e=>{e.addEventListener("submit",(e=>{e.preventDefault()}),!1)}))}function OpenSearch(e=""){"undefined"==typeof SearchService?loadSearchScript().then((()=>{SearchService.setQueryText(e),SearchService.search()})):(SearchService.setQueryText(e),SearchService.search())}if(loadSearchScript(),window.location.search&&/^\?s=/g.test(window.location.search)){OpenSearch(decodeURI(window.location.search).replace(/\ /g,"-").replace(/^\?s=/g,""))}document.querySelectorAll(".input.u-search-input").forEach((e=>{e.addEventListener("focus",loadSearchService,!1)}))</script><script>function pjax_highlightjs_copyCode(){(document.querySelector(".highlight .code pre")||document.querySelector(".article pre code"))&&VolantisApp.utilCopyCode(".highlight .code pre, .article pre code")}volantis.requestAnimationFrame(pjax_highlightjs_copyCode),volantis.pjax.push(pjax_highlightjs_copyCode)</script><script>setTimeout((function(){function a(){dataLayer.push(arguments)}volantis.js("https://www.googletagmanager.com/gtag/js?id=G-7MR59SK1DP"),window.dataLayer=window.dataLayer||[],a("js",new Date),a("config","G-7MR59SK1DP")}),1e3),volantis.pjax.push((()=>{window.dataLayer=window.dataLayer||[],function(){dataLayer.push(arguments)}("config","G-7MR59SK1DP",{page_path:document.location.pathname})}),"google_analytics")</script><script>var _hmt=_hmt||[];setTimeout((function(){volantis.js("https://hm.baidu.com/hm.js?59986c9d6715c06178a2b6e2f118f837")}),1e3),volantis.pjax.push((()=>{_hmt.push(["_trackPageview",document.location.pathname])}),"baidu_analytics")</script><script charset="UTF-8" id="LA_COLLECT" src="//sdk.51.la/js-sdk-pro.min.js"></script><script>volantis.js("https://sdk.51.la/js-sdk-pro.min.js").then((()=>{LA.init({id:"K9WDMA2h2AfDg5GG",ck:"K9WDMA2h2AfDg5GG",autoTrack:!0,hashMode:!0})}))</script><script src="https://sdk.51.la/perf/js-sdk-perf.min.js" crossorigin="anonymous"></script><script>volantis.js("https://sdk.51.la/perf/js-sdk-perf.min.js").then((()=>{(new LingQue.Monitor).init({id:"K94JRCDsbHJJSjNs",sendSuspicious:!0,sendSpaPv:!0})}))</script><script>function load_swiper(){document.querySelectorAll(".swiper-container")[0]&&(volantis.css("https://jsd.cdn.storisinz.site/npm/swiper@8.3.2/swiper-bundle.min.css"),volantis.js("https://jsd.cdn.storisinz.site/npm/swiper@8.3.2/swiper-bundle.min.js").then((()=>{pjax_swiper()})))}function pjax_swiper(){volantis.swiper=new Swiper(".swiper-container",{slidesPerView:"auto",spaceBetween:8,centeredSlides:!0,loop:!0,pagination:{el:".swiper-pagination",clickable:!0},navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}})}load_swiper(),volantis.pjax.push((()=>{document.querySelectorAll(".swiper-container")[0]&&(void 0===volantis.swiper?load_swiper():pjax_swiper())}))</script><pjax></pjax><script>function listenSidebarTOC(){const t=document.querySelectorAll(".toc li");if(!t.length)return;const e=[];Array.from(t).forEach((t=>{const n=t.querySelector(".toc-link"),i=document.getElementById(n.getAttribute("href")?decodeURI(n.getAttribute("href")).replace("#",""):n.getAttribute("toc-action").split("toc-")[1]);return e.push(i),n.getAttribute("href")&&(n.setAttribute("toc-action","toc-"+decodeURI(n.getAttribute("href")).replace("#","")),n.removeAttribute("href")),i&&i.id&&n.addEventListener("click",(t=>{t.preventDefault(),volantis.scroll.to(i,{addTop:5,observer:!0}),history.pushState(null,document.title,"#"+i.id)})),i}));function n(t){if(t.classList.contains("active-current"))return;document.querySelectorAll(".toc .active").forEach((t=>{t.classList.remove("active","active-current")})),t.classList.add("active","active-current");let e=t.parentNode;for(;!e.matches(".toc");)e.matches("li")&&e.classList.add("active"),e=e.parentNode}volantis.activateNavIndex=0,n(t[volantis.activateNavIndex]),e[0]&&volantis.scroll.push((()=>{if(e[0].getBoundingClientRect().top>=0)volantis.activateNavIndex=0;else if(e[e.length-1].getBoundingClientRect().top<0)volantis.activateNavIndex=e.length-1;else for(let t=0;t<e.length;t++){const n=e[t],i=e[(t+1)%e.length];if(n.getBoundingClientRect().top<0&&i.getBoundingClientRect().top>=0){volantis.activateNavIndex=t;break}}n(t[volantis.activateNavIndex])}))}document.addEventListener("DOMContentLoaded",(()=>{volantis.requestAnimationFrame(listenSidebarTOC)})),volantis.pjax.push(listenSidebarTOC)</script><script>document.onreadystatechange=function(){if("complete"==document.readyState){const{saveData:e,effectiveType:t}=navigator.connection||navigator.mozConnection||navigator.webkitConnection||{};("none"==getComputedStyle(document.querySelector("#safearea"),null).display||e||/2g/.test(t))&&(document.querySelectorAll(".reveal").forEach((function(e){e.style.opacity="1"})),document.querySelector("#safearea").style.display="block")}}</script><script type="application/ld+json">[{"@context":"http://schema.org","@type":"Organization","name":"汐塔魔法屋","url":"https://blog.sinzmise.top/","logo":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png","width":192,"height":192}},{"@context":"http://schema.org","@type":"Person","name":"王九弦SZ·Ninty","image":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"},"url":"https://blog.sinzmise.top/","sameAs":["https://github.com/SinzMise"],"description":"The Story,The Dream."},{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https://blog.sinzmise.top/","name":"汐塔魔法屋"}},{"@type":"ListItem","position":2,"item":{"@id":"https://blog.sinzmise.top/categories/站点折腾/","name":"站点折腾"}},{"@type":"ListItem","position":3,"item":{"@id":"https://blog.sinzmise.top/posts/28733/","name":"Vercel部署Umami"}}]},{"@context":"http://schema.org","@type":"WebSite","name":"汐塔魔法屋","url":"https://blog.sinzmise.top/","keywords":null,"description":"The Story,The Dream.","author":{"@type":"Person","name":"王九弦SZ·Ninty","image":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"},"url":"https://blog.sinzmise.top/","description":"The Story,The Dream."},"publisher":{"@type":"Organization","name":"汐塔魔法屋","url":"https://blog.sinzmise.top/","logo":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png","width":192,"height":192}},"potentialAction":{"@type":"SearchAction","name":"Site Search","target":{"@type":"EntryPoint","urlTemplate":"https://blog.sinzmise.top?s={search_term_string}"},"query-input":"required name=search_term_string"}},{"@context":"http://schema.org","@type":"BlogPosting","headline":"Vercel部署Umami","description":"之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/然而部署过程中翻了车这个教程新版教程(顺便总结一下我翻的车)","inLanguage":"zh-CN","mainEntityOfPage":{"@type":"WebPage","@id":"https://blog.sinzmise.top/posts/28733/"},"author":{"@type":"Person","name":"王九弦SZ·Ninty","image":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png"},"url":"https://blog.sinzmise.top/"},"publisher":{"@type":"Organization","name":"汐塔魔法屋","logo":{"@type":"ImageObject","url":"https://blog.sinzmise.top/images/siteicon/web-app-manifest-192x192.png","width":192,"height":192}},"url":"https://blog.sinzmise.top/posts/28733/","wordCount":101,"datePublished":"2023-07-14T08:48:13.000Z","dateModified":"2024-11-09T08:45:10.468Z","articleSection":"站点折腾","keywords":"站点折腾,自建部署","image":{"@type":"ImageObject","url":"https://jsd.cdn.storisinz.site/gh/SinzMise/picx-images-hosting@master/20230714/umami-x-vercel.37hd3icfx5y0.webp","width":1024,"height":768}}]</script><script src="https://jsd.cdn.storisinz.site/npm/pjax@0.2.8/pjax.min.js"></script><script>var pjax;document.addEventListener("DOMContentLoaded",(function(){pjax=new Pjax({elements:'a[href]:not([href^="#"]):not([href="javascript:void(0)"]):not([pjax-fancybox]):not([onclick="return false;"]):not([onclick="return!1"]):not([target="_blank"]):not([target="view_window"]):not([href$=".xml"])',selectors:["head title","head meta[name=keywords]","head meta[name=description]","#l_cover","#l_main","#pjax-header-nav-list",".pjax","pjax"],cacheBust:!1,timeout:5e3})})),document.addEventListener("pjax:send",(function(e){try{var t=window.location.pathname,n=e.triggerElement.href,a=[""];""!=a[0]&&a.forEach((e=>{-1==t.indexOf(e)&&-1==n.indexOf(e)||(window.location.href=n)}))}catch(e){}volantis.pjax.method.send.start()})),document.addEventListener("pjax:complete",(function(){document.querySelectorAll("script[data-pjax], .pjax-reload script").forEach((e=>{const t=e.text||e.textContent||e.innerHTML||"",n=document.createElement("script");Object.keys(e.attributes).forEach((t=>{n.setAttribute(e.attributes[t].nodeName,e.attributes[t].nodeValue)})),t&&n.appendChild(document.createTextNode(t)),e.parentNode.replaceChild(n,e)})),volantis.pjax.method.complete.start()})),document.addEventListener("pjax:error",(function(e){"pjax"===volantis.debug?(console.error(e),console.log("pjax error: \n"+JSON.stringify(e))):(volantis.pjax.method.error.start(),window.location.href=e.triggerElement.href)}))</script></div><script defer="defer" src="https://static.cloudflareinsights.com/beacon.min.js" data-cf-beacon='{"token": "4a134f143d6048e4b0c719c11c03c452"}'></script><script data-pjax src="https://jsd.cdn.storisinz.site/npm/oh-my-live2d"></script><script>const oml2d=OML2D.loadOml2d({menus:{items:t=>[{id:"home",icon:"fa fa-house",title:"我的个人主页",onClick:()=>window.open("https://www.sinzmise.top/")},t[0],t[2],t[3]]},mobileDisplay:!1,models:[{path:"https://files.blog.sinzmise.top/live2d/dujiaoshou_6/dujiaoshou_6.model3.json",mobilePosition:[-10,23],mobileScale:.1,mobileStageStyle:{width:180,height:166},motionPreloadStrategy:"IDLE",position:[-120,-30],scale:.06,stageStyle:{width:250,height:400}},{path:"https://files.blog.sinzmise.top/live2d/dujiaoshou_4/dujiaoshou_4.model3.json",scale:.06,position:[-50,-25],stageStyle:{width:250,height:300},mobileScale:.08,mobilePosition:[0,0],mobileStageStyle:{width:180}}],parentElement:document.body,primaryColor:"var(--primary)",sayHello:!1,tips:{style:{width:230,height:120,left:"calc(50% + 6px)",top:"-100px"},mobileStyle:{width:180,height:80,left:"calc(50% - 30px)",top:"-100px"},idleTips:{interval:15e3,message:function(){return axios.get("https://v1.hitokoto.cn?c=i").then((function(t){return t.data.hitokoto})).catch((function(t){console.error(t)}))}}}})</script></body></html>