Cgi Nedir? Cgi Ne demek? - Nedir.com
Web Servisleri ile bu servislerin dışındaki programlar arasında etkileşim (ortak çalışma) platformu oluşturmak için geliştirilmiş bir standarttır. CGI, aslında bir programdır. Web'in statik yapısına, HTML kodu içinden çağrılan CGI programları dinamik bir nitelik kazandırmaktadır. En popüler CGI uygulamalarından birisi web Sayaçlarıdır. Web sayfalarını kaç kişinin ziyaret ettiğini saptayan küçük uygulamalar dış program olarak, bir web sayfası içinden çağrılabilir. CGI programları gerçek zamanlı çalışırlar. CGI'lerin önemli uygulama alanlarından birbaşkası da, web üzerinde doldurup gönderilen formlar üzerindeki bilgileri server tarafında değerlendirip kullanıcıya cevabı göndermektir.
CGI programları "çalıştırılabilir" kodlar olduğundan, bir başkası, kolaylıkla sizin sisteminizde program çalıştırabilir! Bu yüzden, cgi kodları sistemde özel yerlerde tutulur ve o sistemin görevlilerinin denetimi altındadır.
CGI’yı geliştirmedeki en büyük amaç Web sunucusu üzerinden sunucu tarafından programlar çalıştırabilmekti. Bu yeni teknolojiye Common Gateway denilmesinin sebeplerinden en önemli üçü şuydu:
1- CGI programları sunucudan bağımsız olmalıydı.
2- CGI programları hemen her dille yazılabilmeliydi.
3- Hemen her istemcide çalışabilmeliydi.
Dolayısıyla, CGI bir programlama dili değildir. Piyasadaki, bir girdiyi işleyip, çıktı üretebilen her dil CGI programları geliştirmek için kullanılabilir. CGI programlarında temel fikir, uygulamaların mantık katmanının, sunucu tarafında oluşturulmasıydı.
CGI programcıklarını (script) kullanarak okuyucu ile gerçek bir etkileşim içinde güçlü, kişisel ve profesyonel Web yayımları yaratabilirsiniz. CGI programcıkları Web sunucusu ile diğer uygulamalar arasında bir ağgeçit gibi davranan dış kaynaklı programlardır. CGI programcıklarını okuyuculardan gelen girişleri işlemek için kullanabilir, böylelikle okuyucu ile çift yönlü bir iletişim yolu kurabilirsiniz. Okuyucu girişleri doldurma formlarının verileri şeklinde olabildiği gibi veri tabanı sorgulamaları için anahtar sözcükler ya da okuyucunun inceleyicisinin ya da bağlantının tanımladığı değerler şeklinde de olabilir.
1- Kullanıcıdan bilgi alma.
2- Alınan verilerin bir veri tabanına işlenmesi.
3- İstenen verilerin veri tabanından bir sorgu sonucu alınması.
4- Kullanıcıya işlenmiş bilgilerin gönderilmesi.
1- Öğrencilerin, isimleri ve numaralarıyla beraber almak istedikleri derslerin kodlarını bir Web sayfasından girmesi, ve bunların bir veri tabanına işlenerek, öğrenci işleri ve danışmanları tarafından gözden geçirilmesi Siteyi ziyaret eden kişilerin bırakacağı e-posta adreslerine, sitedeki yeniliklerin düzenli olarak postalanması.
2- Ziyaretçilerin, site hakkında görüşlerini bildirebileceği bir erişim formu.
3- Site hakkında anketler.
4- Yerel ağın bir program tarafından sürekli gözlenerek, sorunların bir Web sayfasında gerçek zamanlı yayınlanması.
5- Site içi arama motorları (en kolaylarından biri olmasına rağmen hep ihmal edilen bir özelliktir).
6- Web tabanlı e-posta, haber öbekleri okuma/gönderme.
7- Web tabanlı stok yönetimi, muhasebe, iş akışı, proje yönetimi vb (biraz zor olsa da).
8- İçerik oluşturucuların, Web sayfalarını sunucuya koyması için, dosya yöneticisi tarzı bir arabirim.
CGI Programcığı nedir?
CGI programcıkları Web sunucusu üzerinde çalışan dış kaynaklı programlardır. CGI programcıklarını yüksek etkileşimli Web yayınları yaratmak için kullanabilirsiniz. Web sunucuları üzerinde kullanılan yabancı kaynaklı programların standartları ve ortak ağgeçit arayüzünün diğer uygulamalarla etkileşiminin nasıl olması gerektiği belirlenmiştir. Ortak, ağgeçit ve arayüz sözcükleri bu standartların anahtar sözcükleridir ve nasıl çalıştığını tanımlar.
CGI; programcığın erişilebilir olmasını sağlamak için ortak bir yol tanımlayarak, herhangi bir kimsenin kullandığı ortam ne Olursa olsun bir CGI programcığına bilgi geçirmesini sağlar.
CGI; programcık, sunucu ve diğer uygulamalar arasında bir bağlantı ya da ağgeçit tanımlayarak dış kaynaklı programları genelleştirilmiş girişler olarak kabul edilebilmesini ve diğer uygulamalara bilgi aktarılabilmesini mümkün kılar.
CGI; kullanıcıların dış kaynaklı programlara erişebilmesi için bir arayüz ya da bir yol tanımlayarak dış kaynaklı programlar için gerçekleştirilen karmaşık arayüz işlemlerini birkaç basit prosedüre indirger.
CGI’yı geliştirenler Web yayımcılarının okuyucularını karmaşıklıklardan korumasını sağlamak için güçlü ve eklenebilir nitelikte özellikler yaratmak üzere bir CGI standardı oluşturmak amacıyla bu anahtar kavramlar doğrultusunda çalışmışlardır. Okuyucunun tek yapması gereken iş, bir görüntü haritasındaki bir alana tıklamak ya da doldurma formunu tamamladıktan sonra teslim etmek olacaktır. Her şey farenin tuşuna dokunur dokunmaz otomatik yapılıyor gibi görünür ve kullanıcı nasıl veya niçin gibi sorular sorma durumuyla karşılaşmaz, her şey kendi kendine yürür. Bir Web yayımcısı için özellikle güçlü Web yayımları yaratırken CGI programcıklarının sunduğu avantajlardan faydalanmak istiyorsa, CGI programcığının nasıl çalıştığını bilmek çok önemlidir. Kullanıcı sadece yaptığı işlerin sonuçlarını görür arkadaki manzaradan habersizdir. Programcıklar yürütülürken arka planda gerçekleşen olaylar şöyledir:
1- Okuyucunun inceleyicisi girişleri Web sunucusuna aktarır.
2- Sunucu sistem sırası geldiğinde girişleri CGI programcığına aktarır.
3- CGI; programcığı girişi işler ve eğer başka bir uygulama gerekiyorsa uygulamayı programcığa geçirir ve çıkışı Web sunucusuna gönderir.
4- Web sunucusu okuyucunun cevabını onun inceleyicisine geri yollar. Bir CGI programcığının çıkışı; bir veri tabanı sorgulamasının sonucundan, okuyucunun cevabına göre yaratılmış yeni bir dokümana kadar her şey olabilir.
UNIX sistemlerinde CGI programcıkları usr dosya sistemi içinde cgi-bin olarak adlandırılan kataloglara yerleştirilmiştir ve CGI uygulamaları da yine usr dosya sistemi içinde cgi-scr olarak adlandırılan kataloglara yerleştirilmiştir. Diğer sistemlerde CGI programcıklarınızı ve uygulamalarınızı nerelere yerleştirmeniz gerektiği Web sunucu dokümanında açıklanır.