Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Htaccess İle Güvenlik Ve Diğer Ayarlar
#1

Htaccess (Açılımı: Hypertext Access), Apache HTTP Suncusu tarafından kullanılan ve host üzerinde bazı kurallar belirterek modifikasyonlar yapılmasını sağlayan bir ASCII dosyasıdır. Kullanımı sırasında ".htaccess" olarak genellikle server'ımızın ana dizinin de bulunur. Başında ki . (nokta) dan da belli olduğu gibi adı olmayan ve sadece uzatıdan oluşan bir dosyadır.

.htaccess ne işe yarar?
Htaccess dosyası ile; dosya ve klasörleri gizleme veya şifreleme, SEO çalışmaların da SEF link oluşturma, bant genişliği, veri sıkıştırma, güvenlik gibi bir çok işlem de bu isimsiz dosya ile gerçekleştirilmektedir.

Bazı ".htaccess" kullanımlarına bakalım;

1) Klasör Şifre Koruması
Bu işlem de amaç, istediğimiz klasöre şifre koruması koyarak klasör içeriğine erişimi engellemek. Fakat burada dikkat etmemiz gereken bir şey var ve o da "kullanıcı adının" düz metin, "kullanıcı şifresinin" ise şifreli karakterlerden oluşturulmuş olması gerekiyor. Şifre oluşturmak için bu siteyi ziyaret edebilirsiniz: http://www.kxs.net/support/htaccess_pw.html

Kullanımı:

AuthName "KlasörAdı" //Şifrelemek istediğiniz klasörün adı
AuthType Basic
AuthUserFile /full/path/to/.htpasswd // htpasswd (şifrenin yolu) dosyasının yolu
Require valid-user

2) Klasöre Erişim
İstediğiniz klasöre, kullanıcı IP adresine göre engelleme ya da erişim izni verebilirsiniz. Böylelikle kişiye özel erişim hakkı sağlamış olursunıuz.

Kullanımı:

#deny all access
deny from all
allow from xxx.xxx.xxx.xxx # kullanıcının ip adresini
allow from xxx.xxx.xxx./24 # kulllanıcının ip bloğu

3) Erişimi Engellemek
Eğer klasörü herkese engellemek ve kimsenin erişmesini istemiyorsanız da bu methodu kullanmanız gerekiyor.

Kullanımı:

#deny all access
deny from all

4) Hata Sayfaları
Web siteniz de, ziyaretçi tarafından bulunamayan bir sayfa olduğunda .htaccess sayesin de yolunu belirttiğimiz hata sayfasına yönlendirme yapabiliyoruz. Burada dikkat etmemiz gerek ufak bir nokta var o da, 512 bayt'tan daha küçük hata sayfası hazırlasanız kullandığınız browser büyük ihtimalle sizin oluşturduğunuz hata sayfasını yok sayarak kendi hata sayfasına yönlendirecektir. Dikkat etmelisiniz.

Kullanımı:

ErrorDocument 401/errors/ 401.php
ErrorDocument 403/errors /403.php
ErrorDocument 404/errors /404.php
ErrorDocument 500/errors /500.php

5) Bant Genişiğini Korumak
PHP sıkıştırma modülü sayesin de sitenizde bulunan verilerin sıkışmasını sağlayarak gereksiz bant genişliği tüketmeyi önleyebilirsiniz. Bu .htaccess kullanımında da dikkat etmeniz gereken bir şey var. Sitenizin bulunduğu sunucu da phpsuexec bulunuyorsa, bu methodu .htaccess'e değil de php.ini dosyasına eklemeniz gerekiyor. Tabii sunucu üzerinde ne kadar yetkiniz olduğu da burada önemli bir faktör.

Kullanımı:

<ifModule mod_php4.c>
php_value zlib.output_compression 16386
</ifModule>

6) Hotlink Koruması
Hotlink, web siteniz de bulunan görsellerin (fotoğraf, resim, video) siteniz üzerinden başka web sitelerinde gösterilmesine denir. Bu durum size hem olumlu hem olumsuz yansır aslında. Olumsuzluğu; siteniz üzerinden gösterileceği için olan sizin bant genişliğinize olur. Olumlu tarafı ise; sitenizin hit'i artmış olur. Bence bu durum da kararı sizin vermeniz gerekiyor. Eğer bant genişliği fazla tüketmiyorsa hotlink uygulamasını kullanmamak gerekir.

Hotlink uygulamasını kullanmaya karar verdiğiniz aşama da ise, bir görsel oluşturmamız gerekiyor öncelikle mesela "nohotlink.gif". Artık siteniz de bulunan görsellere hotlink yapılmışsa bu görsel belirir ve bant genişliğinizi korumuş olursunuz.

Kullanımı:

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ısınız ki sonuz döngüye girmesin
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ı

7) Permalink - URL ReWrite Uygulaması
URL'lerin klasörmüş gibi gösterilmesini sağlayan ve SEO için kullanılan bir teknik. Bu methodu kendi sitenize göre uygulamanız ve geliştirmeniz gerekiyor tabii ki ben sadece basit kullanımı verebilirim. Smile

Kullanımı:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?sayfa=$1 [L]
</IfModule

8) Zararlı Botları Engellemek
Zararlı olduğu belirlenen bazı botları engelmek için kullanılır ve sitemize ek güvenlik sağlamış oluruz. Bu kod kümeisni kullandığınız zaman siteninizin buludnuğu sunucuya biraz yük bindirmiş olabilirsiniz ama bu da hosting firmanıza bağlı zaten.

Kullanımı:

RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:craftbot@yahoo.com [OR]
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR]
RewriteCond %{HTTP_USER_AGENT} ^Custo [OR]
RewriteCond %{HTTP_USER_AGENT} ^DISCo [OR]
RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon [OR]
RewriteCond %{HTTP_USER_AGENT} ^eCatch [OR]
RewriteCond %{HTTP_USER_AGENT} ^EirGrabber [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [OR]
RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures [OR]
RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro [OR]
RewriteCond %{HTTP_USER_AGENT} ^EyeNetIE [OR]
RewriteCond %{HTTP_USER_AGENT} ^FlashGet [OR]
RewriteCond %{HTTP_USER_AGENT} ^GetRight [OR]
RewriteCond %{HTTP_USER_AGENT} ^GetWeb! [OR]
RewriteCond %{HTTP_USER_AGENT} ^Go!Zilla [OR]
RewriteCond %{HTTP_USER_AGENT} ^Go-Ahead-Got-It [OR]
RewriteCond %{HTTP_USER_AGENT} ^GrabNet [OR]
RewriteCond %{HTTP_USER_AGENT} ^Grafula [OR]
RewriteCond %{HTTP_USER_AGENT} ^HMView [OR]
RewriteCond %{HTTP_USER_AGENT} HTTrack [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Image\ Stripper [OR]
RewriteCond %{HTTP_USER_AGENT} ^Image\ Sucker [OR]
RewriteCond %{HTTP_USER_AGENT} Indy\ Library [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^InterGET [OR]
RewriteCond %{HTTP_USER_AGENT} ^Internet\ Ninja [OR]
RewriteCond %{HTTP_USER_AGENT} ^JetCar [OR]
RewriteCond %{HTTP_USER_AGENT} ^JOC\ Web\ Spider [OR]
RewriteCond %{HTTP_USER_AGENT} ^larbin [OR]
RewriteCond %{HTTP_USER_AGENT} ^LeechFTP [OR]
RewriteCond %{HTTP_USER_AGENT} ^Mass\ Downloader [OR]
RewriteCond %{HTTP_USER_AGENT} ^MIDown\ tool [OR]
RewriteCond %{HTTP_USER_AGENT} ^Mister\ PiX [OR]
RewriteCond %{HTTP_USER_AGENT} ^Navroad [OR]
RewriteCond %{HTTP_USER_AGENT} ^NearSite [OR]
RewriteCond %{HTTP_USER_AGENT} ^NetAnts [OR]
RewriteCond %{HTTP_USER_AGENT} ^NetSpider [OR]
RewriteCond %{HTTP_USER_AGENT} ^Net\ Vampire [OR]
RewriteCond %{HTTP_USER_AGENT} ^NetZIP [OR]
RewriteCond %{HTTP_USER_AGENT} ^Octopus [OR]
RewriteCond %{HTTP_USER_AGENT} ^Offline\ Explorer [OR]
RewriteCond %{HTTP_USER_AGENT} ^Offline\ Navigator [OR]
RewriteCond %{HTTP_USER_AGENT} ^PageGrabber [OR]
RewriteCond %{HTTP_USER_AGENT} ^Papa\ Foto [OR]
RewriteCond %{HTTP_USER_AGENT} ^pavuk [OR]
RewriteCond %{HTTP_USER_AGENT} ^pcBrowser [OR]
RewriteCond %{HTTP_USER_AGENT} ^RealDownload [OR]
RewriteCond %{HTTP_USER_AGENT} ^ReGet [OR]
RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger [OR]
RewriteCond %{HTTP_USER_AGENT} ^SmartDownload [OR]
RewriteCond %{HTTP_USER_AGENT} ^SuperBot [OR]
RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP [OR]
RewriteCond %{HTTP_USER_AGENT} ^Surfbot [OR]
RewriteCond %{HTTP_USER_AGENT} ^tAkeOut [OR]
RewriteCond %{HTTP_USER_AGENT} ^Teleport\ Pro [OR]
RewriteCond %{HTTP_USER_AGENT} ^VoidEYE [OR]
RewriteCond %{HTTP_USER_AGENT} ^Web\ Image\ Collector [OR]
RewriteCond %{HTTP_USER_AGENT} ^Web\ Sucker [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebAuto [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebCopier [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebFetch [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebGo\ IS [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebLeacher [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebReaper [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebSauger [OR]
RewriteCond %{HTTP_USER_AGENT} ^Website\ eXtractor [OR]
RewriteCond %{HTTP_USER_AGENT} ^Website\ Quester [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebStripper [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebWhacker [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebZIP [OR]
RewriteCond %{HTTP_USER_AGENT} ^Widow [OR]
RewriteCond %{HTTP_USER_AGENT} ^WWWOFFLE [OR]
RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [OR]
RewriteCond %{HTTP_USER_AGENT} ^Zeus
Ara
Cevapla


Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi