rewrite 2026-09 and 2027 articles for reader-facing quality
Build and deploy / deploy (push) Successful in 18s

This commit is contained in:
2026-07-31 22:26:56 +03:00
parent 3bfc3f21c4
commit 440c8721dc
69 changed files with 4424 additions and 3533 deletions
@@ -1,12 +1,29 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="720" viewBox="0 0 1200 720" role="img" aria-labelledby="title desc">
<title id="title">Карта вопроса HTTP и TLS на май 2027</title><desc id="desc">Схема отделяет HTTP-семантику, framing, TLS handshake и policy клиента. Они передают только синтетический вопрос будущему владельцу; красные блоки запрещают endpoint, команду и вывод о соединении.</desc>
<rect width="1200" height="720" fill="#f7fafc"/><style>text{font-family:Arial,sans-serif;fill:#172033}.h{font-size:30px;font-weight:700}.s{font-size:20px;font-weight:700}.b{font-size:17px}.box{fill:#fff;stroke:#3976a8;stroke-width:3}.stop{fill:#fff1f1;stroke:#bd3f3f;stroke-width:3}.out{fill:#edf8f1;stroke:#2d8a59;stroke-width:3}.line{stroke:#5d7085;stroke-width:3;marker-end:url(#a)}</style><defs><marker id="a" markerWidth="10" markerHeight="10" refX="9" refY="3" orient="auto"><path d="M0,0 L0,6 L9,3z" fill="#5d7085"/></marker></defs>
<text x="52" y="54" class="h">HTTP и TLS: карта будущего вопроса, не сетевой отчёт</text>
<rect x="55" y="105" width="250" height="120" rx="12" class="box"/><text x="80" y="145" class="s">HTTP semantics</text><text x="80" y="176" class="b">method / status / header</text><text x="80" y="202" class="b">не observed message</text>
<rect x="55" y="310" width="250" height="120" rx="12" class="box"/><text x="80" y="350" class="s">HTTP framing</text><text x="80" y="381" class="b">named version question</text><text x="80" y="407" class="b">не wire bytes</text>
<rect x="450" y="105" width="270" height="120" rx="12" class="box"/><text x="478" y="145" class="s">TLS handshake</text><text x="478" y="176" class="b">named TLS boundary</text><text x="478" y="202" class="b">не certificate/result</text>
<rect x="450" y="310" width="270" height="120" rx="12" class="box"/><text x="478" y="350" class="s">Client policy</text><text x="478" y="381" class="b">trust / proxy question</text><text x="478" y="407" class="b">не hidden config</text>
<rect x="860" y="185" width="280" height="140" rx="12" class="out"/><text x="890" y="228" class="s">Hand-off</text><text x="890" y="259" class="b">2027-05 / cutoff</text><text x="890" y="285" class="b">productionEffect: not-attempted</text>
<rect x="380" y="510" width="460" height="115" rx="12" class="stop"/><text x="410" y="550" class="s">STOP</text><text x="410" y="581" class="b">endpoint, command, trace, config или «соединение успешно»</text>
<path d="M305 165H450" class="line"/><path d="M305 370H450" class="line"/><path d="M720 165H860" class="line"/><path d="M720 370H860" class="line"/><path d="M590 430V510" class="line"/>
<svg xmlns="http://www.w3.org/2000/svg" width="750" height="480" viewBox="0 0 750 480" role="img" aria-labelledby="title desc">
<title id="title">Уровни HTTP и TLS</title>
<desc id="desc">Диагностическая цепочка от имени и порта через TLS к HTTP и обработчику приложения.</desc>
<rect width="750" height="480" rx="24" fill="#f8fafc"/>
<text x="40" y="52" font-family="Arial,sans-serif" font-size="26" font-weight="700" fill="#172033">Где остановился запрос</text>
<g font-family="Arial,sans-serif">
<rect x="40" y="100" width="150" height="150" rx="18" fill="#e0f2fe" stroke="#0284c7" stroke-width="3"/>
<text x="115" y="145" text-anchor="middle" font-size="24" font-weight="700" fill="#075985">DNS / TCP</text>
<text x="115" y="184" text-anchor="middle" font-size="20" fill="#0c4a6e">имя</text>
<text x="115" y="214" text-anchor="middle" font-size="20" fill="#0c4a6e">и порт</text>
<path d="M200 175h35" stroke="#475569" stroke-width="4"/><path d="m235 175-12-8v16z" fill="#475569"/>
<rect x="250" y="100" width="150" height="150" rx="18" fill="#ede9fe" stroke="#7c3aed" stroke-width="3"/>
<text x="325" y="145" text-anchor="middle" font-size="24" font-weight="700" fill="#5b21b6">TLS</text>
<text x="325" y="184" text-anchor="middle" font-size="20" fill="#4c1d95">hostname</text>
<text x="325" y="214" text-anchor="middle" font-size="20" fill="#4c1d95">и SAN</text>
<path d="M410 175h35" stroke="#475569" stroke-width="4"/><path d="m445 175-12-8v16z" fill="#475569"/>
<rect x="460" y="100" width="150" height="150" rx="18" fill="#dcfce7" stroke="#16a34a" stroke-width="3"/>
<text x="535" y="145" text-anchor="middle" font-size="24" font-weight="700" fill="#166534">HTTP</text>
<text x="535" y="184" text-anchor="middle" font-size="20" fill="#14532d">метод</text>
<text x="535" y="214" text-anchor="middle" font-size="20" fill="#14532d">путь · статус</text>
<path d="M620 175h35" stroke="#475569" stroke-width="4"/><path d="m655 175-12-8v16z" fill="#475569"/>
<rect x="670" y="100" width="40" height="150" rx="12" fill="#fef3c7" stroke="#d97706" stroke-width="3"/>
<text x="690" y="160" text-anchor="middle" font-size="18" font-weight="700" fill="#92400e" transform="rotate(90 690 160)">handler</text>
</g>
<rect x="40" y="315" width="670" height="105" rx="16" fill="#fff" stroke="#cbd5e1" stroke-width="2"/>
<text x="62" y="352" font-family="Arial,sans-serif" font-size="22" font-weight="700" fill="#172033">Правило проверки</text>
<text x="62" y="385" font-family="Arial,sans-serif" font-size="20" fill="#334155">Статус HTTP подтверждает TLS, но не наоборот.</text>
<text x="62" y="412" font-family="Arial,sans-serif" font-size="20" fill="#334155">Фиксируем первый слой, о котором есть наблюдение.</text>
</svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB