Htaccess dosyası ile 5 önemli ayar
Son zamanlarda sıkça adını duyduğumuz htaccess dosyası ile, özellikle WordPress gibi içerik yönetim sistemi kullanan blog sahipleri bir takım güvenlik ayarları yapmaya ihtiyaç duyuyor. Tabi sadece WordPress için değil bütün siteler için kullanılan bir güvenlik dosyası bu. Sadece WordPress ile yaygınlaştığını söyleyebilirim. Ben de bunun üzerine .htaccess dosyası ile yapılabilecek önemli 5 ayardan söz etmek istiyorum. Ama öncelikle bilmeyenler için bu dosyanın ne olduğuna bir bakalım.
Htaccess nedir?
İlk olarak htaccess’in Notepad gibi en basit bir metin editörüyle bile oluşturulabilen bir ASCII dosyası olduğunu söyleyebiliriz. Htaccess dosyası başındaki “nokta” işaretinden de anlaşılabileceği gibi adı olmayan, sadece uzantıdan ibaret basit bir dosyadır. Ve sunucularınızda genellikle ana dizinde bulunur ancak güvenlik dolayısıyla çoğu zaman kendini gizlediği için görünmeyebilir.
Htaccess ne işe yarar?
Htacces kısaca, sunucunuzdaki dosya ve klasörleri gizleme ve şifreleme yoluyla kullanıcılara erişimi kapatarak güvenliği artırmanıza yarar. Tabi her şey bununla bitmiyor. Arama motoru optimizasyonu, bant genişliği, veri sıkıştırma ve yönlendirme gibi bir çok işlem de bu dosya ile yapılabilmektedir.
Bu makalede değineceğim işlemler de özellikle güvenlik konusunda işinize yarayacak.
1) Şifre Koruması
Klasör şifreleme işlemine, ilk önce şifrelemek istediğimiz klasörün içinde kullanıcı adı ve şifreden ibaret olan bir .htpasswd dosyası oluşturarak başlıyoruz. Burada dikkat edilmesi gereken nokta; kullanıcı adının düz metin, şifrenin ise şifreli karakterlerden oluşması gerekiyor. Şifreyi http://www.kxs.net/support/htaccess_pw.html adresinden oluşturabilirsiniz. Daha sonra .htaccess dosyanıza aşağıdaki satırları ekleyin.
|
1 2 3 4 |
AuthName "Klasör Adı" //Şifrelemek istediğiniz klasörün adını yazın
AuthType Basic
AuthUserFile /full/path/to/.htpasswd // htpasswd dosyasının yolu.
Require valid-user |
2) Klasörlere Erişim
Bu metod ile istediğiniz kullanıcıların IP adreslerine engelleme ya da izin atayarak klasörlerinize kişilere özel erişim hakkı sağlayabilirsiniz.
Klasöre hiç kimsenin erişememesini istiyorsanız htaccess dosyasınıza;
|
1 2 |
#deny all access
deny from all |
IP adreslerine göre erişim ayarları yapmak istiyorsanız;
|
1 2 3 4 |
#deny all access
deny from all
allow from xxx.xxx.xxx.xxx # tek ip adresi
allow from xxx.xxx.xxx./24 # ip bloğu |
3) Hata Sayfaları
Sitenizde ziyaretçiniz tarafından bir sayfa bulunamadığı durumlarda, htaccess dosyası ile istediğiniz hata sayfasına yönlendirme yapabilirsiniz.
|
1 2 3 4 |
ErrorDocument 401/errors/401.php
ErrorDocument 403/errors /403.php
ErrorDocument 404/errors /404.php
ErrorDocument 500/errors /500.php |
Bu ayarı yaparken Internet Explorer‘la ilgili dikkat etmeniz gereken bir nokta: 512 bayttan daha küçük hata sayfası hazırlarsanız Internet Explorer sizin sayfanızı gözardı edip kendi hata sayfasına yönlendirir. Böyle olmasını istemiyorsanız hata sayfalarını oluştururken 512 bayttan daha büyük olmasına dikkat edin.
4) Bant Genişliği Koruması
Htaccess dosyanıza ekleyeceğiniz Php sıkıştırma modülü sayesinde verilerinizi sıkıştırarak aşırı bant genişliği kullanımını önleyebilirsiniz.
Bunun için aşağıdaki satırları htaccess dosyanıza ekleyin. Eğer sunucunuzda phpsuexec dosyası bulunuyorsa, bu satırları htaccess’e değil php.ini dosyasına eklemeniz gerekiyor.
|
1 2 3 |
<ifModule mod_php4.c>
php_value zlib.output_compression 16386
</ifModule> |
5) Hotlink Koruması
Hotlink, sizin sitenizde (sunucunuzda) bulunan resim ya da videolara ait linklerin başka sitelerde kullanılmasına deniyor kısaca. Böyle durumlarda ise olan sizin bant genişliğinize oluyor tabi. Yani sizin isteğiniz dışında fazla bant genişliği kullanımı ortaya çıkıyor.
Bunun önüne geçmek için öncelikle nohotlink.gif adında bir resim dosyası oluşturun. Sonra aşağıdaki satırları .htaccess dosyasına ekleyerek kendi sitenize göre düzenleyin. Böylece sitenize ait dosyaların başkaları tarafından kullanımı durumunda, dosyanın yerine nohotlink.gif resmi görünecektir.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
RewriteEngine on
# BEGIN Hotlink Koruması
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/nohotlink-resminin-bulunduğu-klasör
# Hotlink resimlerinin olduğu dizini korumasız yapmalıyız ki, sonsuz dönüye girmeyelim.
RewriteRule ^.*$ - [L]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?siteniz\.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?facebook\.com [NC]
RewriteCond %{HTTP_REFERER} !^https://(.+\.)?facebook\.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?google\.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?google\.com\.tr [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp|JPG|JPEG|GIF|PNG|BMP)$ http://www.siteniz.com/nohotlink.$1 [L]
# Her format için ayrı ayrı nohotlink imajı oluşturmanız gerekir. Her tarayıcı her format için aynı imajı yorumlayamayabilir.
</IfModule>
# END Hotlink Koruması |
Benzer Yazılar:
-
http://www.dusesmoda.com duses
-
http://www.resimup.net resim upload
-
http://sayz.us sefa yıldız









