Gopher, İnternet sunucularındaki dosyaları düzenlemek ve görüntülemek için World Wide Web‘den önce varolan bir sistemdi.
Gopher Nedir?
Bir Gopher sunucusu, içeriğini hiyerarşik olarak yapılandırılmış bir dosya listesi olarak sunar. Web’in gelişmesiyle birlikte, birçok veritabanı Web arama motorları aracılığıyla daha kolay erişilebilen Web siteleri haline geldi.
Bu protokol, Minnesota Üniversitesi’nde geliştirildi. Daha sonra, Veronica ve Jughead, Gopher sistemlerinde depolanan kaynakların küresel dizinlere erişme yollarını araştırdı.
Tarihi
Orijinal Gopher sistemi 1991 tarihinde Mark McCahill, Anklesaria Farhad, Pablo Lindner, Torrey Daniel, Huminsky Adam, Bob ve Minnesota Üniversitesi’nden Alberti tarafından piyasaya sürüldü.
Sistemin temel hedefleri, RFC 1436’da belirtildiği gibi kullanıcılar tarafından bilindiği şekliyle dosyaların hiyerarşik sıralaması, basit bir sözdizimi, hızlı ve ucuza oluşturulabilen bir sistem ve aramalar gibi dosya sistemini genişletme yollarıdır.
Belge hiyerarşilerini WAIS, Archie ve Veronica arama motorları ve FTP ve Usenet gibi diğer bilgi sistemlerine ağ geçitleri dahil olmak üzere hizmet koleksiyonlarıyla birleştirdi.
O zamanlar yüksek öğrenimde CWIS (Campus-Wide Information Systems/Kampüs Çapında Bilgi Sistemleri) olan genel ilgi ve bir Gopher sunucusunun diğer çevrimiçi sitelerden dizinlere ve kaynaklara bağlantılar içeren bir CWIS oluşturmak için yapılandırılabilme kolaylığı, gopher’ın hızlı bir şekilde genişlemesine neden oldu.
1992’de, birinin e-posta adresini bulmanın standart yöntemi, kuruluşunun CCSO girişini Gopher ad sunucusunu sorgulamaktı.
1990’ların sonunda, Gopher genişlemeyi büyük ölçüde durdurdu. Minnesota Üniversitesi, Gopher sunucu uygulamasının kullanımı için lisans ücreti alacağını duyurdu.
Bunun bir sonucu olarak, bazı kullanıcılar bağımsız dağıtımlar için de bir lisans ücreti gerekeceğinden endişe duyuyorlardı. Aksine, WWW’de böyle bir sınırlama getirilmemiştir.
Minnesota Üniversitesi daha sonra GNU GPL kapsamında Gopher uygulamasını yeniden lisansladı. Daha sonra, istemci protokolü işlevlerinin bir parçası olarak alan Mosaic gibi Web tarayıcıları tarafından hızla çoğaltıldı.
Gopher, Web’deki HTML biçimine kıyasla daha katı bir yapıya sahiptir.
Her belgenin tanımlı bir biçimi vardır ve tipik kullanıcı, belirli bir belgeye ulaşmak için tek bir tanımlı sunucu menü sisteminde gezinir.
Bu, tipik bir kullanıcının Web’deki belgelerde gezinme biçiminden çok farklı olabilir.
Özellikleri
Tasarım hedeflerinin bir parçası olarak Gopher, küresel ağ dosya sisteminin salt okunur ağını bir araya getiriyordu. Bir kişi, bir CD-ROM‘daki veri dosyalarıyla yapabileceği her şeyi Gopher kullanarak yapabilirdi.
Gopher sistemi bir dizi bağlanabilir hiyerarşik menüden oluşuyordu. Menü öğelerinin ve başlıklarının seçimi, sunucu yöneticisi tarafından kontrol ediliyordu.
Web sunucusundaki bir dosya gibi, Gopher sunucusundaki bir dosya başka bir sunucudaki bir menü öğesine bağlanabiliyordu.
Birçok sunucu, kullanıcının erişebileceği diğer sunucuların bir dizinini sağlamak için bu sunucular arası bağlantıdan yararlanıyordu.
Bu protokol ilk olarak RFC 1436’da açıklandı ve IANA, TCP bağlantı noktası olarak 70’i atadı. Bu protokolün anlaşılması kolaydır, bu nedenle bir istemci kullanmadan gezinmek mümkündür.
Modern platformlarda ve mobil cihazlarda kullanımını arttırmak için bazı geliştirmeler yapılmıştı. Çeşitli tarayıcı uzantılarını ve modern istemcileri içeren bir Overbite projesine başlanmıştı.
2010’da, Veronica-2 tarafından oluşturulan yaklaşık 100 sunucu vardı. Gopherspace, 2007’de olduğu gibi BitTorrent’te dağıtıldı ve kullanıldı.
Uyumluluğu
Gopher’ı yerel olarak desteklemeyen tarayıcılar, mevcut HTTP sunuculara yine de erişebilir.
Tarayıcıda bir güvenlik açığını düzeltmeyi amaçlayan bir yama nedeniyle Haziran 2002’de Windows için İnternet Explorer 5 ve 6 sürümlerinde devre dışı bırakıldı. İnternet Explorer 7’de, desteği WinINET düzeyinde kaldırılmıştır.
Eğer, bu protokolü etkinleştirmek isteyen bir kullanıcı bunu Windows Register’dan yapabilir.
Eklentileri
Mozilla Firefox ve SeaMonkey için OverbiteFF, Gopher taramasını geliştirir.
Bir beyaz liste kullanarak 70 numaralı bağlantı noktasında olmayan sunuculara ve OSC’lerden gelen sorgulara erişim desteğini içerir.
Erişim sunucularını yerel olarak desteklemeyen Firefox ve SeaMonkey sürümlerine de izin verir. Ayrıca, Konqueror için eklentiler ve Google Chrome için proxy tabanlı bir uzantı da mevcuttur.
Mobil Cihaz Desteği
Gopher’in bant genişliği arayüzünün cep telefonları ve PDA‘lar için uygun olacağı öngörülmüştü. Ancak HTML ve XML ve diğer modern içeriklerin mobil uyarlamaları daha popüler oldu.
PyGopherd sunucusu, sitelere gömülü bir WML arayüzü sağlar. Uyumlu cihazlar için bir Java ME istemcisi de mevcuttur.