Bilinmesi Gerekenler - İsmail Kırbaş İle Web Sitesi Tasarımı

Transkript

Bilinmesi Gerekenler - İsmail Kırbaş İle Web Sitesi Tasarımı
Bilinmesi Gerekenler
ÇESITLI ARAÇLAR :
Araç 1 ) http://www.checkpagerank.com : Pagerank Kontrol
Araç 2 ) http://www.seochat.com/seo-tools/future-pagerank : Tahmini Gelecek Pagerank Kontrol
Araç 3 ) http://www.netmechanic.com/toolbox/html-code.htm : Kodlamadaki Problemleri Kontrol Edin
Araç 4 ) http://www.yourcache.com/ : Google 'in farkli datacenterlarindaki indexlenmis sayfa sayilariniz
Araç 5 ) http://inventory.overture.com/d/searchinventory/suggestion : Geçen ay hangi kelimeler kaç kez
arandi
Araç 6 ) http://www.copyscape.com/ : Internette sitelerinizi kopyalarini bulmak için
Araç 7 ) http://www.archive.org : Simdi olmayan web sitelerinin geçmisteki hallerini görmek için
Araç 8 ) http://www.gritechnologies.com/tools/spider.go : Örümcek simulatörü
Araç 9 ) http://www.kwmap.net/ : MÜKEMMEL bir keyword haritasi , kullanmayi bilen için çok yararli
Araç 10 ) http://labs.google.com/sets : Google 'dan alakali kelimeler
Bilgi 1 : Pagerank
Bilgi 2 : Pagerank Nedir ?
Bilgi 3 : Google'dan Pagerank Teknolojisi Açiklamasi (%100 Inceleyin)
Bilgi 4 : Cache Nedir ? (%100 Inceleyin)
Bilgi 5 : http://www.touchgraph.com/ (%100 Inceleyin)
Bilgi 6 : http://www.google.com/webmasters/ (%100 Inceleyin)
Bilgi 7 : Altin Örümcek 2005 Kazananlar - Neyin iyi neyin kötü oldugunu anlayabilmemiz için incelememiz
gerekli
Bilgi 8 : Garanti Sanal Pos Hakkinda Bilgi (Ayrica bakiniz : http://eticaret.garanti.com.tr )
Bilgi 9 : 2CheckOut Hakkinda Bilgi ( Ayrica bakiniz : http://www.2checkout.com/home.html )
Bilgi 10 : Google Directory - Web Tasarim ve Gelistirme
YARDIMCI KODLAR
Favorilere Ekleme Kodu :
<a href="javascript:window.external.AddFavorite('http://www.siteadi.com', 'SITE BASLIGI')">Favorilere
Ekle</a>
Anasayfa Yapma Kodu :
<a
href="#"onClick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.siteadi.com');">
Anasayfam Yap</a>
Önceki Sayfaya Geri Dönme Kodu :
<a href="javascript:history.go(-1);">Önceki Sayfa</a>
Pencereyi Kapama Kodu :
<a href="javascript:window.close()">Pencereyi Kapat</a>
Pop Up Mesaj Kodu :
<script language="JavaScript">alert("MESAJINIZ");</script>
Öneri 1 : http://www.mozilla.org.tr/
Öneri 2 : http://webaccelerator.google.com/
3 Altin Kural
1/4
1. Ingilizce ögrenin
2. Proje hazirlamadan domain almayin
3. Bir isi bitirmeden digerine baslamayin.
ORTAM DEGISKENI ANLAMI
REMOTE_ADDR Istemci bilgisayarin IP adresi
REMOTE_HOST Istemcinin bilgisayarinin adi (Muhtemelen yine istemcinin IP'si)
HTTP_ACCEPT Browser'in taniyabilecegi MIME türleri
HTTP_USER_AGENT Browser hakkinda bilgi (adi, sürümü isletim sistemi, vs.)
HTTP_REFERER Browser'in bizim sitemize gelmeden önce görüntüledigi son URL (Burada "referer"
referansta bulunan, köprü veren, gönderen anlamina gelmekle birlikte, sitemizi ziyaret eden kullanicinin sizim
sitemize geçtigi son sitede bizim sayfamiza bir köprü bulundugu anlami çikmaz; ziyaretçi bizim adresimizi
URL adres kutusuna kendisi yazsa bile, HTTP_REFERER degiskeninin degeri olarak son URL kaydedilir.)
REQUEST_METHOD GET veya POST
CONTENT_LENGTH POST yoluyla gönderilmis bilginin boyutu (büyüklügü). GET yöntemi kullanildiginda
veya istemci bilgi göndermediginde tanimlanmamis sayilir)
QUERY_STRING Istemcinin GET yoluyla gönderdigi bütün bilgilerden yapilmis bilgi yumagi ( String )
PATH_INFO CGI programinin çalistirildigi dizine göre (göreli) Path (arama yolu) bilgisi.
PATH_TRANSLATED Göreli arama yolunun gerçek disk ve dizin adlariyla ifadesi
HTTP Statü Kodlari:
Kod Mesaj Anlami
200 OK Aranan belge bulundu ve gönderildi.
204 No Content Belge bulundu, fakat gönderilecek bir içerik yok.
301 Moved Permamently Aranan belge temelli baska bir adrese aktarildi.
302 Moved temporarily Aranan belge geçici olarak baska bir adrese aktarildi.
400 Cannot be found Erismek istediginiz dosya bulunamiyor.
401 Unauthorized Erismek istediginiz belge korunmustur.
403 Forbidden Erismek istediginiz belgeye erisim yasaklanmistir.
403.10 Access Forbidden Erismek için sundugunuz yetki kaydi yeterli degil.
403.11 Access Forbidden Erismek için sundugunuz parola degismis.
404 Site not found Aradiginiz site (URL) bulunamiyor.
405 Resource not allowed Dosya, yanlis adres verdiginiz için bulunamiyor.
406 Not acceptable Browser'iniz istediginiz kaynagi görünteleme yeteneginde olmadigi için istediginiz dosya
gönderilmiyor.
410 Does not exist Aradiginiz dosya temelli bulunamiyor.
412 Precondition Failed Dosya istemcinin ileri sürdügü önsartlara uymadigi için gönderilmiyor.
414 URI Too Long Dosya için yazilan yol çok uzun.
500 Internal server error Dahilî Server Hatasi olustu.
501 Not implemented Istediginiz yazilim/media türü bu Server'da uygulanamiyor.
502 Bad Gateway Server geçit olarak görev yaparken, kendisinden sonraki bir Server'dan hatali yanit aldi.
Belli basli MIME tür/alt-tür gruplari
text/plain Düz metin. Server istenen belgenin uzantisindan türünü anlamazsa veya siz CGI programinizda
çikti'nizin içerik türünü belirtmezseniz, Server düz metni varsayilan içerik türü sayar
text/html HTML dosyasi
text/richtext Rich Text biçimi. Bir çok kelime-islemcisinin ortak dosya biçimidir; bir çok Browser tarafindan
anlasilabilir.
image/gif GIF grafik dosyasi. Ortak bir biçim olmakla birlikte, içendigi sikistirma teknolojisinin kullanimi için bir
firmaya telif hakki bedeli ödeme zorunlugu getirildiginden bu yana yerini diger biçimlere birakiyor. Browser'lar
tarafindan IMG etiketiyle birlikte kullanildiginda HTML belgesinin parçasi olarak görüntülenir.
2/4
image/jpeg JPEG grafik dosyasi. GIF'ten daha çok renk derinligi içerebilir. Bütün Browserlar tarafindan taninir
ve IMG etiketiyle birlikte kullanilabilir.
image/png PGN grafik dosyasi. Internet için gelistirilmekte olan grafik biçimi. Henüz bütün Browserlar
tarafindan taninmiyor. Bu biçimi taniyan Browserlar, IMG etiketiyle kullanilan PNG dosyasini HTML belgesi
içinde görüntüleyebilirler.
image/x-xbitmap Bitmap grafik dosyasi. (Genellikle dosya adinin uzatmasi .xbm olur.) Görüntü, piksel olarak
tanimlandigi için fazla ayrintili görüntüler için elverisli degildir. Bütün Browserlar tarafindan taninmaz.
audio/basic 8-bit ulaw sikistirma teknigi ile üretilen ses kayit dosyasi. (Genellikle dosya adinin uzatmasi .au
olur.) Bütün Browserlar tarafindan taninmaz.
audio/x-wav Microsoft firmasinin gelistirdigi Windows sistemi için ses kayit dosyasi. (Bütün Browserlar
tarafindan taninmaz)
video/mpeg MPEG video kayit dosyasi. Bütün Browserlar tarafindan taninir.
video/quicktime Apple firmasinin gelistirdigi MacOS ve Windows sistemleri için video dosyasi. Browsein
tanimasi için ek program çalistirilmasi (plug-in) gerekebilir.
video/x-msvideo Microsoft firmasinin gelistirdigi Windows sistemi için video kayit dosyasi. (Genellikle dosya
adinin uzatmasi .avi olur.)
application/octet-stream Server tarafindan taninmayan bütün dosya türleri için bu içaret türü gönderilir ve
bunu gören Browser kullaniciyü bu dosyayi çalistirmak veya görüntülemek yerine sabit diske kaydetme
imkani tanir.
application/postscript Postscript yazici dili ile gönderilen herhangi bir içerik.
application/vnd.ms-excel MS Site Server, Internet Information Server veya kisisel Web Server programlarinin
tanidigi MS Office yazilim paketindeki Excel programinin dosyasi. Microsoft isletim sistemlerinde çalisan
hemen hemen bütün Web Server programlari tarafindan da taninmaktadir. (Bu türün alt türleri arasinda
"application/vnd.ms-powerpoint" ve "application/msword" de bulunur. MS firmasinin Internet Browser
programi IE tarafindan bu içarek türü taninir ve ilgili MS yazili çalistirilarak dosyanin içerigi görüntülenir; diger
browserlar bu içerik türünü sabit diske kaydetmeyi önerirler.
CONTENT_LENGTH ve QUERY_STRING degiskenlerinin dogrudan bizim Form etiketimizin METHOD
özelligine bagli oldugunu farkettiniz mi? METHOD olarak GET veya POST kullanabiliriz. Bu, bizim
ziyaretçimizden nasil ve ne boyutta bilgi alacagimizi ve bilginin CGI programina nasil aktarilacagini belirler.
Form'un olusturdugu ve sizin GET yöntemi ile aldiginiz bilgiler, çevre degiskenlerinden QUERY_STRING
degiskeninin içine yazilir. Baska bir ifade ile Form'daki bütün degiskenlerin adlari ve bu degiskenin içerdigi
deger yumak yapilir (bu yumagin niteligine ve nasil çözecegimize gelecegiz!) ve Server'da QUERY_STRING
degiskeninin degeri olarak yazilir. Daha sonra belirtecegiz, ama simdiden bir kenara yazin: Form'un
gönderdigi degiskenler ve degerleri artik düz metin haline gelmistir; bundan yeniden program yoluyla
kullanilabilir degiskenler üretmek ve bu degiskenlere ziyaretçiden gelen degerleri atamak bizim isimiz olacak
(ve galiba Perl ile CGI progralamanin da en can alici noktasini olusturacak!).
Form'un bilgilerini POST yoluyla almis olsaydik bunlar CGI programi için standart girdi (stdin) olarak gelecekti.
Bu iki yöntem arasindaki baslica fark (ve herkesin POST yöntemini tercih etmesinin sebebi) stdin'in bilgi
tutma kapasitesinin sinirsiz olmasindan ibarettir. QUERY_STRING degiskeni, Server'a, ve bu programin
ayarlarina göre sinirli boyutta bilgi tutabilir. Formlarinizda çok alan (yani çok degisken ve çok deger) varsa,
mutlaka POST yöntemini kullanmalisiniz. Aksi taktirde, bu bilgilerin QUERY_STRING degiskeninin bilgi tutma
kapasitesini asan bölümü, Server tarafindan silinir, CGI programina aktarilmaz.
Çevre degiskenlerimizden REQUEST_METHOD, Form'dan bilgilerin hangi yöntemle geldigini gösterdiginize
göre, CGI programimizi yazarken, önce bu degiskenin içerigini kontrol edebiliriz; bu GET ise, demek ki
Formun bilgileri QUERY_STRING degiskeninin içinde paket halinde duruyor. REQUEST_METHOD
degiskenin degeri POST ise, ziyaretçimizin Formumuza yazdigi bilgiler, stdin olarak gelmis ve stdin'in o
andaki boyutunu gösteren bilgi de CONTENT_LENGTH degiskenine islenmis demektir.
Hexadecimal Türkçe!
URL Encoding semasinda, Türkçe karakterlerin kodlari söyledir:
g: F0
G: D0
3/4
i: FD
I: DD
ü: FC
Ü: DC
s: FE
S: DE
ö: F6
Ö: D6
ç: E7
Ç: C7
(URL Encoding semasina göre, yüzde isareti "%25", Ve (&) isareti "%26" ve çiftçatal (#) isareti ise "%23"
olarak sifrelenir.)
Istemcinin Istekleri - Sunucunun Sunduklari
CGI programlarinin Browser'la iliskisini ele aldik. Fakat CGI programi, "Browser için" yazildigi kadar "Server
için" de yazilir. CGI ile Server'in çalismasini da programlamis oluruz. Bu yüzden, Server'in CGI-HTML
iliskisindeki yerini da tanimak zorundayiz. Server'i tanimaya Browser ile istem-sunus iliskisindeki yerinden
baslayabiliriz. Browser ile Server nasil alis veris yapiyorlar; ne alip, ne veriyorlar!
Ziyaretçi olarak siz Browser'in URL adres kutusuna, sözgelimi server.com adli halayî sunucudaki
merhaba.htm belgesinin adini (adresini) yazdiginizda neler olur? Bunu kisaca, adim adim görelim:
1. Browser'in http://www.server.com/merhaba.htm adli belgeyi talep etmesi, Server'a bir "HTTP Request"
(HTTP Talep) komutu göndermesi demektir. "GET" seklindeki bu komut sadece "Bana su kaynagi gönder!"
seklinde olmaz. Browser komutun arkasina Browser'in ne tür belgeler (text, HTML, Access, Excel, vs
uygulama programi dosyalari) ve media (GIF, JPEG, Bitmap, vs.) kabul edebilecegini, ve Browser'in türü ve
sürümünü, ve dosya ilgili (varsa) önsartlarini da ekler.
Diyelim ki bir Browser, bir Server'dan index.htm adli dosyayi istiyor ve bu dosyayi ancak ve sadece 12 Ocak
2000, GMT saat 10:00'dan sonra degismisse göndermesini sart kosuyor. Bu durumda "HTTP Request" söyle
olur:
GET /index.htm HTTP/1.1
If-Modified-Since: Sun, 12 Jan 2000 10:00:00 GMT
Accept: text-html
Accept: */*
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
Burada, Browser, varsayilan talep komutu olan GET ile ne istedigini ve ne kabul edebilecegini Server'a
bildiriyor.
2. Server bu talebi alinca önce belgeyi arar; bulamazsa Browser'a hata mesaji gönderir. Server, bu dosyayi
bulursa, önce uzantisina bakarak, ne tür bir dosya olduguna karar verir; ve
3. Bu karara dayanarak, gerekli baslik (header) bilgilerini ve dosyanin içerigini talep sahibi Browser'a
gönderir. (Bu arada baslikla içerik arasina bir bos satir koymasi da ihmal etmez! Bu bos satir, Server'in
Browser'a gönderdigi iki önemli veri kümesini birbirinden ayirmaya yarar.)
Bu bilgi asagi yukari suna benzer:
HTTP 1.1 200 OK
Date: Mon, 12 Jul 2002 02:30:49 GMT
Server: Apache 1.3.1
Content-type: text/html
Content-length: 235
Last-modified: Mon, 12 Jan 2000 0200 GMT
Kaynak Site: Ismail KIRBAS ile Web Sitesi Tasarimi http://www.kirbas.com
Belge Adresi: www.kirbas.com/index.php?id=344
4/4

Benzer belgeler