Fihrist

internet etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
internet etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

8 Ağustos 2010 Pazar

MySQL Rezerve Edilmiş Kelimelerin Kullanımı

Bir MySQL sorgusu içinde kullandığınız tablo ve kolon isimleri eğer MySQL tarafından rezerve edilmiş kelimeler listesi içindeyse onları 'backquote' (``) içinde yazmalısınız. Mesela kolonlarınızdan birine 'from' veya 'to' ismini verecekseniz, "INSERT INTO tablo (from,......." yerine "INSERT INTO tablo (`from`,...." demelisiniz.

MySQL rezerve kelimelerinin tam listesi için:

5 Haziran 2010 Cumartesi

Google Servislerine Ulaşmak

Bilindiği üzere BTK (Bilgi Teknolojileri ve İletişim Kurumu) mahkeme tarafından erişilmesi yasaklanan YouTube isimli video paylaşım sitesinin IP lerini blokluyor. Bu engel, DNS kullanarak veya host dosyası modifiye edilerek aşılıyordu. Son IP listesi güncellemesi ile Google DNS (8.8.8.8 - 8.8.4.4) artık (en azından bende) işe yaramıyor.

Bunun için host dosyasına bir takım eklemeler yapabiliriz. Bloklanmayan bir IP adresinden sonra girmek istediğimiz google servisini (ya da herhangi bir adresi -tabi onun çalıştığı bir IP'yi girmek şartı ile) yazarız. Mesela

74.125.43.103 code.google.com

gibi. Herhangi bir google servisi için bu IP adrsini kullanabilirsiniz. Unutmadan, bu erişim engelinin Google için yapılmadığını çünkü Google hakkında bir mahkeme kararı olmadığını, yasağın kapsamının sadece YouTube ile (en azından şimdilik) sınırlı olduğunu belirteyim. Sadece BTK, YouTube erişiminin olduğu IP'leri bloklayınca o IP üzerinden hizmet veren diğer Google servislerine de ulaşılamıyor. En kısa sürede Google'ın bu işi otomatik yönlendirme ile halledeceğini ümit ediyorum. BTK'nın açıklamasının ayrıntıları için:


Yasak kapsamında Ulaştırma Bakanı Binali Yıldırım'ın verdiği yanıt, düşücelerimi Türkiye'nin haklı olduğu yönünde değiştirmeye başladı:

“Youtube, Türkiye’den girişler azaldığı için Google girişlerini kullanmaya başladı. Kendi IP’lerini bırakıp Google IP’lerini kullanmaya başladı. Arıyoruz, telefonlarımıza bile çıkmıyorlar, muhatap bile olmuyorlar. Bir site bizi esir alamaz. Bir de Türkiye yasakçılar listesinde diye propaganda yapıyorlar.

Vuku bulan işlerle verilen ceza orantısızdır diyebilirsiniz, buna tamam. Peki neden haklarını aramıyorlar? Neden Türkiye’ye tabi olmak istemiyorlar. Neden vergi dairesinin adresini bilmiyorlar? Siz Google’dan zengin misiniz? Siz vergi vereceksiniz, onlar bu kadar reklama rağmen vergi vermeyecekler… Beni yasakçı saysınlar önemli değil. Kimse bu ülkeyi hafife alamaz. İsrail’e özel içerik yapıyor. 28 ülkeye özel içerik yapmışsın. Bize de yap, yapmam. Bunları çıkar, çıkarmam. Türkiye’yi yok sayıyorlar, vergi mükellefi olmak istemiyorlar. Mahkeme karar veriyor, itiraz etmiyorlar. Neden? Çünkü muhatap almıyorlar…”

25 Mayıs 2010 Salı

Apache Gerisinde Tomcat Çalıştırmak

Apache güzel bir sunucu. Tomcat ise java tabanlı web projelerinde kullanılıyor. Sadece tomcat yükleyip de direk kullanabilirsiniz. Ama ben apache'yi önde bir geçiş sunucusu olarak kullanamak istedim. Böylelikle php de interpret edebiliyorum.

Şimdi gelelim teknik detaylara. Dışardan rahatça erişmek için port olarak 80 yani http portunu kullanmak lazım. Kimse web sitesine girerken www.bilmemne.com:12345 yazmak istemez. Neyse Apache zaten default olarak http portuna kuruluyor. Redhat türevi sunucularda

$yum install httpd

diyerek apache sunucusunu kurabilirsiniz. İsterseniz veya özel bir sürüm kurmak istiyorsanız apache sitesinden de indirebilirsiniz. tar.gz uzantılı dosyayı indirip çıkartıyoruz. Sonra Tomcat'i kurmamız lazım. Sonra derken, aslında sıra farketmez. Onun için de

$yum install tomcat6

diyebilirsiniz. Benim zamanımda son sürümler Apache için 2.2 Tomcat için 6 idi. Hangi programların hangi versiyonlarının yum'da yüklü olduğunu

$yum search httpd

veya

$yum search tomcat

diyerek de kontrol edebilirsiniz. Neyse konumuza geri dönelim. yum ile yüklediğiniz zaman /etc klasörüne yüklüyor. İsterseniz taşıyabilirsiniz de. Mesela /opt'a taşıyabilirsiniz. Yum'suz kurmak için

$wget http://godel.cs.bilgi.edu.tr/apache/tomcat/tomcat-6/v6.0.26/bin/apache-tomcat-6.0.26.tar.gz

deyip indirebilirsiniz. Yalnız bu link sürekli değişebilir. O yüzden Apache sitesinden kontrol edin. Sonra

$tar xzvf apache-tomcat-6.0.26.tar.gz

deyip çıkartın. İsterseniz her defasında apazche-tomcat-6.0.26 yazmak istemiyorsanız sembolik link oluşturabilirsiniz. Bir nevi kısayol olarak düşünülebilir.

$ln -s /opt/apache-tomcat-6.0.26 tomcat

Şimdi teknik detaylara devam edelim. Tomcat'in varsayılan portu 8080. (Bunu da değiştirebilirsiniz. Değiştirmek için tomcat klasörü içinde conf klasöründe server.xml dosyasını açın. Orada comment edilmemiş vaziyette bulunan 8080 portunu değiştirebilirsiniz. Değiştirmeye filan gerek yok aslında ama 8080 başkasına atanmışsa veya illa başka port kullanmak istiyorsanız o sizin bileceğiniz iş.) Benim kullandığım metod proxy. Yani Apache içindeki bir klasörü direk Tomcat'a yönlendirmek. Bunun için Apache'nin httpd.conf doyasını değiştireceğiz.

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

Bu satırlar zaten vardır. Yoksa ekleyin. Bunlardan sonra

ProxyPass /apac_dir/ http://localhost:8080/tomcat_dir/
ProxyPassReverse /apac_dir/ http://localhost:8080/tomcat_dir/

satırlarını yazın. Bunlar şu manaya geliyor. Apache'ye apac_dir dizini üzerinden gelen istekler direk olarak 8080 portunda çalışan sunucunun tomcat_dir dizinine yönledirilir. Burada Tomcat'e bir bağımlılık yok, porta bir bağımlılık yok, hatta localhost'a bile bağımlılık yok. Yani istediğiniz bir sunucunun istediğiniz bir portuna 'port' edebilirsiniz. Bunu yapmanız sonucunda artık www.mysiteadress.com/apac_dir dediğiniz zaman bu isteği Tomcat karşılar ve Tomcat'in webapps/ROOT içindeki tomcat_dir çalışır. Ha unutmadan b işemleri yaptıktan sonra tomcat ve apache'yi yeniden başlatmayı unutmayın.

Bu yaptığımız yöntem belli bir dizini tamamen apache üzerinden tomcat'e yönlendirmeye yaradı. Fakat apache statik dataları tomcatten daha verimli işlediği için bir dizine gelen bütün istekleri tomcat'e yönlendirmek mantılı olmayabilir. 'Daha verimli bir yol yok mu?' 'Sadece gereken dataları tomcat'e yönlendirsek?' diye düşünenler varsa mod_jk metodunu kullabilirler.