Web Sitenize Script Kurma Rehberi
Transkript
Web Sitenize Script Kurma Rehberi
Aycan Gönenç [email protected] / www.aycangonenc.com Web Sitenize Script Kurma Rehberi ir Web sitesine anlam kazand›ran en önemli özelliklerden biri interaktif olmas›d›r. Sitenize u¤rayanlar, site içeri¤ine ne kadar çok katk›da bulunabilirse, siz sitenizden ziyaretçilerle ilgili ne kadar çok bilgi alabilirseniz ve site içeri¤ini ne kadar kolay güncelleyip yönetebilirseniz, Web siteniz o kadar baflar›l› olur. Bütün bunlar› yapabilmeniz için Internet’te binlerce Perl ve PHP dilinde yaz›lm›fl script mevcut. (Bu sitelerden bafll›calar›na http:// www.aycangonenc.com sitesinin linkler bölümünden ulaflabilirsiniz.) Perl ve PHP script’lerinin belli bafll› ortak özelliklerini ve baz› terimlerin ne anlama geldi¤ini bilmiyorsan›z, bu script’leri Web sitenize kurup çal›flt›rman›z mümkün olmaz. ‹flte bu nedenle bu yaz›mda bir script’in nas›l yaz›laca¤›n› de¤il, haz›r bir script’in Web sitenize kurulmas› için bilmeniz gerekenleri anlataca¤›m. Önce ihtiyac›m›z olan yaz›l›mlara bir göz atal›m: BBEdit Lite: Scriptleri aç›p kendi bilgilerimizle özellefltirmek için kullanaca¤›z. Her ne kadar Mac’in sistemi ile haz›r gelen Kolay Yaz› (Simple Text) ayn› ifli görse de, özellikle büyük boyutlu script’lerin aç›l›p okunmas›nda Kolay Yaz› yetersiz kal›yor. Ayr›ca Kolay Yaz›’ya göre çok daha geliflmifl özelliklere (sat›r numaralar›n› göstermesi ve PC format›ndaki yaz›lar› düzgün göstermesi gibi) sahip olan bu yaz›l›m› kullanmakta fayda var. Zipit: Internet’ten indirece¤iniz script’ler ço¤unlukla zip format›nda B 50 Kas›m 2002/MacLine ‹nteraktif Web sitesi haz›rlamak için gerekli script’leri sunucunuza kurman›n tüm detaylar› elinizin alt›nda. (ve bazen tar.gz format›nda) s›k›flt›r›lm›flt›r. Bunlar›n baz›lar›n› sistemimizde bulunan Stuffit Expander ile açabilsek de, aksi durumlarda PC’lerdeki Zip uygulamas›n›n Mac versiyonu olan Zipit yaz›l›m›n› kullanabiliriz. Charoma Converter: Geçti¤imiz say›daki yaz›m› okuyanlar hat›rlayacaklar, bu yaz›l›m› script’lerde kullanaca¤›m›z Türkçe karakterlerin Internet ortam›nda düzgün görünmesi için kullan›yoruz (Geçti¤imiz say›y› kaç›rd›ysan›z ve bu yaz›l›m›n nas›l kullan›ld›¤› konusunda bilginiz yoksa, http://www.aycangonenc. com/macline.shtml adresinden önce- ki aylarda yay›mlanan yaz›lar›m› PDF olarak indirebilirsiniz.) FTP Program›: Web tasar›m›na merakl›ysan›z zaten kulland›¤›n›z bir ftp program› vard›r. Ama e¤er yoksa benim severek kulland›¤›m Transmit’i tavsiye ederim. Bu yaz›l›mlar›n hepsini http:// www.aycangonenc.com adresindeki MacLine linkinden indirebilirsiniz. Web Server’›m›z Uygun mu? Herhangi bir script’i kullanmadan önce hosting hizmeti ald›¤›n›z kurumdan Web server’n›zda Perl ve/ veya PHP deste¤i olup olmad›¤›n› mutlaka ö¤renmeniz gerekiyor. Önce Download Edelim! Perl Yorumcusu Nerede? Ücretsiz script’leri bulabilece¤iniz bir siteye girin (mesela içlerinden en zengin olan www.hotscripts.com iyi bir seçenek). Buradan kullanmak istedi¤iniz bir script belirleyin ve bilgisayar›n›za indirin. Önemli not: Explorer’›n Mac versiyonu ile script’leri indirdi¤inizde, dosyay› indirmek için yine arac› bir script kullan›ld›¤›ndan, bilgisayar›n›za indirdi¤iniz dosya ad› (ziyaretcidefteri.zip) yerine (download.php) gibi oluflabilir. Böyle bir durumla karfl›lafl›rsan›z, dosya ad›n› uzant›s› (.zip) olarak de¤ifltirip üstüne çift t›klayarak açabilirsiniz (tabii orijinal dosya zip format›ndaysa! E¤er tar.gz uzant›l› ise o zaman bu uzant›y› yazman›z gerekiyor.) Perl ve cgi script’lerinin hemen ilk sat›r›nda Web server’›n›z içinde bu script’i yorumlayacak olan perl program›n›n adresini gösteren bir sat›r yer al›r. Bu adresi kendi server’›n›za göre de¤ifltirmezseniz script’iniz çal›flmaz. Bu adres genelde afla¤›dakilerden birisi gibidir: #!/usr/bin/perl #!/usr/local/bin/perl Perl yorumcusunun do¤ru adresini hosting hizmeti ald›¤›n›z firmadan ö¤renip, kullanmak istedi¤iniz perl ya da cgi program›n›n içindeki tüm .pl ve .cgi dosyalar›n›n ilk sat›r›ndaki adresi uygun flekilde de¤ifltiriniz. Sonra Ö¤renelim... ‹ndirdi¤iniz dosyay› açt›¤›n›zda içinde ço¤unlukla (README.TXT) ya da (README.HTML) gibi size script’i kurmak için neler yapman›z gerekti¤ini anlatan bir dosya bulunur. Öncelikle bu dosyay› iyice okuman›z ve yapman›z gerekenleri ö¤renmeniz gerekiyor. (‹ngilizce bilmiyorsan›z bilen bir arkadafl›n›z size yard›mc› olabilir.) Bu Terimler de Nedir? README dosyas›n› açt›n›z ve okudunuz, eh ‹ngilizceniz de fena de¤il. Ama nedense baz› terimler size hala (Frans›zca) geliyor de¤il mi? tamam iflte bu yaz›n›n amac› da bu terimleri aç›klamak zaten. ASCII Modu: Script’leri ço¤unlukla (Perl ve cgi script’lerde mutlaka) Web server’›n›za ASCII (Text) modunda yüklemeniz gerekir (Binary modunda olmamal›). Bunu yapmak için dosyay› yüklemeden önce kulland›¤›n›z ftp program›n›n upload seçene¤ini Text ya da ASCII olarak de¤ifltirin (Transmit’te File menüsünden ASCII mode seçene¤ini iflaretleyin.) CHMOD (file permissions): Web server’›n›za yükledi¤iniz her dosyan›n belli (izinleri) vard›r. README dosyas›nda script program› içerisindeki baz› dosyalara özel chmod ayarlar›n›n yap›lmas› istenebilir. Bu bize (ziyaretcidefteri.php dosyas›n›n chmod ayar›n› 666 yap›n, 755 yap›n) gibi bir rakamla belirtilir. Bu izinleri en iyi bir matriks fleklinde aç›klayabiliriz. Afla¤›daki ör- 52 Kas›m 2002/MacLine nekler Transmit program›n›n izinleri ayarlad›¤›m›z menüsünden (File > Get Info menüsü). Her ftp program›nda izinleri ayarlayaca¤›n›z buna benzer bir menü bulunur. Yandaki flekillerde (1. örnek ve 2. örnek) üç sütun görüyoruz; Owner, Group ve World. Owner dosyan›n sahibi olan kiflidir (yani siz). Group sizin taraf›n›zdan atanm›fl olan kullan›c›lar grubudur. World ise siteyi ziyaret eden herkes. Kolonun üst taraf›nda ise üç de¤er görüyoruz: Read, Write ve Execute. Read dosyan›n okunabilece¤ini, Write dosyaya yaz›labilece¤ini, Execute ise dosyan›n çal›flt›r›labilece¤ini belirtiyor. Bu de¤erlerin hangilerini hangi kullan›c› grubu alt›nda iflaretlerseniz, o gruba gerekli izinleri vermifl oluyorsunuz. Bu izinlerin toplam› da bize chmod de¤erini veriyor. fiöyle ki Read=4, Write=2, Execute=1 de¤erleri ile belirtilir. 1. Örnekte: Owner (r,w,e) yani 4+2+1 = 7 Group (r,e) yani 4+1 = 5 World=(r,e) yani 4+1 = 5 Olarak iflaretlenmifl. Dolay›s› ile chmod de¤erimiz 755 oluyor. ‹kinci örnekte atad›¤›m›z de¤erleri de ayn› mant›kta toplad›¤›m›zda chmod de¤eri 666 oluyor. Sendmail Program› Nerede? E-posta yollayan baz› perl programlar›nda Unix tabanl› Web server’›n›z içindeki email yorumcusunun pathini yazman›z istenir. Bu path hosting hizmeti ald›¤›n›z firmadan firmaya farkl›l›k gösterir (afla¤›da s›k kullan›lan iki örnek veriyorum). /usr/lib/sendmail /usr/sbin/sendmail Scriptinizi kullanarak e-posta yollamak ve almak için mail yorumcusunun do¤ru path’ini hosting firman›zdan ö¤renip, script’in ilgili sat›r›na bu path’i yazman›z gerekir. URL ile Server Path Aras›ndaki Fark Ço¤unlukla counter ya da ziyaretçi defteri gibi bir dosyaya kay›t yapan script’lerde, script içinde bir dosyan›n server path’ini yazman›z istenir. URL’nin ne oldu¤u malum, www.adresiniz.com gibi normal Web adresi... Server path ise server içinde dosyan›n nerede oldu¤unu gösteren bir root adresidir. Baflka bir deyiflle sanal adresi de¤il, dosyan›n server içindeki gerçek yerini gösterir. /usr/www/adresiniz gibi. Do¤ru server pathinizi ö¤renmek için hosting hizmeti ald›¤›n›z firmaya baflvurman›z gerekir. Diyelim ki script içinde ziyaretçilerin mesaj yazd›¤› bir dosya var (mesaj.txt) ve sizden script içine bu dosyan›n server path’ini yazman›z isteniyor. Bu durumda, server path’inizi ö¤rendikten sonra yazman›z gereken flu tarz bir adres olacakt›r: /usr/www/adresiniz/mesaj.txt SSI (Server Side Include) Nedir? 1. Örnek: chmod 755 2. Örnek: chmod 666 Script’i kullanmak için SSI metodu- na ihtiyac›n›z olabilir (Bu README dosyas›nda belirtilir zaten). SSI çok basit anlat›m› ile bir Web sayfas› içinde baflka bir sayfan›n ya da script’in görüntülenmesi için kullan›lan bir yöntemdir (Örne¤in bir counter script’inde sitenizin ana sayfas›nda ziyaretçi say›s›n›n görüntülenmesi için bu yöntem kullan›labilir). Ço¤unlukla SSI metodunun kullan›labilmesi için, bu metodu kullanaca¤›n›z sayfan›n uzant›s›n›n .htm ya da .html de¤il (.shtml) olmas› gerekir. Yine de bu bilgiyi do¤rulamak için hosting hizmeti ald›¤›n›z firmaya dan›fl›n›z. Apayr› bir kolayl›klar dünyas› olan SSI metoduna önümüzdeki aylarda genifl flekilde yer verece¤im. ayar›n› yapman›z istenebilir. README dosyas›n› inceleyip ayarlar›n do¤rulu¤undan emin olun. “404 File Not Found” Bu server’›n adresini girdi¤iniz dosyay›, script’i bulamad›¤›n› gösterir. Script ayarlar›n› yaparken do¤ru URL ve/veya path’i yazd›¤›n›zdan emin olun. Adresi yazarken büyük Eyvah Hata Oldu! Scriptinizi kurup çal›flt›rd›¤›n›zda, e¤er ifller yolunda gitmediyse karfl›n›za baz› hata mesajlar› ç›kar. ‹flte bu mesajlar›n anlamlar›: “403 Forbidden” Bu mesaj› görürseniz script’inizin chmod ayar›n› do¤ru yap›p yapmad›¤›n›z› kontrol edin. Bazen sadece script’in de¤il ayn› zamanda script’in içinde oldu¤u dosyan›n da chmod ya da küçük harf kullanman›z iflletim sistemine göre fark yaratabilir. Ayr›ca, script’i (ya da birbiri ile ba¤l› çal›flan script, dosya gruplar›n› do¤ru dizine yükledi¤inizden emin olun. “500 Server Error” Bu script’inizin yapmak istedi¤i ifllemi server’›n yorumlayamad›¤› anlam›na gelir. Baflka bir deyiflle, script kodunun bir yerlerinde bir hata mevcut ya da script’iniz Web server’›n›za uygun de¤il (baz› script’ler sadece unix ya da sadece windows NT gibi belli serverlar üzerinde çal›flabilir, script’in hangi serverlarla uyumlu oldu¤u genelde script’i indirdi¤iniz sayfada belirtilir). Bu hatan›n görünmesine neden olan en yayg›n yanl›fllar, script’i kendinize göre yorumlarken yanl›fll›kla kodu bölünmemesi gereken bir yerden bölmeniz ya da baflka bir yaz›m hatas› yapm›fl olman›z ya da script’i ASCII modunda de¤il de binary modunda yüklemenizdir. Yeterince kafan›z› kar›flt›rd›m m› bilmiyorum : ) Ama inan›yorum ki bu yaz›y› saklarsan›z, bir gün, bir script’i Web sitenize kurmaya çal›fl›rken kafan›za tak›lan bir sorunun cevab›n› bulman›za yard›mc› olabilir. ML Aycan Gönenç, uluslararası bir firmada iletişim koordinatörü olarak çalışmakta olup, ayrıca freelance Web ve multimedia tasarım hizmetleri vermektedir. Web: www.aycangonenc.com 53
Benzer belgeler
Aktif (client-based) Web Teknolojileri ve Programlama
Form Nesnesi : Javascript açısından HTML'in en önemli nesneleri formlardır. Çünkü
ziyaretçi ile etkileşmede en büyük unsurlardan birisi formlardır. HTML kendi form nesnesini
kendisi oluşturabilir. ...