Gopher, belgeleri İnternet üzerinden dağıtmak, aramak ve almak için tasarlanmış bir internet protokolüdür. 1990'ların başında Minnesota Üniversitesi'nde geliştirilen Gopher, World Wide Web'in öncüsüydü ve çevrimiçi belgelerde gezinmek için metin tabanlı, hiyerarşik ve kullanıcı dostu bir yöntem sunuyordu.
Gopher'ın Doğuşu ve Evrimi
Gopher protokolü, 1991 yılında Minnesota Üniversitesi'nden Mark P. McCahill liderliğindeki bir ekip tarafından tasarlandı. Adını üniversitenin maskotu “Altın Sincap”tan alan protokol, başlangıçta kampüsteki internet kaynaklarına erişim için kullanıldı.
Gopher'ın basitliği ve bilgileri hiyerarşik olarak düzenleme yeteneği, onu grafiksel World Wide Web'in ortaya çıkmasından önce internet kullanıcıları arasında popüler bir seçim haline getirdi. Bununla birlikte, özellikle 1993 yılında Mosaic web tarayıcısının piyasaya sürülmesinden sonra Web'in yükselişi, web'in metnin yanında grafikleri de görüntüleme yeteneği ve daha çekici arayüzü nedeniyle Gopher'ı önemli ölçüde gölgede bıraktı.
Gopher'ın Derinlemesine Keşfi
Gopher, Gopher istemcilerinin bilgi istemek için Gopher sunucularına bağlandığı bir istemci-sunucu mimarisine dayanmaktadır. Gopher tarafından sunulan bilgiler, dosya sistemine benzer şekilde hiyerarşik bir yapı halinde düzenlenmiştir. Bir kullanıcı bir Gopher bağlantısını seçtiğinde, istemci sunucuya bir sorgu gönderir ve sunucu daha sonra istenen belgeyi veya bağlantı bir dizin ise bağlantıların dizinini döndürür.
Protokol ayrıca, bir Gopher istemcisinin bir Gopher sunucusuna bir arama dizesi gönderebildiği ve sunucunun, arama dizesiyle eşleşen tüm belgeleri döndürdüğü anahtar kelime aramasını da destekler. Ancak Gopher'ın modern protokollerde bulunan HTTPS, çerezler veya etkileşimli formlar gibi daha gelişmiş özellikleri desteklemediğini belirtmekte fayda var.
Gopher'ın İçinde: Çalışma Mekanizmasını Anlamak
Gopher, Gopher istemcilerinin bilgi için Gopher sunucularına istek gönderdiği bir istemci-sunucu modeli üzerinde çalışır. Sunucu, istenen metin dosyasını veya menüyü göndererek yanıt verir. Menüler, menü öğelerini temsil eden çizgiler içeren basit metin dosyalarıdır. Her öğe, insan tarafından okunabilen bir ad ve öğenin bulunabileceği bir sunucu adresinden oluşur.
Gopher kendi benzersiz URL şemasını kullanır. Bir Gopher URL'si "gopher://" ile başlar ve sunucunun adresini, kaynağın türünü ve seçici dizeyi içerir. Seçici dize, sunucudaki kaynağın yoludur.
Gopher'ın Ayırt Edici Özellikleri
- Basitlik: Gopher'in tasarımı basittir ve Gopher istemcileri, sunucuları ve belgeleri oluşturmayı kolaylaştırır.
- Hiyerarşik yapı: Gopher, bilgileri dosya sistemine benzer şekilde açık, hiyerarşik bir formatta sunar.
- Verimli ağ kullanımı: Gopher, HTTP gibi grafik protokollere göre daha az bant genişliği kullanır, bu da yavaş bağlantılarda gezinmeyi daha hızlı hale getirir.
- Aranabilirlik: Gopher, Gopher sunucularında anahtar kelime aramalarını destekler.
- Düz metin tabanlı: Gopher belgeleri çoğunlukla düz metindir, ancak protokol aynı zamanda ikili dosyaları da dağıtabilir.
Farklı Gopher Türleri
Gopher'da farklı türdeki öğeler, öğe satırının başlangıcında tek karakterli bir kod kullanılarak tanımlanır. Yaygın olarak kullanılan öğe türlerinden bazıları şunlardır:
Tür kodu | Tanım |
---|---|
0 | Metin dosyası: bu öğe türü bir belgeyi veya başka herhangi bir metinsel veri türünü temsil eder. |
1 | Dizin: Bu öğe türü, daha fazla öğe içeren bir Gopher menüsüdür. |
7 | Arama motoru: bu öğe türü aranabilir bir dizini belirtir. |
9 | İkili dosya: bu öğe türü resimler, ses veya video gibi metinsel olmayan veri dosyaları için kullanılır. |
Ben | Bilgilendirici mesaj: bu öğe türü Gopher menüleri içindeki bilgilendirici metni görüntülemek için kullanılır. |
Gopher İş Başında: Kullanımlar, Zorluklar ve Çözümler
Web'den daha az popüler olmasına rağmen, Gopher'ın hâlâ özellikle retro-bilgisayar ve teknoloji meraklısı topluluklarda özel bir kullanıcı tabanı var. Gopher, metin tabanlı belgeleri ve dosyaları dağıtmak ve gezinmesi kolay bağlantı menüleri oluşturmak için kullanılır.
Ancak Gopher bazı zorluklarla karşı karşıyadır. Modern web tarayıcıları varsayılan olarak Gopher'ı desteklememektedir ve protokol, şifreleme ve çerezler gibi gelişmiş özelliklerden yoksundur. Bununla birlikte, Gopher sitelerine erişmek için özel Gopher istemcileri ve proxy hizmetleri kullanılabilir ve basitliğini korurken protokolün modernleştirilmesi için çaba sarf edilmektedir.
Benzer Protokollerle Karşılaştırma
Özellik | Sincap | HTTP (Web) | FTP'de |
---|---|---|---|
Şifreleme | HAYIR | Evet | Evet |
Kurabiye | HAYIR | Evet | HAYIR |
Aranabilirlik | Evet | Evet | HAYIR |
Hiyerarşik yapı | Evet | HAYIR | Evet |
Gopher'ın Geleceği: Mağazada Neler Var?
Gopher geçmişin bir kalıntısı gibi görünse de, öncelikle basitliği ve verimliliği nedeniyle protokolün kullanılması ve geliştirilmesine yönelik ilgi devam ediyor. Geliştiriciler, şifreleme desteği eklemek gibi Gopher'ı modernleştirmeye yönelik projeler üzerinde çalışıyorlar ve "Gopherspace" olarak bilinen modern Web'in bir Gopher eşdeğerini yaratmaya yönelik devam eden bir çaba var.
Gopher ile Proxy Sunucularının Rolü
Modern tarayıcıların varsayılan olarak Gopher protokolünü desteklemediği göz önüne alındığında, proxy sunucular Gopher sitelerine erişimde önemli bir rol oynamaktadır. Gopher'dan HTTP'ye proxy, kullanıcıların standart bir web tarayıcısı kullanarak Gopher içeriğine erişmesine olanak tanır. Proxy sunucusu istenen Gopher içeriğini getirir ve onu tarayıcının görüntüleyebileceği HTTP içeriğine dönüştürür. Bu, modern web ile Gopher arasında bir köprü oluşturarak kullanıcıların Gopherspace'in benzersiz, metin odaklı dünyasını keşfetmelerine olanak tanır.
İlgili Bağlantılar
- Overbite Projesi: Gopher'ı Firefox ve Chrome'a geri getirme girişimi.
- Floodgap Genel Gopher Proxy'si: Herkese açık bir Gopher'dan HTTP'ye proxy.
- Gopher Protokolü: Orijinal Gopher protokolü spesifikasyonu.
- SDF Genel Erişim Unix Sistemi: Tanınmış bir Gopher sitesi.
- Gopher Çimenliği: Aktif Gopher sitelerinin seçilmiş bir listesi.