πŸ’Ύ Archived View for betahowto.duckdns.org β€Ί gemini_protocol captured on 2024-02-05 at 09:28:18. Gemini links have been rewritten to link to archived content

View Raw

More Information

➑️ Next capture (2024-03-21)

-=-=-=-=-=-=-

Gemini (ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»)

Gemini - сСтСвой ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ наслСдником ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Gopher.

ΠžΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΠ·ΠΌ ΠΈ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ использованиС Ρ‚Π°ΠΊΠΈΡ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΊΠ°ΠΊ сТатиС, Cookies ΠΈ JavaScript;

Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ тСкстом ΠΈΠ»ΠΈ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ являСтся подпись TLS.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π΅Π½ ΠΈ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ рСсурсов: ΠΊΠ°ΠΊ хостинг статичСских Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ‚Π°ΠΊ ΠΈ систСмы с Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… запросов - Ρ„ΠΎΡ€ΡƒΠΌΡ‹, поисковыС систСмы, организация Ρ€Π°Π΄ΠΈΠΎ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ вСщания, ΠΎΠ±ΠΌΠ΅Π½ изобраТСниями ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Π’ Π²ΠΈΠ΄Ρƒ своих характСристик, Gemini Π±ΡƒΠ΄Π΅Ρ‚ интСрСсСн Ρ‚Π΅ΠΌ, ΠΊΠΎΠ³ΠΎ Π½Π΅ устраиваСт "Ρ€Π°Π·Π΄ΡƒΡ‚ΠΎΡΡ‚ΡŒ" соврСмСнного ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, E-ink ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ΠΎΠ².

ВСрминология

Как ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… экосистСмах, для Gemini Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Π° своя тСрминология, Π·Π½Π°Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ контСкст ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ поисковыС запросы.

Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°

Gemtext

ВСкстовыС рСсурсы gemtext - это ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст (MIME text/gemini) ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ содСрТащий ΠΌΠ΅Ρ‚Π°-Ρ‚Π΅Π³ΠΈ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки:


# h1
## h2
### h3
=> ссылка
> Ρ†ΠΈΡ‚Π°Ρ‚Π°

исходный ΠΊΠΎΠ΄


НСкоторыС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ inline:



_underline_

Π’ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ΅ gemini Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π²Ρ€ΠΎΠ΄Π΅ CSS, ΠΏΡ€ΠΈ этом Π·Π°Π΄Π°Ρ‡Π° отрисовки рСсурса выполняСтся Π½Π° сторонС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π΄Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ.

Gemfeed

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ тСкстовый Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Π½Π΅ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ использованиС Ρ‚Π΅Π³ΠΎΠ², Ρ‚Π°ΠΊΠΈΠ΅ стандарты ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΊ Atom ΠΈ RSS, Π±Π΅Π· Π²Π½Π΅ΡˆΠ½ΠΈΡ… срСдств ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ( https://tildegit.org/solderpunk/gemfeed ), Π² Gemini Π½Π΅ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹.

НСсмотря Π½Π° это, Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ подписки Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ - срСдствами стандарта ( https://geminiprotocol.net/docs/companion/subscription.gmi ) для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° gemtext.

Говоря ΠΏΡ€ΠΎΡ‰Π΅, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» сохраняСт Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎ-ΠΏΠΎΠ½ΡΡ‚Π½ΡƒΡŽ структуру Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΏΡ€ΠΈ этом позволяСт клиСнтским прилоТСниям ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ обновлСния.

<WRAP round info 60%>

Π’ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Lagrange, ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° обновлСния страницы ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ мСню Bookmarks - Subscribe to page... ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ страницС способ (мСню подписок: View - Show Feeds)

</WRAP>

ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π΄Π°Ρ‚Π΅

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅, осущСствляСтся отслСТиваниС ΠΏΠΎ Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ ΠΈΠ΄ΡƒΡ‰Π΅ΠΉ Π·Π° ссылкой Π΄Π°Ρ‚Π΅, Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ISO 8601 (Y-m-d), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

/index.gmi


# Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ страницы, выполняСт Ρ€ΠΎΠ»ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Ρ„ΠΈΠ΄Π°

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π°, игнорируСтся

=> /index.gmi любая ссылка, игнорируСтся

## ΠŸΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π» страницы, игнорируСтся

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ содСрТимоС ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π°, игнорируСтся

## ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

=> /pub1.gmi 2024-01-28 Бсылка Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ, отслСТиваСтся
=> /pub2.gmi 2024-01-29 Бсылка Π½Π° Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ, отслСТиваСтся
=> /pub3.gmi Бсылка ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ, Π½Π΅ отслСТиваСтся (Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ содСрТит Π΄Π°Ρ‚Ρ‹)
=> /pub4.gmi Бсылка ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ, Π½Π΅ отслСТиваСтся (Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΄Π°Ρ‚Π° являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°) 2024-01-30

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π½Π΅ тСряСт Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ для Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΈ ΠΏΡ€ΠΈ этом содСрТит ΠΌΠ΅Ρ‚Π°-ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ для ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ.

ЕдинствСнный нСдостаток Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ обновлСния нСльзя ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Ρ‡Π°Ρ‰Π΅, Ρ‡Π΅ΠΌ Ρ€Π°Π· Π² сутки.

Как заявлСно Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, связано это с Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·ΠΎΠ½ΠΎΠΉ.

ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌ

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ измСнСния Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°

blog.gmi


# Мой Π±Π»ΠΎΠ³, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΠΈΠ΄Π°

ΠŸΠ°Ρ€Π°Π³Ρ€Π°Ρ„ описания

## ΠŸΠ΅Ρ€Π²Π°Ρ публикация, отслСТиваСтся

ОписаниС ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

=> /pub1.gmi Π§ΠΈΡ‚Π°Ρ‚ΡŒ

## Вторая публикация, отслСТиваСтся

ОписаниС Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

=> /pub2.gmi Π§ΠΈΡ‚Π°Ρ‚ΡŒ

...

ΠšΠΎΠ΄Ρ‹ статусов

ΠšΠ»ΠΈΠ΅Π½Ρ‚ обязан ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΡΡ‚ΡŒ любой ΠΊΠΎΠ΄ мСньшС 10 ΠΈΠ»ΠΈ большС 69, ΠΏΡ€ΠΈ этом ΡƒΠ²Π΅Π΄ΠΎΠΌΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π’ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… случаях, ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π΄Π°Π½ ΠΊΠΎΠ΄Ρƒ с Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 10 для 11 ΠΈΠ»ΠΈ 20 для 27.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запросов

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» прСдусматриваСт ΠΎΠ±ΠΌΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ Π΄Π»ΠΈΠ½ΠΎΠΉ максимум 1024 Π±Π°ΠΉΡ‚.

Π’ эту Π΄Π»ΠΈΠ½Ρƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈ Π΅Π³ΠΎ содСрТимоС - Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ строку URI ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°.

ΠŸΡ€ΠΈ этом, тСкстовыС Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π² стандарт RFC 3986 (извСстный Ρ‚Π°ΠΊΠΈΠΌΠΈ функциями, ΠΊΠ°ΠΊ urlencode).

Π’ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΎ стСпСни, это сокращаСт ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΡ‘ΠΌ ΠΏΡ€ΠΈ использовании Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΈΡ€ΠΈΠ»Π»ΠΈΡ†Ρ‹.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ отправляСмых ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ статусов Π³Ρ€ΡƒΠΏΠΏΡ‹ "10", сСрвСр способСн Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄.

ВмСсто ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… Gemini - это Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ тСкстовоС ΠΎΠΊΠ½ΠΎ.

ПослС получСния ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, сСрвСр Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ статус "20" ΠΈΠ»ΠΈ Ρ€Π΅Π΄ΠΈΡ€Π΅ΠΊΡ‚ Π½Π° страницу с ΠΊΠΎΠ΄ΠΎΠΌ "30".

ΠšΠ»ΠΈΠ΅Π½Ρ‚

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ рСсурс с адрСсом gemini:// Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, стандартно Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ с ΠΏΠΎΡ€Ρ‚ΠΎΠΌ 1965.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ GUI, ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ‡Π°Ρ‚ΡŒ с популярных Lagrange ( https://gmi.skyjake.fi/lagrange/ ) ΠΈΠ»ΠΈ Kristall ( https://kristall.random-projects.net/ ).

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°

Π‘Π΅Ρ€Π²Π΅Ρ€

ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ "сСрвСр" Π² срСдС Gemini ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹ΠΌ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π²Π΅Π±, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ вмСсто прокси Nginx ΠΈΠ»ΠΈ Apache, этот Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ прСдусматриваСт ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ сСрвис для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ, Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π·Π° собой ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ хост ΠΈ ΠΏΠΎΡ€Ρ‚.

Π’ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ awesome-gemini ( https://github.com/kr1sp1n/awesome-gemini#servers ) прСдставлСно большоС количСство Ρ‚Π°ΠΊΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.

НапримСр, для запуска простой статики, ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ сСрвСр Agate ( https://github.com/mbrubeck/agate ) (Rust).

ΠŸΡ€ΠΈ этом, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ index.html Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ сСрвСра, для Agate - это index.gmi

Запуск динамичСских рСсурсов часто прСдусматриваСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ собствСнного сокСт-сСрвСра для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ спСцифики ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ взятого прилоТСния.

Π’Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ "server-side" Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² gemini-php ( https://github.com/eapl-gemugami/gemini-php ).

Π’ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² - Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· простых - Ρ„ΠΎΡ€ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ titan-II ( https://github.com/YGGverse/titan-II ), ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² исходном ΠΊΠΎΠ΄Π΅ geminiapp ( https://github.com/kevachat/geminiapp ) для KevaChat ( /social_media:kevachat ) ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π·Π΅Ρ€ΠΊΠ°Π»Π° ( https://github.com/YGGverse/betahowto ) Π΄Π°Π½Π½ΠΎΠ³ΠΎ сайта.

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ хосты

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ сСрвисы Π½Π° ΠΎΠ΄Π½ΠΎΠΌ IP (Π½Π΅ мСняя стандартный ΠΏΠΎΡ€Ρ‚) слСдуСт ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ прокси-сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ запросов Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ адрСс/интСрфСйс.

Если для HTTP - это Apache ΠΈΠ»ΠΈ Nginx, Ρ‚ΠΎ для ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Gemini ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

twins

twins ( https://code.rocket9labs.com/tslocum/twins ) - ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½Ρ‹ΠΉ сСрвСр с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ рСвСрсивного проксирования, напрсанный Π½Π° языкС Go.

Установка:


go install code.rocketnine.space/tslocum/twins@latest

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ‰Π΅Π³ΠΎ IPv4 адрСса Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² first.host.org ΠΈ second.host.org Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅ рСсурсы Yggdrasil:

/home/twins/config.yaml


listen: "xx.xx.xx.xx:1965"
hosts:
  first.host.org:
    cert: /home/twins/first.host.org/cert.pem
    key: /home/twins/first.host.org/key.rsa
    paths:
      -
        path: /
        proxy: gemini-insecure://[xxx:xxxx:xxxx:xxxx::xxxx]:1965
  second.host.org:
    cert: /home/twins/second.host.org/cert.pem
    key: /home/twins/second.host.org/key.rsa
    paths:
      -
        path: /
        proxy: gemini-insecure://[xxx:xxxx:xxxx:xxxx::xxxx]:1966

По Ρ‚Π°ΠΊΠΎΠΌΡƒ ΠΆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ слуТбы Π½Π° свободных Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… адрСсах IPv4 ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сСрвСра.

На Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… (ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Ρ…) рСсурсах Yggdrasil вмСсто Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ², достаточно Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ( /yggdrasil:subnet_setting ).

Π‘Π΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Ρ‹ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ сконфигурированы Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π΄ΠΎΠΌΠ΅Π½, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для first.host.org:


openssl req -x509 -newkey rsa:4096 -keyout key.rsa -out cert.pem -days 365 -nodes -subj "/CN=first.host.org"

Для запуска ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡƒΡ‚ΡŒ ΠΊ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ twins ΠΈ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ - ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:


/home/twins/go/bin/twins -config /home/twins/config.yaml

МоТно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ сСрвис:

/etc/systemd/system/twins.service


[Unit]
Description=twins
After=network.target

[Service]
Type=simple
User=twins
Group=twins
WorkingDirectory=/home/twins/
ExecStart=/home/twins/go/bin/twins -config /home/twins/config.yaml
StandardOutput=file:/home/twins/debug.log
StandardError=file:/home/twins/error.log
Restart=on-failure

[Install]
WantedBy=multi-user.target

А Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ автозапуск:


systemctl daemon-reload
systemctl enable twins
systemctl start twins

Π—Π°ΠΌΠ΅Ρ‚ΠΊΠΈ

Π£ сСрвСра twins ΠΈΠ½ΠΎΠ³Π΄Π° Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ кирилличСских рСсурсов, поэтому Ρ†Π΅Π»Π΅Π²Ρ‹Π΅ хосты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΈ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ язык ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅:


text/gemini; charset=utf-8; lang=ru;

Алиасы

Π’ Yggdrasil часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ адрСса IPv6 Π² ΠΏΠ°Ρ€Π΅ с Alfis DNS ( /yggdrasil:dns:alfis ), ΠΏΡ€ΠΈ этом ΠΈΠ½ΠΎΠ³Π΄Π° рСсурсы ΠΈΠΌΠ΅ΡŽΡ‚ алиас Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚.

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΌΠ΅Π½ΡΡ‚ΡŒ записи DNS, ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄-Π΄ΠΎΠΌΠ΅Π½Ρ‹ ΠΈΠ»ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы, достаточно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ сСрвСр прокси, запустив twins ( /gemini_protocol#twins ) Π½Π° ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌΡΡ Π² DNS адрСсС IP, Π½ΠΎ испол��зуя ΠΏΠΎΡ€Ρ‚ 1965.

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ рСсурсы (сСрвСры) Gemini ΠΏΡ€ΠΈ этом Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π½Π° http://[222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c]/yggdrasil:subnet_setting|адрСсах подсСти.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° 80 ΠΈ 1965 ΠΏΠΎΡ€Ρ‚Ρ‹ ΠΏΠΎ ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π΄ΠΎΠΌΠ΅Π½Ρƒ ΠΈΠ»ΠΈ ΠΏΠΎ IP ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ сСрвСра.

РСсурсы

Yggdrasil

Π’ зависимости ΠΎΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ IPv6 ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ взятым сСрвСром, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв, Gemini ΡˆΡ‚Π°Ρ‚Π½ΠΎ ΠΈ Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Yggdrasil.

ЕдинствСнным ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠΌ являСтся использованиС TLS ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎΡΡ слоя ( Π² ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» gemini-insecure:// )

ВнутрисСтСвыС рСсурсы

Бсылки

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹

https://tildegit.org/solderpunk/gemfeed

https://geminiprotocol.net/docs/companion/subscription.gmi

https://gmi.skyjake.fi/lagrange/

https://kristall.random-projects.net/

https://github.com/kr1sp1n/awesome-gemini#servers

https://github.com/mbrubeck/agate

https://github.com/eapl-gemugami/gemini-php

https://github.com/YGGverse/titan-II

https://github.com/kevachat/geminiapp

https://github.com/YGGverse/betahowto

https://code.rocket9labs.com/tslocum/twins

http://[222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c]/yggdrasil:subnet_setting|адрСсах

gemini://geminiprotocol.net

gemini://geminiprotocol.net/docs/ru/

gemini://geminispace.info

gemini://station.martinrue.com

gemini://astrobotany.mozz.us

gemini://[301:23b4:991a:634d::b]

gemini://betahowto.ygg

gemini://betahowto.duckdns.org

gemini://[301:23b4:991a:634d::1965]

gemini://kevachat.ygg

https://geminiprotocol.net

https://ru.wikipedia.org/wiki/Gemini_(ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»)

https://github.com/kr1sp1n/awesome-gemini

https://www.dokuwiki.org/plugin:gemini

Навигация

Поиск

Главная страница

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

GitHub

Алиас

[0200::/7]

Alfis / Yggdrasil