1:"$Sreact.fragment" 3:I[5244,[],""] 4:I[3866,[],""] 6:I[6213,[],"OutletBoundary"] 8:I[6213,[],"MetadataBoundary"] a:I[6213,[],"ViewportBoundary"] c:I[4835,[],""] :HL["/_next/static/css/2a5e2948171407d9.css","style"] 0:{"P":null,"b":"bPJFpEFk0_gcWt47A57l9","p":"","c":["","other","tabby-web"],"i":false,"f":[[["",{"children":[["mdxPath","other/tabby-web","oc"],{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/2a5e2948171407d9.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],"$L2"]}],{"children":[["mdxPath","other/tabby-web","oc"],["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","segmentPath":["children","$0:f:0:1:2:children:0","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":["$L5",null,["$","$L6",null,{"children":"$L7"}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","j_K36KwtWlf3sY_GZoG4V",{"children":[["$","$L8",null,{"children":"$L9"}],["$","$La",null,{"children":"$Lb"}],null]}]]}],false]],"m":"$undefined","G":["$c","$undefined"],"s":false,"S":true} d:I[9981,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"ThemeConfigProvider"] e:I[7751,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"LastUpdated"] f:I[7308,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","795","static/chunks/795-d777014d77bf3eb1.js","728","static/chunks/728-7c60a700dd3f68c6.js","177","static/chunks/app/layout-40bff8d2cc47ca21.js"],"Search"] 10:I[7113,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","795","static/chunks/795-d777014d77bf3eb1.js","728","static/chunks/728-7c60a700dd3f68c6.js","177","static/chunks/app/layout-40bff8d2cc47ca21.js"],"ThemeProvider"] 11:I[2646,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"SkipNavLink"] 12:I[8069,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"ConfigProvider"] 13:I[8173,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],""] 14:I[4838,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"ClientNavbar"] 16:I[761,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"ThemeSwitch"] 17:I[4431,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"MobileNav"] 18:I[5967,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","795","static/chunks/795-d777014d77bf3eb1.js","728","static/chunks/728-7c60a700dd3f68c6.js","177","static/chunks/app/layout-40bff8d2cc47ca21.js"],"Analytics"] 19:I[2264,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","795","static/chunks/795-d777014d77bf3eb1.js","728","static/chunks/728-7c60a700dd3f68c6.js","177","static/chunks/app/layout-40bff8d2cc47ca21.js"],"SpeedInsights"] 15:T481,M12 3C7.0275 3 3 7.12937 3 12.2276C3 16.3109 5.57625 19.7597 9.15374 20.9824C9.60374 21.0631 9.77249 20.7863 9.77249 20.5441C9.77249 20.3249 9.76125 19.5982 9.76125 18.8254C7.5 19.2522 6.915 18.2602 6.735 17.7412C6.63375 17.4759 6.19499 16.6569 5.8125 16.4378C5.4975 16.2647 5.0475 15.838 5.80124 15.8264C6.51 15.8149 7.01625 16.4954 7.18499 16.7723C7.99499 18.1679 9.28875 17.7758 9.80625 17.5335C9.885 16.9337 10.1212 16.53 10.38 16.2993C8.3775 16.0687 6.285 15.2728 6.285 11.7432C6.285 10.7397 6.63375 9.9092 7.20749 9.26326C7.1175 9.03257 6.8025 8.08674 7.2975 6.81794C7.2975 6.81794 8.05125 6.57571 9.77249 7.76377C10.4925 7.55615 11.2575 7.45234 12.0225 7.45234C12.7875 7.45234 13.5525 7.55615 14.2725 7.76377C15.9937 6.56418 16.7475 6.81794 16.7475 6.81794C17.2424 8.08674 16.9275 9.03257 16.8375 9.26326C17.4113 9.9092 17.76 10.7281 17.76 11.7432C17.76 15.2843 15.6563 16.0687 13.6537 16.2993C13.98 16.5877 14.2613 17.1414 14.2613 18.0065C14.2613 19.2407 14.25 20.2326 14.25 20.5441C14.25 20.7863 14.4188 21.0746 14.8688 20.9824C16.6554 20.364 18.2079 19.1866 19.3078 17.6162C20.4077 16.0457 20.9995 14.1611 21 12.2276C21 7.12937 16.9725 3 12 3Z2:["$","html",null,{"lang":"en","dir":"ltr","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[[["$","link",null,{"rel":"icon","type":"image/png","href":"/favicons/favicon-96x96.png","sizes":"96x96"}],["$","link",null,{"rel":"icon","type":"image/svg+xml","href":"/favicons/favicon.svg"}],["$","link",null,{"rel":"shortcut icon","href":"/favicons/favicon.ico"}],["$","link",null,{"rel":"apple-touch-icon","sizes":"180x180","href":"/favicons/apple-touch-icon.png"}],["$","link",null,{"rel":"manifest","href":"/favicons/site.webmanifest"}]],["$","style",null,{"children":":root {\n --nextra-primary-hue: 212deg;\n --nextra-primary-saturation: 100%;\n --nextra-primary-lightness: 45%;\n --nextra-bg: 250,250,250;\n --nextra-content-width: 90rem;\n}\n.dark {\n --nextra-primary-hue: 204deg;\n --nextra-primary-saturation: 100%;\n --nextra-primary-lightness: 55%;\n --nextra-bg: 17,17,17;\n}\n::selection {\n background: hsla(var(--nextra-primary-hue),var(--nextra-primary-saturation),var(--nextra-primary-lightness),.3);\n}\nhtml {\n background: rgb(var(--nextra-bg));\n}"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"rgb(250,250,250)"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"rgb(17,17,17)"}],"$undefined"]}],["$","body",null,{"children":[["$","$Ld",null,{"value":{"darkMode":true,"docsRepositoryBase":"https://github.com/shuding/nextra","editLink":null,"feedback":{"content":null,"labels":"feedback"},"i18n":[],"lastUpdated":["$","$Le",null,{}],"navigation":{"next":true,"prev":true},"search":["$","$Lf",null,{}],"sidebar":{"defaultMenuCollapseLevel":1,"defaultOpen":true,"toggleButton":true},"themeSwitch":{"dark":"Dark","light":"Light","system":"System"},"toc":{"backToTop":"Scroll to top","float":true,"title":"On This Page"}},"children":["$","$L10",null,{"attribute":"class","disableTransitionOnChange":true,"children":[["$","$L11",null,{}],"$undefined",["$","$L12",null,{"pageMap":[{"data":{"index":{"type":"page","title":"Home"},"algorithm":{"type":"page","title":"算法"},"javascript":{"type":"page","title":"JavaScript"},"frontend":{"type":"page","title":"å‰ç«¯"},"OS":{"type":"page","title":"OS"},"misc":{"type":"page","title":"æ‚项"},"other":{"type":"page","title":"其他"},"links":{"type":"page","title":"Links ↗","theme":{"layout":"full","timestamp":false,"toc":false,"typesetting":"article"}},"*":{"type":"page"}}},{"name":"index","route":"/","frontMatter":{"title":"Index","filePath":"content/index.mdx","timestamp":1740644164000},"title":"Home"},{"name":"algorithm","route":"/algorithm","children":[{"data":{"sort":{"title":"排åº"},"search":{"title":"æœç´¢"},"dynamic_programming":{"title":"动æ€è§„划"},"tree":{"title":"æ ‘"},"lowest-common-ancestor-of-a-binary-tree":{"title":"二å‰æ ‘最近公共祖先"}}},{"name":"sort","route":"/algorithm/sort","frontMatter":{"title":"Sort","filePath":"content/algorithm/sort.mdx","timestamp":1740644164000},"title":"排åº"},{"name":"search","route":"/algorithm/search","frontMatter":{"title":"Search","filePath":"content/algorithm/search.mdx","timestamp":1740644164000},"title":"æœç´¢"},{"name":"dynamic_programming","route":"/algorithm/dynamic_programming","frontMatter":{"title":"Dynamic Programming","filePath":"content/algorithm/dynamic_programming.mdx","timestamp":1740644164000},"title":"动æ€è§„划"},{"name":"tree","route":"/algorithm/tree","frontMatter":{"title":"Tree","filePath":"content/algorithm/tree.mdx","timestamp":1740644164000},"title":"æ ‘"},{"name":"lowest-common-ancestor-of-a-binary-tree","route":"/algorithm/lowest-common-ancestor-of-a-binary-tree","frontMatter":{"title":"二å‰æ ‘最近公共祖先","filePath":"content/algorithm/lowest-common-ancestor-of-a-binary-tree.mdx","timestamp":1740644164000},"title":"二å‰æ ‘最近公共祖先"}],"title":"算法"},{"name":"javascript","route":"/javascript","children":[{"data":{"specification":{"title":"å‰ç«¯JS规范"},"new":{"title":"newæ“作符的原ç†"},"typeof":{"title":"æ•°æ®ç±»åž‹çš„判æ–"},"json-parse":{"title":"JSONæ¥å›žè½¬æ¢çš„å‘"},"call-apply-bind":{"title":"实现 callã€applyã€bind"},"tagFn":{"title":"æ ‡ç¾å‡½æ•°"},"Promise":{"title":"Promise"},"console":{"title":"Console 的使用"},"webworker":{"title":"Web Worker"},"add-params":{"title":"一ç§ç®€æ´çš„æ·»åŠ å…¥å‚的方法"},"QA":{"title":"常è§JS问题"},"Code":{"title":"常è§ä»£ç 片段","display":"hidden"}}},{"name":"specification","route":"/javascript/specification","frontMatter":{"title":"å‰ç«¯ JS 规范","filePath":"content/javascript/specification.mdx","timestamp":1740644164000},"title":"å‰ç«¯JS规范"},{"name":"new","route":"/javascript/new","frontMatter":{"title":"New","filePath":"content/javascript/new.mdx","timestamp":1740644164000},"title":"newæ“作符的原ç†"},{"name":"typeof","route":"/javascript/typeof","frontMatter":{"title":"Typeof","filePath":"content/javascript/typeof.mdx","timestamp":1740644164000},"title":"æ•°æ®ç±»åž‹çš„判æ–"},{"name":"json-parse","route":"/javascript/json-parse","frontMatter":{"title":"Json Parse","filePath":"content/javascript/json-parse.mdx","timestamp":1740644164000},"title":"JSONæ¥å›žè½¬æ¢çš„å‘"},{"name":"call-apply-bind","route":"/javascript/call-apply-bind","frontMatter":{"title":"Call Apply Bind","filePath":"content/javascript/call-apply-bind.mdx","timestamp":1740644164000},"title":"实现 callã€applyã€bind"},{"name":"tagFn","route":"/javascript/tagFn","frontMatter":{"title":"Tagfn","filePath":"content/javascript/tagFn.mdx","timestamp":1740644164000},"title":"æ ‡ç¾å‡½æ•°"},{"name":"Promise","route":"/javascript/Promise","frontMatter":{"title":"Promise 对象","filePath":"content/javascript/Promise.mdx","timestamp":1740644164000},"title":"Promise"},{"name":"console","route":"/javascript/console","frontMatter":{"title":"Console","filePath":"content/javascript/console.mdx","timestamp":1740644164000},"title":"Console 的使用"},{"name":"webworker","route":"/javascript/webworker","frontMatter":{"title":"Web Worker 的使用é™åˆ¶","filePath":"content/javascript/webworker.mdx","timestamp":1740644164000},"title":"Web Worker"},{"name":"add-params","route":"/javascript/add-params","frontMatter":{"title":"Add Params","filePath":"content/javascript/add-params.mdx","timestamp":1740644164000},"title":"一ç§ç®€æ´çš„æ·»åŠ å…¥å‚的方法"},{"name":"QA","route":"/javascript/QA","frontMatter":{"title":"Qa","filePath":"content/javascript/QA.mdx","timestamp":1740644164000},"title":"常è§JS问题"},{"name":"Code","route":"/javascript/Code","children":[{"name":"Async-Concurrent","route":"/javascript/Code/Async-Concurrent","frontMatter":{"title":"异æ¥ä»»åŠ¡å¹¶å‘é‡","filePath":"content/javascript/Code/Async-Concurrent.md","timestamp":1740644164000},"title":"异æ¥ä»»åŠ¡å¹¶å‘é‡"},{"name":"DeepClone","route":"/javascript/Code/DeepClone","frontMatter":{"title":"Deepclone","filePath":"content/javascript/Code/DeepClone.md","timestamp":1740644164000},"title":"Deepclone"},{"name":"Lazyman","route":"/javascript/Code/Lazyman","frontMatter":{"title":"Lazyman","filePath":"content/javascript/Code/Lazyman.md","timestamp":1740644164000},"title":"Lazyman"},{"name":"debounce&throttle","route":"/javascript/Code/debounce&throttle","frontMatter":{"title":"debounce&throttle(防抖与节æµï¼‰","filePath":"content/javascript/Code/debounce&throttle.md","timestamp":1740644164000},"title":"debounce&throttle(防抖与节æµï¼‰"},{"name":"deduplication","route":"/javascript/Code/deduplication","frontMatter":{"title":"Deduplication","filePath":"content/javascript/Code/deduplication.md","timestamp":1740644164000},"title":"Deduplication"},{"name":"flatArray","route":"/javascript/Code/flatArray","frontMatter":{"title":"Flatarray","filePath":"content/javascript/Code/flatArray.md","timestamp":1740644164000},"title":"Flatarray"},{"name":"getSum","route":"/javascript/Code/getSum","frontMatter":{"title":"Getsum","filePath":"content/javascript/Code/getSum.md","timestamp":1740644164000},"title":"Getsum"},{"name":"longest-substring","route":"/javascript/Code/longest-substring","frontMatter":{"title":"Longest Substring","filePath":"content/javascript/Code/longest-substring.md","timestamp":1740644164000},"title":"Longest Substring"},{"name":"reverse-linked-list","route":"/javascript/Code/reverse-linked-list","frontMatter":{"title":"å转链表","filePath":"content/javascript/Code/reverse-linked-list.md","timestamp":1740644164000},"title":"å转链表"},{"name":"threeSum","route":"/javascript/Code/threeSum","frontMatter":{"title":"三数之和","filePath":"content/javascript/Code/threeSum.md","timestamp":1740644164000},"title":"三数之和"}],"title":"常è§ä»£ç 片段"},{"name":"eventloop","route":"/javascript/eventloop","frontMatter":{"title":"Eventloop","filePath":"content/javascript/eventloop.mdx","timestamp":1740644164000},"title":"Eventloop"}],"title":"JavaScript"},{"name":"frontend","route":"/frontend","children":[{"name":"Basics","route":"/frontend/Basics","children":[{"data":{"Formatting-Context":{"title":"Formatting Context"},"css-selector":{"title":"css选择器"},"offsetAndSize":{"title":"å…ƒç´ çš„å¤§å°åŠä½ç½®"},"Hide-Element":{"title":"éšè—å…ƒç´ çš„å‡ ç§æ–¹æ³•"},"center":{"title":"水平垂直居ä¸"},"html-lifeCycle":{"title":"页é¢çš„生命周期"},"1px":{"title":"关于 1px 问题"}}},{"name":"Formatting-Context","route":"/frontend/Basics/Formatting-Context","frontMatter":{"title":"Formatting Context","filePath":"content/frontend/Basics/Formatting-Context.md","timestamp":1740644164000},"title":"Formatting Context"},{"name":"css-selector","route":"/frontend/Basics/css-selector","frontMatter":{"title":"CSS 选择器","filePath":"content/frontend/Basics/css-selector.md","timestamp":1740644164000},"title":"css选择器"},{"name":"offsetAndSize","route":"/frontend/Basics/offsetAndSize","frontMatter":{"title":"Offsetandsize","filePath":"content/frontend/Basics/offsetAndSize.md","timestamp":1740644164000},"title":"å…ƒç´ çš„å¤§å°åŠä½ç½®"},{"name":"Hide-Element","route":"/frontend/Basics/Hide-Element","frontMatter":{"title":"Hide Element","filePath":"content/frontend/Basics/Hide-Element.md","timestamp":1740644164000},"title":"éšè—å…ƒç´ çš„å‡ ç§æ–¹æ³•"},{"name":"center","route":"/frontend/Basics/center","frontMatter":{"title":"Center","filePath":"content/frontend/Basics/center.md","timestamp":1740644164000},"title":"水平垂直居ä¸"},{"name":"html-lifeCycle","route":"/frontend/Basics/html-lifeCycle","frontMatter":{"title":"页é¢ç”Ÿå‘½å‘¨æœŸ","filePath":"content/frontend/Basics/html-lifeCycle.mdx","timestamp":1740644164000},"title":"页é¢çš„生命周期"},{"name":"1px","route":"/frontend/Basics/1px","frontMatter":{"title":"关于 1px 问题","filePath":"content/frontend/Basics/1px.md","timestamp":1740644164000},"title":"关于 1px 问题"},{"name":"Flex","route":"/frontend/Basics/Flex","frontMatter":{"title":"Flex","filePath":"content/frontend/Basics/Flex.md","timestamp":1740644164000},"title":"Flex"}],"title":"Basics"},{"name":"Code","route":"/frontend/Code","children":[{"data":{"largeText":{"title":"页é¢å¤§æ–‡æœ¬å´©æºƒå¤„ç†"}}},{"name":"largeText","route":"/frontend/Code/largeText","frontMatter":{"title":"页é¢å¤§æ–‡æœ¬å´©æºƒå¤„ç†","filePath":"content/frontend/Code/largeText.mdx","timestamp":1740644164000},"title":"页é¢å¤§æ–‡æœ¬å´©æºƒå¤„ç†"}],"title":"Code"},{"name":"React","route":"/frontend/React","children":[{"data":{"react-old-new":{"title":"React æ–°è€æž¶æž„"},"fiber":{"title":"Fiber 架构"},"react-lifeCycle":{"title":"React 生命周期"},"React-Strict-Mode":{"title":"Reactçš„ä¸¥æ ¼æ¨¡å¼"},"React-Performance-Optimization":{"title":"React的性能优化"}}},{"name":"react-old-new","route":"/frontend/React/react-old-new","frontMatter":{"title":"React æ–°è€æž¶æž„","filePath":"content/frontend/React/react-old-new.mdx","timestamp":1740644164000},"title":"React æ–°è€æž¶æž„"},{"name":"fiber","route":"/frontend/React/fiber","frontMatter":{"title":"Fiber","filePath":"content/frontend/React/fiber.mdx","timestamp":1740644164000},"title":"Fiber 架构"},{"name":"react-lifeCycle","route":"/frontend/React/react-lifeCycle","frontMatter":{"title":"React Lifecycle","filePath":"content/frontend/React/react-lifeCycle.mdx","timestamp":1740644164000},"title":"React 生命周期"},{"name":"React-Strict-Mode","route":"/frontend/React/React-Strict-Mode","frontMatter":{"title":"React Strict Mode","filePath":"content/frontend/React/React-Strict-Mode.mdx","timestamp":1740644164000},"title":"Reactçš„ä¸¥æ ¼æ¨¡å¼"},{"name":"React-Performance-Optimization","route":"/frontend/React/React-Performance-Optimization","frontMatter":{"title":"React 的性能优化","filePath":"content/frontend/React/React-Performance-Optimization.mdx","timestamp":1740644164000},"title":"React的性能优化"},{"name":"State-Library","route":"/frontend/React/State-Library","frontMatter":{"title":"React 主æµçŠ¶æ€ç®¡ç†åº“","filePath":"content/frontend/React/State-Library.mdx","timestamp":1740644164000},"title":"React 主æµçŠ¶æ€ç®¡ç†åº“"}],"title":"React"},{"name":"misc","route":"/frontend/misc","children":[{"data":{"Modularization":{"title":"å‰ç«¯æ¨¡å—化规范"},"DevTools":{"title":"DevTools"},"Performance-Optimization":{"title":"性能优化"},"node-version-manager":{"title":"node 版本管ç†"},"client-fingerprint":{"title":"客户端指纹"}}},{"name":"Modularization","route":"/frontend/misc/Modularization","frontMatter":{"title":"é¢å¤–补充","filePath":"content/frontend/misc/Modularization.md","timestamp":1740644164000},"title":"å‰ç«¯æ¨¡å—化规范"},{"name":"DevTools","route":"/frontend/misc/DevTools","frontMatter":{"title":"Devtools","filePath":"content/frontend/misc/DevTools.md","timestamp":1740644164000},"title":"DevTools"},{"name":"Performance-Optimization","route":"/frontend/misc/Performance-Optimization","frontMatter":{"title":"Performance Optimization","filePath":"content/frontend/misc/Performance-Optimization.md","timestamp":1740644164000},"title":"性能优化"},{"name":"node-version-manager","route":"/frontend/misc/node-version-manager","frontMatter":{"title":"Node Version Manager","filePath":"content/frontend/misc/node-version-manager.md","timestamp":1740644164000},"title":"node 版本管ç†"},{"name":"client-fingerprint","route":"/frontend/misc/client-fingerprint","frontMatter":{"title":"客户端指纹","filePath":"content/frontend/misc/client-fingerprint.mdx","timestamp":1740644164000},"title":"客户端指纹"}],"title":"Misc"},{"name":"network","route":"/frontend/network","children":[{"data":{"http1.1&http2":{"title":"HTTP1.1 & HTTP2"},"http-cache":{"title":"HTTP缓å˜"},"browser-cross-origin":{"title":"æµè§ˆå™¨è·¨åŸŸ"}}},{"name":"http1.1&http2","route":"/frontend/network/http1.1&http2","frontMatter":{"title":"Http1.1&http2","filePath":"content/frontend/network/http1.1&http2.mdx","timestamp":1740644164000},"title":"HTTP1.1 & HTTP2"},{"name":"http-cache","route":"/frontend/network/http-cache","frontMatter":{"title":"HTTP Cache","filePath":"content/frontend/network/http-cache.mdx","timestamp":1740644164000},"title":"HTTP缓å˜"},{"name":"browser-cross-origin","route":"/frontend/network/browser-cross-origin","frontMatter":{"title":"æµè§ˆå™¨è·¨åŸŸ","filePath":"content/frontend/network/browser-cross-origin.mdx","timestamp":1740644164000},"title":"æµè§ˆå™¨è·¨åŸŸ"}],"title":"Network"}],"title":"å‰ç«¯"},{"name":"OS","route":"/OS","children":[{"name":"Android","route":"/OS/Android","children":[{"data":{"Android-record":{"title":"记录一些刷机常用的软件"},"Android-Optimize":{"title":"安å“优化"},"SECRET-CODE":{"title":"拨å·å¿«æ·é”®"}}},{"name":"Android-record","route":"/OS/Android/Android-record","frontMatter":{"title":"Android Record","filePath":"content/OS/Android/Android-record.mdx","timestamp":1740644164000},"title":"记录一些刷机常用的软件"},{"name":"Android-Optimize","route":"/OS/Android/Android-Optimize","frontMatter":{"title":"Android Optimize","filePath":"content/OS/Android/Android-Optimize.mdx","timestamp":1740644164000},"title":"安å“优化"},{"name":"SECRET-CODE","route":"/OS/Android/SECRET-CODE","frontMatter":{"title":"Secret Code","filePath":"content/OS/Android/SECRET-CODE.mdx","timestamp":1740644164000},"title":"拨å·å¿«æ·é”®"},{"name":"adb","route":"/OS/Android/adb","frontMatter":{"title":"Adb","filePath":"content/OS/Android/adb.mdx","timestamp":1740644164000},"title":"Adb"},{"name":"kernelsu-overlayfs","route":"/OS/Android/kernelsu-overlayfs","frontMatter":{"title":"Kernelsu Overlayfs","filePath":"content/OS/Android/kernelsu-overlayfs.mdx","timestamp":1740644164000},"title":"Kernelsu Overlayfs"}],"title":"Android"},{"name":"Global","route":"/OS/Global","children":[{"data":{"IPv6-set":{"title":"IPv6 设置"}}},{"name":"IPv6-set","route":"/OS/Global/IPv6-set","frontMatter":{"title":"Ipv6 Set","filePath":"content/OS/Global/IPv6-set.mdx","timestamp":1740644164000},"title":"IPv6 设置"}],"title":"Global"},{"name":"Linux","route":"/OS/Linux","children":[{"data":{"alpine-openrc":{"title":"Alpine 管ç†æœåŠ¡"},"sysctl-conf":{"title":"sysctl.conf"},"dpkgZstDeb":{"title":"dpkg 安装 zst çš„ deb 包"},"chinese-fonts":{"title":"ä¸æ–‡å—体é…ç½®"},"nix-vim":{"title":"简å•ä½¿ç”¨ nix 的包管ç†å™¨"}}},{"name":"alpine-openrc","route":"/OS/Linux/alpine-openrc","frontMatter":{"title":"Alpine Openrc","filePath":"content/OS/Linux/alpine-openrc.mdx","timestamp":1740644164000},"title":"Alpine 管ç†æœåŠ¡"},{"name":"sysctl-conf","route":"/OS/Linux/sysctl-conf","frontMatter":{"title":"Sysctl Conf","filePath":"content/OS/Linux/sysctl-conf.mdx","timestamp":1740644164000},"title":"sysctl.conf"},{"name":"dpkgZstDeb","route":"/OS/Linux/dpkgZstDeb","frontMatter":{"title":"解决 dpkg æ— æ³•å®‰è£… zst çš„ deb 包","filePath":"content/OS/Linux/dpkgZstDeb.mdx","timestamp":1740644164000},"title":"dpkg 安装 zst çš„ deb 包"},{"name":"chinese-fonts","route":"/OS/Linux/chinese-fonts","frontMatter":{"title":"Debian / Ubuntu","filePath":"content/OS/Linux/chinese-fonts.mdx","timestamp":1740644164000},"title":"ä¸æ–‡å—体é…ç½®"},{"name":"nix-vim","route":"/OS/Linux/nix-vim","frontMatter":{"title":"简å•ä½¿ç”¨ nix 的包管ç†å™¨","filePath":"content/OS/Linux/nix-vim.mdx","timestamp":1740644164000},"title":"简å•ä½¿ç”¨ nix 的包管ç†å™¨"},{"name":"Android-on-Linux","route":"/OS/Linux/Android-on-Linux","frontMatter":{"title":"Linux 下的 Android","filePath":"content/OS/Linux/Android-on-Linux.mdx","timestamp":1740644164000},"title":"Linux 下的 Android"},{"name":"dropbear","route":"/OS/Linux/dropbear","frontMatter":{"title":"Dropbear","filePath":"content/OS/Linux/dropbear.mdx","timestamp":1740644164000},"title":"Dropbear"},{"name":"oh-my-zsh","route":"/OS/Linux/oh-my-zsh","frontMatter":{"title":"Oh My Zsh","filePath":"content/OS/Linux/oh-my-zsh.mdx","timestamp":1740644164000},"title":"Oh My Zsh"},{"name":"swap","route":"/OS/Linux/swap","frontMatter":{"title":"Swap","filePath":"content/OS/Linux/swap.mdx","timestamp":1740644164000},"title":"Swap"},{"name":"zimfw","route":"/OS/Linux/zimfw","frontMatter":{"title":"Zimfw","filePath":"content/OS/Linux/zimfw.mdx","timestamp":1740644164000},"title":"Zimfw"}],"title":"Linux"},{"name":"Mac","route":"/OS/Mac","children":[{"name":"oh-my-zsh","route":"/OS/Mac/oh-my-zsh","frontMatter":{"title":"Oh My Zsh","filePath":"content/OS/Mac/oh-my-zsh.mdx","timestamp":1740644164000},"title":"Oh My Zsh"}],"title":"Mac"},{"name":"Windows","route":"/OS/Windows","children":[{"data":{"diskpart":{"title":"ç£ç›˜ç®¡ç†"}}},{"name":"diskpart","route":"/OS/Windows/diskpart","frontMatter":{"title":"Diskpart","filePath":"content/OS/Windows/diskpart.mdx","timestamp":1740644164000},"title":"ç£ç›˜ç®¡ç†"},{"name":"AutoStartup","route":"/OS/Windows/AutoStartup","frontMatter":{"title":"Autostartup","filePath":"content/OS/Windows/AutoStartup.md","timestamp":1740644164000},"title":"Autostartup"},{"name":"CacheDir","route":"/OS/Windows/CacheDir","frontMatter":{"title":"系统/常用软件的临时文件/缓å˜ç›®å½•","filePath":"content/OS/Windows/CacheDir.mdx","timestamp":1740644164000},"title":"系统/常用软件的临时文件/缓å˜ç›®å½•"},{"name":"Extensions","route":"/OS/Windows/Extensions","frontMatter":{"title":"Extensions","filePath":"content/OS/Windows/Extensions.mdx","timestamp":1740644164000},"title":"Extensions"},{"name":"Ventoy","route":"/OS/Windows/Ventoy","frontMatter":{"title":"Ventoy","filePath":"content/OS/Windows/Ventoy.mdx","timestamp":1740644164000},"title":"Ventoy"},{"name":"WindowsIOT","route":"/OS/Windows/WindowsIOT","frontMatter":{"title":"Windows 11 IOT Enterprise LTSC","filePath":"content/OS/Windows/WindowsIOT.mdx","timestamp":1740644164000},"title":"Windows 11 IOT Enterprise LTSC"},{"name":"oh-my-posh","route":"/OS/Windows/oh-my-posh","frontMatter":{"title":"使用 oh-my-posh 优化 Windows Terminal 体验","filePath":"content/OS/Windows/oh-my-posh.mdx","timestamp":1740644164000},"title":"使用 oh-my-posh 优化 Windows Terminal 体验"},{"name":"package-manager","route":"/OS/Windows/package-manager","frontMatter":{"title":"Package Manager","filePath":"content/OS/Windows/package-manager.mdx","timestamp":1740644164000},"title":"Package Manager"},{"name":"shortcut","route":"/OS/Windows/shortcut","frontMatter":{"title":"Windows é…置命令快æ·é”®","filePath":"content/OS/Windows/shortcut.mdx","timestamp":1740644164000},"title":"Windows é…置命令快æ·é”®"}],"title":"Windows"}],"title":"OS"},{"name":"misc","route":"/misc","children":[{"data":{"Dev":{"title":"å¼€å‘"},"EnvInstall":{"title":"环境安装"},"acme-sh":{"title":"acme.sh è¯ä¹¦ç®¡ç†"},"nginx-proxy":{"title":"Nginx åå‘代ç†"}}},{"name":"Dev","route":"/misc/Dev","children":[{"name":"git-config","route":"/misc/Dev/git-config","frontMatter":{"title":"git 一些常用的é…ç½®","filePath":"content/misc/Dev/git-config.md","timestamp":1740644164000},"title":"git 一些常用的é…ç½®"},{"name":"git-workflow","route":"/misc/Dev/git-workflow","frontMatter":{"title":"Git Workflow","filePath":"content/misc/Dev/git-workflow.md","timestamp":1740644164000},"title":"Git Workflow"}],"title":"å¼€å‘"},{"name":"EnvInstall","route":"/misc/EnvInstall","children":[{"name":"Docker","route":"/misc/EnvInstall/Docker","frontMatter":{"title":"Docker","filePath":"content/misc/EnvInstall/Docker.mdx","timestamp":1740644164000},"title":"Docker"},{"name":"build-base","route":"/misc/EnvInstall/build-base","frontMatter":{"title":"安装编译环境","filePath":"content/misc/EnvInstall/build-base.mdx","timestamp":1740644164000},"title":"安装编译环境"},{"name":"php","route":"/misc/EnvInstall/php","frontMatter":{"title":"PHP","filePath":"content/misc/EnvInstall/php.mdx","timestamp":1740644164000},"title":"PHP"}],"title":"环境安装"},{"name":"acme-sh","route":"/misc/acme-sh","frontMatter":{"title":"安装 acme.sh","filePath":"content/misc/acme-sh.mdx","timestamp":1740644164000},"title":"acme.sh è¯ä¹¦ç®¡ç†"},{"name":"nginx-proxy","route":"/misc/nginx-proxy","frontMatter":{"title":"Nginx Proxy","filePath":"content/misc/nginx-proxy.mdx","timestamp":1740644164000},"title":"Nginx åå‘代ç†"},{"name":"curl","route":"/misc/curl","frontMatter":{"title":"cURL","filePath":"content/misc/curl.mdx","timestamp":1740644164000},"title":"cURL"}],"title":"æ‚项"},{"name":"other","route":"/other","children":[{"data":{"tabby-web":{"title":"tabby 自建åŒæ¥æœåŠ¡ tabby-web 记录"},"prefer-mosdns":{"title":" 使用 mosdns æå‰è¿›è¡Œ dns 进行分æµ"},"openclash-dns-ipv4-prefer":{"title":"路由上的 OpenClash DNS åŒæ ˆä¼˜å…ˆ IPv4 é…ç½®"},"proxy-network":{"title":"科å¦ä¸Šç½‘"}}},{"name":"tabby-web","route":"/other/tabby-web","frontMatter":{"title":"tabby 自建 tabby-web åŒæ¥é…ç½®","filePath":"content/other/tabby-web.mdx","timestamp":1740644164000},"title":"tabby 自建åŒæ¥æœåŠ¡ tabby-web 记录"},{"name":"prefer-mosdns","route":"/other/prefer-mosdns","frontMatter":{"title":"使用 mosdns æå‰è¿›è¡Œ dns 进行分æµ","filePath":"content/other/prefer-mosdns.mdx","timestamp":1740644164000},"title":" 使用 mosdns æå‰è¿›è¡Œ dns 进行分æµ"},{"name":"openclash-dns-ipv4-prefer","route":"/other/openclash-dns-ipv4-prefer","frontMatter":{"title":"Openclash DNS Ipv4 Prefer","filePath":"content/other/openclash-dns-ipv4-prefer.mdx","timestamp":1740644164000},"title":"路由上的 OpenClash DNS åŒæ ˆä¼˜å…ˆ IPv4 é…ç½®"},{"name":"proxy-network","route":"/other/proxy-network","frontMatter":{"title":"Proxy Network","filePath":"content/other/proxy-network.mdx","timestamp":1740644164000},"title":"科å¦ä¸Šç½‘"}],"title":"其他"},{"name":"links","route":"/links","frontMatter":{"title":"Links","filePath":"content/links.mdx","timestamp":1740644164000},"title":"Links ↗"}],"navbar":["$","header",null,{"className":"nextra-navbar x:sticky x:top-0 x:z-30 x:w-full x:bg-transparent x:print:hidden x:max-md:[.nextra-banner:not([class$=hidden])~&]:top-(--nextra-banner-height)","children":[["$","div",null,{"className":"nextra-navbar-blur x:absolute x:-z-1 x:size-full nextra-border x:border-b x:backdrop-blur-md x:bg-nextra-bg/70"}],["$","nav",null,{"style":{"height":"var(--nextra-navbar-height)"},"className":"x:mx-auto x:flex x:max-w-(--nextra-content-width) x:items-center x:gap-4 x:pl-[max(env(safe-area-inset-left),1.5rem)] x:pr-[max(env(safe-area-inset-right),1.5rem)] x:justify-end","children":[["$","$L13",null,{"href":"/","className":"x:flex x:items-center x:me-auto x:transition-opacity x:focus-visible:nextra-focus x:hover:opacity-75","children":["$","div",null,{"className":"flex items-center space-x-2","children":["$","b",null,{"children":"mengshouer's web"}]}]}],["$","$L14",null,{"className":"","children":[["$","a",null,{"href":"https://github.com/mengshouer","target":"_blank","rel":"noreferrer","children":[["$","svg",null,{"fill":"currentColor","viewBox":"3 3 18 18","height":"24","children":["$","path",null,{"d":"$15"}]}],false],"className":"x:focus-visible:nextra-focus"}],"$undefined",["$","div",null,{"className":"flex items-center justify-center","children":["$","$L16",null,{}]}]]}]]}]]}],"footer":"$undefined","children":[["$","$L17",null,{}],["$","$L3",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]]}]]}]}],["$","$L18",null,{}],["$","$L19",null,{}]]}]]}] 1a:I[4431,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"Sidebar"] 1b:I[7946,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"ClientWrapper"] 1c:I[7232,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"HeadingAnchor"] 1d:I[1458,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"ToggleWordWrapButton"] 1e:I[2217,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"CopyToClipboard"] 1f:I[3344,["545","static/chunks/c16f53c3-ee54d6699103522a.js","954","static/chunks/954-18004590dc614f2c.js","728","static/chunks/728-7c60a700dd3f68c6.js","217","static/chunks/app/%5B%5B...mdxPath%5D%5D/page-9fef13f211ac4d14.js"],"ImageZoom"] 5:["$","div",null,{"className":"x:mx-auto x:flex x:max-w-(--nextra-content-width)","children":[["$","$L1a",null,{"toc":[{"value":"å‰è¨€","id":"å‰è¨€","depth":2},{"value":"使用 Github OAuth 验è¯ç™»å½•ï¼ˆå…¶ä»–的验è¯æ–¹å¼è‡ªå·±æ‘¸ç´¢å§ï¼‰","id":"使用-github-oauth-验è¯ç™»å½•å…¶ä»–的验è¯æ–¹å¼è‡ªå·±æ‘¸ç´¢å§","depth":2},{"value":"部署 tabby-web","id":"部署-tabby-web","depth":2},{"value":"é…ç½® nginx å代给 tabby-web 上域åå’Œ ssl è¯ä¹¦","id":"é…ç½®-nginx-å代给-tabby-web-上域åå’Œ-ssl-è¯ä¹¦","depth":2},{"value":"访问 tabby-web","id":"访问-tabby-web","depth":2}]}],["$","$L1b",null,{"toc":"$5:props:children:0:props:toc","metadata":{"title":"tabby 自建 tabby-web åŒæ¥é…ç½®","filePath":"content/other/tabby-web.mdx","timestamp":1740644164000},"bottomContent":"$undefined","children":[["$","div",null,{"id":"nextra-skip-nav"}],["$","main",null,{"data-pagefind-body":true,"children":[["$","h1",null,{"id":"$undefined","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-bold x:mt-2 x:text-4xl","children":["tabby 自建 tabby-web åŒæ¥é…ç½®","$undefined"]}],"\n",["$","h2",null,{"id":"å‰è¨€","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["å‰è¨€",["$","$L1c",null,{"id":"å‰è¨€"}]]}],"\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["tabby ä½œè€…å› ä¸º",["$","a",null,{"href":"https://github.com/Eugeny/tabby/issues/9131#issuecomment-1766092670","target":"_blank","rel":"noreferrer","className":"x:focus-visible:nextra-focus x:text-primary-600 x:underline x:hover:no-underline x:decoration-from-font x:[text-underline-position:from-font]","children":["ç»è´¹ä¸èµ·æœåŠ¡å™¨",[" ",["$","svg",null,{"fill":"none","stroke":"currentColor","strokeLinecap":"round","strokeLinejoin":"round","strokeWidth":1.7,"viewBox":"0 0 24 24","height":"1em","className":"x:inline x:align-baseline x:shrink-0","children":[["$","path",null,{"d":"M7 17L17 7"}],["$","path",null,{"d":"M7 7h10v10"}]]}]]]}],",所以关é—了 ",["$","a",null,{"href":"https://github.com/Eugeny/tabby-web","target":"_blank","rel":"noreferrer","className":"x:focus-visible:nextra-focus x:text-primary-600 x:underline x:hover:no-underline x:decoration-from-font x:[text-underline-position:from-font]","children":["tabby-web",[" ",["$","svg",null,{"fill":"none","stroke":"currentColor","strokeLinecap":"round","strokeLinejoin":"round","strokeWidth":1.7,"viewBox":"0 0 24 24","height":"1em","className":"x:inline x:align-baseline x:shrink-0","children":[["$","path",null,{"d":"M7 17L17 7"}],["$","path",null,{"d":"M7 7h10v10"}]]}]]]}]," æœåŠ¡ã€‚"]}],"\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"tabby é…置完åŒæ¥ä¹‹åŽå¯ä»¥å¾ˆæ–¹ä¾¿çš„在ä¸åŒçš„地方直接登录æœåŠ¡å™¨ï¼Œå°¤å…¶æ˜¯ æœåŠ¡å™¨çš„ key 也能åŒæ¥ã€‚"}],"\n",["$","h2",null,{"id":"使用-github-oauth-验è¯ç™»å½•å…¶ä»–的验è¯æ–¹å¼è‡ªå·±æ‘¸ç´¢å§","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["使用 Github OAuth 验è¯ç™»å½•ï¼ˆå…¶ä»–的验è¯æ–¹å¼è‡ªå·±æ‘¸ç´¢å§ï¼‰",["$","$L1c",null,{"id":"使用-github-oauth-验è¯ç™»å½•å…¶ä»–的验è¯æ–¹å¼è‡ªå·±æ‘¸ç´¢å§"}]]}],"\n",["$","ol",null,{"className":"x:[:is(ol,ul)_&]:my-3 x:not-first:mt-6 x:list-decimal x:ms-6","children":["\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["在 ",["$","a",null,{"href":"https://github.com/settings/developers","target":"_blank","rel":"noreferrer","className":"x:focus-visible:nextra-focus x:text-primary-600 x:underline x:hover:no-underline x:decoration-from-font x:[text-underline-position:from-font]","children":["https://github.com/settings/developers",[" ",["$","svg",null,{"fill":"none","stroke":"currentColor","strokeLinecap":"round","strokeLinejoin":"round","strokeWidth":1.7,"viewBox":"0 0 24 24","height":"1em","className":"x:inline x:align-baseline x:shrink-0","children":[["$","path",null,{"d":"M7 17L17 7"}],["$","path",null,{"d":"M7 7h10v10"}]]}]]]}]," 点击 New OAuth App"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"Application name å’Œ Homepage URL 都按照自己实际æ¥å°±è¡Œäº†ï¼Œæ¯”å¦‚å°±å« tabby-web å’Œ 自己网站主页"}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["主è¦æ˜¯ Authorization callback URL è¦å¡«å†™ï¼š",["$","a",null,{"href":"https://%E4%BD%A0%E7%9A%84%E5%9F%9F%E5%90%8D/api/1/auth/social/complete/github/","target":"_blank","rel":"noreferrer","className":"x:focus-visible:nextra-focus x:text-primary-600 x:underline x:hover:no-underline x:decoration-from-font x:[text-underline-position:from-font]","children":["https://ä½ çš„åŸŸå/api/1/auth/social/complete/github/",[" ",["$","svg",null,{"fill":"none","stroke":"currentColor","strokeLinecap":"round","strokeLinejoin":"round","strokeWidth":1.7,"viewBox":"0 0 24 24","height":"1em","className":"x:inline x:align-baseline x:shrink-0","children":[["$","path",null,{"d":"M7 17L17 7"}],["$","path",null,{"d":"M7 7h10v10"}]]}]]]}]]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"之åŽç‚¹å‡» Register application 注册应用,然åŽä¼šè¿›åˆ°åº”用页"}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"点击 Generate a new client secret 生æˆä¸€ä¸ª client secret(åªå±•ç¤ºä¸€æ¬¡å€¼ï¼‰"}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"记录下 Client ID å’Œ 刚æ‰ç”Ÿæˆçš„ Client secret"}],"\n"]}],"\n"]}],"\n",["$","h2",null,{"id":"部署-tabby-web","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["部署 tabby-web",["$","$L1c",null,{"id":"部署-tabby-web"}]]}],"\n",["$","blockquote",null,{"className":"x:not-first:mt-6 x:border-gray-300 x:italic x:text-gray-700 x:dark:border-gray-700 x:dark:text-gray-400 x:border-s-2 x:ps-6","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"这里使用的是 docker å’Œ docker-compose æ¥éƒ¨ç½²"}],"\n"]}],"\n",["$","div",null,{"data-pagefind-ignore":"$undefined","className":"nextra-code x:relative x:not-first:mt-6","children":["$undefined",["$","pre",null,{"className":"x:group x:focus-visible:nextra-focus x:overflow-x-auto x:subpixel-antialiased x:text-[.9em] x:bg-white x:dark:bg-black x:py-4 x:ring-1 x:ring-inset x:ring-gray-300 x:dark:ring-neutral-700 x:contrast-more:ring-gray-900 x:contrast-more:dark:ring-gray-50 x:contrast-more:contrast-150 x:rounded-md not-prose","tabIndex":"0","children":[["$","div",null,{"className":"x:group-hover:opacity-100 x:group-focus:opacity-100 x:opacity-0 x:transition x:focus-within:opacity-100 x:flex x:gap-1 x:absolute x:right-4 x:top-2","children":[["$","$L1d",null,{"children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"currentColor","height":"1em","children":["$","path",null,{"d":"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"}]}]}],["$","$L1e",null,{"className":""}]]}],["$","code",null,{"className":"nextra-code","dir":"ltr","children":[["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#6A737D","--shiki-dark":"#6A737D"},"children":"# 一键安装 docker"}]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#6F42C1","--shiki-dark":"#B392F0"},"children":"curl"}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":" -fsSL"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" https://get.docker.com"}],["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" |"}],["$","span",null,{"style":{"--shiki-light":"#6F42C1","--shiki-dark":"#B392F0"},"children":" bash"}]]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#6A737D","--shiki-dark":"#6A737D"},"children":"# 改用国内镜åƒ"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#6A737D","--shiki-dark":"#6A737D"},"children":"# curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#6A737D","--shiki-dark":"#6A737D"},"children":"# 安装 docker-compose(debian/ubuntu)"}]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#6F42C1","--shiki-dark":"#B392F0"},"children":"apt"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" install"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" docker-compose"}]]}]]}]]}]]}],"\n",["$","ol",null,{"className":"x:[:is(ol,ul)_&]:my-3 x:not-first:mt-6 x:list-decimal x:ms-6","children":["\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["连上æœåŠ¡å™¨åŽï¼Œæ–°å»ºä¸ª ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"tabby-web"}]," 目录,å˜æ”¾ tabby-web 的相关数æ®"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["创建 ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"docker-compose.yml"}]," 文件"]}],"\n"]}],"\n"]}],"\n",["$","blockquote",null,{"className":"x:not-first:mt-6 x:border-gray-300 x:italic x:text-gray-700 x:dark:border-gray-700 x:dark:text-gray-400 x:border-s-2 x:ps-6","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["这里直接使用了 host 宿主机的网络,如果 9000 端å£è¢«å 了的è¯è‡ªå·±æ”¹ä¸€ä¸ªï¼Œæ•°æ®å˜åœ¨å½“å‰ç›®å½•çš„ ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"data"}]," 目录下"]}],"\n"]}],"\n",["$","blockquote",null,{"className":"x:not-first:mt-6 x:border-gray-300 x:italic x:text-gray-700 x:dark:border-gray-700 x:dark:text-gray-400 x:border-s-2 x:ps-6","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"ghcr.io é•œåƒåœ°å€å›½å†…机å访问å¯èƒ½ä¼šæœ‰é—®é¢˜ï¼Œè‡ªè¡Œä½¿ç”¨ä»£ç†æˆ–者镜åƒåœ°å€"}],"\n"]}],"\n",["$","div",null,{"data-pagefind-ignore":"$undefined","className":"nextra-code x:relative x:not-first:mt-6","children":["$undefined",["$","pre",null,{"className":"x:group x:focus-visible:nextra-focus x:overflow-x-auto x:subpixel-antialiased x:text-[.9em] x:bg-white x:dark:bg-black x:py-4 x:ring-1 x:ring-inset x:ring-gray-300 x:dark:ring-neutral-700 x:contrast-more:ring-gray-900 x:contrast-more:dark:ring-gray-50 x:contrast-more:contrast-150 x:rounded-md not-prose","tabIndex":"0","children":[["$","div",null,{"className":"x:group-hover:opacity-100 x:group-focus:opacity-100 x:opacity-0 x:transition x:focus-within:opacity-100 x:flex x:gap-1 x:absolute x:right-4 x:top-2","children":[["$","$L1d",null,{"children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"currentColor","height":"1em","children":["$","path",null,{"d":"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"}]}]}],["$","$L1e",null,{"className":""}]]}],["$","code",null,{"className":"nextra-code","dir":"ltr","children":[["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#6F42C1","--shiki-dark":"#B392F0"},"children":"mkdir"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" tabby-web"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":"cd"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" tabby-web"}]]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#6A737D","--shiki-dark":"#6A737D"},"children":"# 使用 > 写入内容到 docker-compose.yml 文件"}]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#6F42C1","--shiki-dark":"#B392F0"},"children":"cat"}],["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" <<"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":"EOF"}],["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" >"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" docker-compose.yml"}]]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":"version: '3.0'"}]}],"\n",["$","span",null,{"children":" "}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":"services:"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" tabby-web:"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" image: ghcr.io/eugeny/tabby-web:latest"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" container_name: tabby-web"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" restart: unless-stopped"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" network_mode: host"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" volumes:"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" - ./data:/data"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" environment:"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" - DATABASE_URL=sqlite:////data/db.sqlite3"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" - DEBUG=False"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" - PORT=9000"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" - APP_DIST_STORAGE=file:///data"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" - SOCIAL_AUTH_GITHUB_KEY=刚æ‰èŽ·å–çš„ Client ID"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" - SOCIAL_AUTH_GITHUB_SECRET=刚æ‰èŽ·å–çš„ Client secret"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" logging:"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" driver: \"json-file\""}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" options:"}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" max-size: \"5m\""}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" max-file: \"5\""}]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":"EOF"}]}]]}]]}]]}],"\n",["$","ol",null,{"className":"x:[:is(ol,ul)_&]:my-3 x:not-first:mt-6 x:list-decimal x:ms-6","start":"3","children":["\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["修改 ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"docker-compose.yml"}]," 文件ä¸çš„ ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"SOCIAL_AUTH_GITHUB_KEY"}]," å’Œ ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"SOCIAL_AUTH_GITHUB_SECRET"}]," 为刚æ‰èŽ·å–çš„ Client ID å’Œ Client secret"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"å¯åŠ¨ tabby-web"}],"\n"]}],"\n"]}],"\n",["$","div",null,{"data-pagefind-ignore":"$undefined","className":"nextra-code x:relative x:not-first:mt-6","children":["$undefined",["$","pre",null,{"className":"x:group x:focus-visible:nextra-focus x:overflow-x-auto x:subpixel-antialiased x:text-[.9em] x:bg-white x:dark:bg-black x:py-4 x:ring-1 x:ring-inset x:ring-gray-300 x:dark:ring-neutral-700 x:contrast-more:ring-gray-900 x:contrast-more:dark:ring-gray-50 x:contrast-more:contrast-150 x:rounded-md not-prose","tabIndex":"0","children":[["$","div",null,{"className":"x:group-hover:opacity-100 x:group-focus:opacity-100 x:opacity-0 x:transition x:focus-within:opacity-100 x:flex x:gap-1 x:absolute x:right-4 x:top-2","children":[["$","$L1d",null,{"children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"currentColor","height":"1em","children":["$","path",null,{"d":"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"}]}]}],["$","$L1e",null,{"className":""}]]}],["$","code",null,{"className":"nextra-code","dir":"ltr","children":["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#6F42C1","--shiki-dark":"#B392F0"},"children":"docker-compose"}],["$","span",null,{"style":{"--shiki-light":"#032F62","--shiki-dark":"#9ECBFF"},"children":" up"}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":" -d"}]]}]}]]}]]}],"\n",["$","h2",null,{"id":"é…ç½®-nginx-å代给-tabby-web-上域åå’Œ-ssl-è¯ä¹¦","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["é…ç½® nginx å代给 tabby-web 上域åå’Œ ssl è¯ä¹¦",["$","$L1c",null,{"id":"é…ç½®-nginx-å代给-tabby-web-上域åå’Œ-ssl-è¯ä¹¦"}]]}],"\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"到这一æ¥ä½ 也å¯ä»¥ç›´æŽ¥è®¿é—® ip:端å£æ‰“开网页了,ä¸è¿‡æ”¾åˆ°å…¬ç½‘çš„è¯ï¼Œè¿˜æ˜¯å»ºè®®åŠ 个域åé…个è¯ä¹¦ï¼Œè¿™é‡Œç»™ä¸€ä»½ nginx å代的示例"}],"\n",["$","div",null,{"data-pagefind-ignore":"$undefined","className":"nextra-code x:relative x:not-first:mt-6","children":["$undefined",["$","pre",null,{"className":"x:group x:focus-visible:nextra-focus x:overflow-x-auto x:subpixel-antialiased x:text-[.9em] x:bg-white x:dark:bg-black x:py-4 x:ring-1 x:ring-inset x:ring-gray-300 x:dark:ring-neutral-700 x:contrast-more:ring-gray-900 x:contrast-more:dark:ring-gray-50 x:contrast-more:contrast-150 x:rounded-md not-prose","tabIndex":"0","children":[["$","div",null,{"className":"x:group-hover:opacity-100 x:group-focus:opacity-100 x:opacity-0 x:transition x:focus-within:opacity-100 x:flex x:gap-1 x:absolute x:right-4 x:top-2","children":[["$","$L1d",null,{"children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"currentColor","height":"1em","children":["$","path",null,{"d":"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"}]}]}],["$","$L1e",null,{"className":""}]]}],["$","code",null,{"className":"nextra-code","dir":"ltr","children":[["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":"server"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" {"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" listen "}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":" 80"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":";"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" listen "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" [::]:80;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" server_name "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"ä½ çš„åŸŸå;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" return"}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":" 302"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" https://$host${request_uri};"}]]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"}"}]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":"server"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" {"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" listen "}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":"443"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" ssl;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" listen "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"[::]:443 ssl;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" http2 "}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":"on"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":";"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" server_name "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" ä½ çš„åŸŸå;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" ssl_certificate "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" /path/to/your/ssl/cert.pem;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" ssl_certificate_key "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"/path/to/your/ssl/key.pem;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" ssl_session_timeout "}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":"5m"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":";"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" ssl_protocols "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" ssl_ciphers "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:-LOW:!aNULL:!eNULL;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" ssl_prefer_server_ciphers "}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":" on"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":";"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" add_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"Access-Control-Allow-Origin *;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" add_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"Access-Control-Allow-Headers X-Requested-Wit,content-typeh;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" add_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"Access-Control-Allow-Methods GET,POST,OPTIONS;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" location"}],["$","span",null,{"style":{"--shiki-light":"#6F42C1","--shiki-dark":"#B392F0"},"children":" / "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"{"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" proxy_set_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"X-Forwarded-For $proxy_add_x_forwarded_for;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" proxy_set_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"Host $http_host;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" proxy_set_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"X-Real-IP $remote_addr;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" proxy_set_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"Range $http_range;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" proxy_set_header "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"If-Range $http_if_range;"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" proxy_redirect "}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":"off"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":";"}]]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" proxy_pass "}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"http://127.0.0.1:9000;"}]]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":" }"}]}],"\n",["$","span",null,{"children":[["$","span",null,{"style":{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"},"children":" access_log "}],["$","span",null,{"style":{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"},"children":" off"}],["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":";"}]]}],"\n",["$","span",null,{"children":["$","span",null,{"style":{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"},"children":"}"}]}]]}]]}]]}],"\n",["$","h2",null,{"id":"访问-tabby-web","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["访问 tabby-web",["$","$L1c",null,{"id":"访问-tabby-web"}]]}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-3 x:not-first:mt-6 x:list-disc x:ms-6","children":["\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["å› ä¸ºæˆ‘ä»¬æ²¡æœ‰é…ç½® ",["$","a",null,{"href":"https://github.com/Eugeny/tabby-connection-gateway","target":"_blank","rel":"noreferrer","className":"x:focus-visible:nextra-focus x:text-primary-600 x:underline x:hover:no-underline x:decoration-from-font x:[text-underline-position:from-font]","children":["tabby-connection-gateway",[" ",["$","svg",null,{"fill":"none","stroke":"currentColor","strokeLinecap":"round","strokeLinejoin":"round","strokeWidth":1.7,"viewBox":"0 0 24 24","height":"1em","className":"x:inline x:align-baseline x:shrink-0","children":[["$","path",null,{"d":"M7 17L17 7"}],["$","path",null,{"d":"M7 7h10v10"}]]}]]]}]," æ‰€ä»¥æ˜¯æ— æ³•åœ¨ç½‘é¡µç™»å½•æœåŠ¡å™¨çš„"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"ä¸è¿‡æˆ‘们的目的åªæ˜¯é…ç½®åŒæ¥ï¼Œç›´æŽ¥ç‚¹å‡»ç½‘页左下角的登录按钮,选择 github 登录å³å¯"}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"之åŽåœ¨å·¦ä¸‹è§’点击设置按钮,å¤åˆ¶ Config sync 下é¢çš„ token"}],"\n"]}],"\n",["$","li",null,{"className":"x:my-2","children":["\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":"在 tabby çš„é…ç½®åŒæ¥ä¸ï¼Œä¿®æ”¹åŒæ¥çš„地å€ï¼Œç„¶åŽå°† token 填入到åŒæ¥ token 的地方就行了"}],"\n"]}],"\n"]}],"\n",["$","p",null,{"className":"x:not-first:mt-6 x:leading-7","children":["$","$L1f",null,{"alt":"tabby","placeholder":"blur","src":{"src":"/_next/static/media/tabby.e18b7807.png","height":667,"width":909,"blurDataURL":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAMAAADJ2y/JAAAAFVBMVEUmMjgpNj0hKzAWHiQwPUgfNFUpP2BuodOPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAKUlEQVR4nCXKwQ0AMAzCQEMD+48cRb2vjRhxZoRt075jcJsk6KIk/gkLC2sAZeXfNq0AAAAASUVORK5CYII=","blurWidth":8,"blurHeight":6}}]}]]}]]}]]}] b:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] 9:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"tabby 自建 tabby-web åŒæ¥é…ç½®"}],["$","meta","2",{"name":"description","content":"mengshouer's web"}],["$","meta","3",{"name":"application-name","content":"mengshouer's web"}],["$","meta","4",{"name":"generator","content":"Next.js"}],["$","meta","5",{"name":"keywords","content":"Nextra,Next.js,React,JavaScript,MDX,Markdown,Static Site Generator,mengshouer,blog,SnowFox,雪ç‹,xn--e5x138e"}],["$","meta","6",{"name":"msapplication-TileColor","content":"#fff"}],["$","link","7",{"rel":"canonical","href":"https://www.xn--e5x138e.com/other/tabby-web"}],["$","meta","8",{"name":"mobile-web-app-capable","content":"yes"}],["$","meta","9",{"name":"apple-mobile-web-app-title","content":"mengshouer's web"}],["$","meta","10",{"name":"apple-mobile-web-app-status-bar-style","content":"default"}]] 7:null