Windows altında .htaccess dosyalarını çalıştıramadıklarını belirten arkadaşlar, mod rewrite kullanan scriptleri kullanamadıklarını belirttiler. Herhangi bir linke tıkladıklarında "sayfa görüntülenemiyor" yani kısaca 404 hatası aldıklarını söylüyorlar. Bu sorunun çözümü gayet basit. öncelikle php bilgisayarınızda iss üzerinden çalışmıyor olmalı. çünkü modrewrite sadece apacheye özgün bir module dur. Biraz daha açmak gerekirse;
-Plesk kullanan sunucumda .htaccess çalıştırabilirmiyim?Hayır malesef çalıştıramazsınız.
-Kendi bilgisayarım üzerinde .htaccess çalıştırabilirmiyim?Eğer apache kurmuşsanız (ki %99 kurmuşsunuzdur) evet.
-Peki Nasıl?Hemen anlatalım. ilk önce apacheyi kurduğunuz dizine giriyoruz. (örneğin benim için c:\wosportable\apache2) Daha sonra bu dizin içerisindeki conf klasörüne giriyoruz. "httpd.conf" adlı dosyayı herhangi bir metin editörü ile açıyoruz.
#LoadModule rewrite_module modules/mod_rewrite.so
ifadesini
LoadModule rewrite_module modules/mod_rewrite.so
ile değiştiyoruz. yani başındaki # işaretini kaldırıyoruz Daha sonra apacheye restart atıyoruz. (Nasıl atılıyor bilmiyorsanız bilgisayarı yeniden başlatşn )
Artık modrewrite özelliği kullanılabilir durumda. Yani bilgisayarınızda .html şekline üretilen sahte sayfalar gerçekmiş gibi kullanılabilir.
-Son olarak bu özelliği linux sunucuma kurabilirmiyim kısmını merak ediyorsanız ?Tabiki kurabilirsiniz. Linux sunucularda da yukarıda bahsedilen Aynı ayarları yaparak bu module u aktif hale getirebilirsiniz. Shell e bağlanın. su komutu ile root olarak giriş yapın.
Ardından
"locate httpd.conf"
yazarak httpd.conf dosyasının yerini belirleyin ( /usr/local/apache/conf/httpd.conf ) klasörü altında olması gerekir
Sonra bu dosyayı bir metin editörüyle açın. (örneğin pico, vi veya nano)
pico /etc/apache/bin/httpd.conf
Ardından yukarıda bahsettiğimiz değişikliği yaptıktan sonra dosyayı kaydedip çıkın.
service httpd restart
komutu ile apacheyi yeniden başlatın. Eğerki Apache servisini yeniden başlatırken bir hata almadıysanız sorun yok demektir..