world
Радио вчера, сегодня и завтра...




Протокол Gopher

Дата публикации: 28 апреля 2012 года

star

Что такое gopher?
Как просматривать gopher-ресурсы
Где искать gopher-ресурсы
Как устроен gopher


Что такое gopher?


Сетевой протокол распределённого поиска и передачи документов, который был широко распространён в Интернете до середины 90-х годов. Многие университеты и правительственные учреждения США активно использовали Gopher до конца 90-х годов. Протокол предназначался и использовался для предоставления доступа к документам в Интернет, но имел меньше возможностей, чем World Wide Web, и впоследствии был почти полностью замещён протоколом HTTP.

star

Протокол gopher ("гофер"-рус.) имеет более жёсткую структуру размещения информации, очень похожую на структуру каталогов в файловой системе, которая состоит из вложенных друг в друга каталогов и файлов. Текстовая структура ссылок позволила очень быстро находить нужную информацию используя текстовые терминалы, в основном в университетах.

На конец 2010 года в Интернете существует около 150 gopher-серверов. Большинство из них более не обновляются, но некоторые поддерживаются энтузиастами протокола Gopher. Несколько десятков новых серверов было запущено с 1999 года. Сегодня Gopher напоминает почти заброшенный уголок Интернета — можно, например, публиковать адреса электронной почты, не беспокоясь о спаме, и публиковать любую информацию, не заботясь об объёмах трафика. При этом многие сервера Gopher до сих пор регулярно посещаются.

В сети Gopher существует свои поисковики: Veronica и Veronica-2. Это акроним от "Very Easy Rodent-Oriented Net-wide Index to Computer Archives". Что означает - инструмент поиска по ключевым словам в gopherspace. Поиск осуществляется по заголовкам материалов.


Как просматривать gopher-ресурсы


Протокол Gopher в той или иной мере ранее поддерживался многими веб-браузерами.

В Internet Explorer версий 5.* и 6 для Windows поддержка Gopher отключена с июня 2002 с выходом патча, предназначавшегося для исправления уязвимости в обработчике протокола Gopher; однако её можно вернуть через редактирование реестра. В Internet Explorer 7 Gopher более не поддерживается. Internet Explorer для Mac всё ещё поддерживает Gopher.

Другие браузеры, включая Mozilla и AOL, поддерживали протокол лишь частично — наиболее существенным недостатком является то, что они не отображали информационный текст, используемый во многих gopher-меню. Mozilla Firefox полностью поддерживала Gopher, начиная с версии 1.5, и частично — в предшествующих версиях. SeaMonkey и Camino также полностью поддерживали Gopher.

С 4-й версии Mozilla Firefox и со 2-х версий SeaMonkey поддержка Gopher отключена. Но, существует неплохое расширение для этих браузеров по адресу
https://addons.mozilla.org/en-US/firefox/addon/overbiteff/

Установив это небольшое расширение размером около 150 кб. можно полноценно пользоваться Gopher-протоколом! Заметим, текстовые файлы (TXT) в русской кодировке отлично отображаются. Также интересно, что файлы HTML раскрываются в браузере подобно использованию протокола HTTP.
Желающим ознакомиться с gopher протоколом советуем использовать именно Firefox с расширением.

Существует соответствующее расширение и для Google Chrome. Но, оно лишь подставляет прокси-сервер и передаёт в качестве параметра ссылку на gopher-ресурс. Более того, в нашем случае в адресную строку вводить адрес через gopher:// не получилось. Страницы открывались только в случае если gopher:// ссылка была прописана на HTML-странице. Установить на Chrome расширение следует так:
Зайти в настройки затем выбрать "Инструменты" - "Расширения".
Затем уже в "Настройки" для расширения выбрать прокси-сервер через который будет просматриваться гофер-ресурсы.

Для полной поддержки Gopher в Konqueror необходим плагин, такой как kio_gopher. Однако, наиболее полная поддержка Gopher доступна в текстовом браузере Lynx.

Safari не поддерживает Gopher, для поддержки в Opera требуется прокси-сервер, например Squid.

На странице http://gopher.floodgap.com/overbite/ можно найти расширение для разных браузером и операционных систем.

На сегодняшний день для браузеров не поддерживающими Gopher-протокол (Opera, IE, и др.) решением проблемы является использование прокси-серверов. Которые соединяются с gopher-ресурсами и переконвертируют их в http-протокол.

Вот некоторые из proxy-серверов перекодировщиков:
http://gopherproxy.org/
http://www.pongonova.org/gopherwiki/GopherProxy/gopher?uri=
http://gopher.floodgap.com/gopher/gw.lite?

В качестве параметра для двух последних серверов нужно дать ссылку на ресурс Gopher.

Например,
http://www.pongonova.org/gopherwiki/GopherProxy/gopher?uri=gopher://gopher.floodgap.com
http://gopher.floodgap.com/gopher/gw.lite?gopher://gopher.floodgap.com



Где искать gopher-ресурсы



Списки Gopher-серверов можно найти на многих гофер-ресурсах или воспользоваться привычным поиском от Google или Яндекса.

Некоторые сервера (ссылки откроются в Firefox):
- gopher://gopher.floodgap.com (наиболее популярный)
- gopher://gopher.rp.spb.su (российский)
- gopher://gopher.paragrafprint.com (российский)
- gopher://gopher.docfile.org (российский)
- gopher://antono.info (белорусский)
- gopher://gopher.viste-family.net
- gopher://gopher.quux.org
- gopher://gopher.studiolab45.net
- gopher://86.43.88.90
- gopher://karel.pri.ee (много радиосхем и технической документации)
- gopher://gopher.semmel.ch

Очень полезный список ссылок по протоколу Gopher расположен по адресу http://wt.gopherite.org/




Как устроен gopher


Протокол основан на клиент-серверной технологии, за ним закреплён 70 порт TCP. После того как клиент установит TCP-подключение с сервером, он посылает строку, которая содержит запрос на нужный документ либо пустую строку для получения первой страницы сайта. Сервер отвечает и закрывает соединение.

Каталог состоит из последовательности строк, в которых указывается, что можно из него получить. Строки содержат пять полей, разделённых табуляцией и заканчивающихся CR LF.


Тип содержимого
0 = текстовый файл
1 = каталог
2 = сервер имён CSO
3 = ошибка
4 = файл Macintosh в формате BinHex
5 = архив ZIP
6 = файл UNIX, закодированный uuencode
7 = поисковый сервер
8 = ссылка на telnet-сессию
9 = бинарный файл
+ = запасной сервер
d = файл в формате PDF (по др. данным - "P")
h = файл в формате HTML
g = графический файл в формате GIF
p = графический файл в формате PNG
I = графический файл JPG и др. image-форматы
i = информационный текст
M = сообщение закодированное MIME
s = звуковой аудио- файл (mp3, midi, ogg, wav, wma и др.)
; = видео файл (avi, mpg, wmv, flv, gp3 и др.)

Строка описания
Путь
Доменное имя сервера
Номер порта сервера


Пример:
0Welcome! Welcome.txt gopher.ru 70
1CIA World Factbook /Archives/mirrors gopher.ru 70
0Jargon 4.2.0 /Reference/Jargon.txt gopher.ru 70
1Online Libraries /Reference gopher.ru 70
hСсылка на ресурс URL:http://site.ru gopher.ru 70


Стоит заметить, что между кодом типа содержимого и строкой описания табуляция отсутствует.

Ниже приведён пример отображения различных кодов в браузере Firefox с установленным расширением.


star



После того как программа-клиент соединится с сервером она посылает серверу пустую строку. В ответ сервер высылает построчный список файлов и каталогов из корневого каталога, пример которого приведён выше. После чего клиент, исходя из полученной информации, отображает содержимое из данного каталога.
Если же серверу послать вместо пустой строки /information, то сервер отправит клиенту содержимое директории "/information".
Запрос /information/abc.txt вернет содержимое файла "abc" в папке "/information".

Описание протокола можно прочесть на
http://www.eli.sdsu.edu/courses/spring95/cs596_3/notes/gopher/gopher.html

Для использования протокола Gopher не требуются мощные сервера.
Существует много серверов для различных операционных систем.
Для Windows наиболее популярен Motsognir.




 ЭСПЕРАНТО

О языке Эсперанто
Учим язык
Делаем словарь
Ассоциашка 100 [pdf]
  Тренажёры >>>
Генератор цифр
Наречия
Словарь-тренажёр (для самоучителя Б. Колкера)
Словарь-тренажёр (для самоучителя А. Юнусов)


 ГЛОБАЛЬНЫЙ ПРОСМОТР





ОДР
#100
RU-QRP #400

 КОНТАКТЫ

Форма обратной связи

Aleksandr Kravets
Россия
RZ6HAP


Страница сгенерирована за 0.00097990 сек.