1. SSL Yönlendirmesi
Web sitenizin HTTPS kullanarak güvenli bir şekilde erişilmesini sağlamak için HTTP’den HTTPS’ye yönlendirme.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Açıklama: Bu kod, HTTP üzerinden gelen tüm istekleri HTTPS’ye yönlendirir.
2. Belirli Bir Sayfayı HTTPS’ye Yönlendirme
Sadece belirli bir sayfayı HTTPS’ye yönlendirmek.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} ^/ozel-sayfa$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Açıklama: Sadece “/ozel-sayfa” yolunu HTTPS’ye yönlendirir.
3. IP Engelleme
Belirli bir IP adresinden gelen erişimi engellemek.
Order Deny,Allow
Deny from 192.168.1.1
Açıklama: 192.168.1.1 IP adresinden gelen tüm istekleri engeller.
4. IP Adresini İzin Verme
Belirli bir IP adresine erişim izni vermek.
Order Deny,Allow
Allow from 192.168.1.2
Deny from all
Açıklama: Sadece 192.168.1.2 IP adresinden gelen isteklere izin verir, diğer tüm istekleri engeller.
5. Dizin Listesini Kapatma
Dizin içeriğinin listelemesini kapatmak.
Options -Indexes
Açıklama: Bu kod, dizin listelenmesini devre dışı bırakır, böylece ziyaretçiler dizinlerin içeriğini göremez.
6. 301 Yönlendirmesi
Kalıcı olarak başka bir sayfaya yönlendirme.
Redirect 301 /eski-sayfa.html /yeni-sayfa.html
Açıklama: “/eski-sayfa.html” adresini “/yeni-sayfa.html” adresine kalıcı olarak yönlendirir.
7. 302 Yönlendirmesi
Geçici olarak başka bir sayfaya yönlendirme.
Redirect 302 /gecici-sayfa.html /yeni-gecici-sayfa.html
Açıklama: “/gecici-sayfa.html” adresini geçici olarak “/yeni-gecici-sayfa.html” adresine yönlendirir.
8. Hotlink Koruması
Diğer sitelerin sizin bant genişliğinizi kullanarak resimlerinizi göstermesini engellemek.
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?siteniz.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [F]
Açıklama: Başka sitelerden gelen resim isteğini engeller.
9. Kullanıcıyı Anasayfaya Yönlendirme
Kullanıcıları otomatik olarak anasayfaya yönlendirmek.
RewriteEngine On
RewriteRule ^$ /anasayfa.html [L]
10. URL’den www Kaldırma
URL’den “www” ön ekini kaldırmak.
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Açıklama: www ile başlayan URL’leri www olmadan yönlendirir.
11. URL’ye www Ekleme
URL’ye “www” ön ekini eklemek.
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Açıklama: www olmayan URL’leri www ile başlayan URL’lere yönlendirir.
12. Dosya Türüne Göre Yönlendirme
Belirli bir dosya türüne gelen istekleri yönlendirmek.
RewriteEngine On
RewriteRule \.pdf$ /pdf-yonlendirme.html [L]
Açıklama: PDF dosyalarına gelen istekleri “/pdf-yonlendirme.html” sayfasına yönlendirir.
13. Eski URL’den Yeni URL’ye Yönlendirme
Eski bir URL’yi yeni bir URL’ye yönlendirmek.
RewriteEngine On
RewriteRule ^eski-urun/(.*)$ /yeni-urun/$1 [R=301,L]
Açıklama: “/eski-urun” ile başlayan tüm URL’leri “/yeni-urun” ile başlayan URL’lere yönlendirir.
14. Erişim Kontrolü
Belirli bir dizine erişimi şifreyle korumak.
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /path/to/.htpasswd
Require valid-user
Açıklama: Dizin erişimini .htpasswd dosyasındaki kullanıcı adı ve şifre ile sınırlar.
15. Dizin Koruması
Bir dizini şifreyle korumak için gerekli .htpasswd dosyasını oluşturmak.
htpasswd -c /path/to/.htpasswd username
Açıklama: Kullanıcı adı ve şifre ile .htpasswd dosyasını oluşturur.
16. 404 Sayfası Yönlendirmesi
Özel bir 404 hata sayfası ayarlamak.
ErrorDocument 404 /404.html
Açıklama: 404 hatalarında “/404.html” sayfasını gösterir.
17. 500 Hata Sayfası Yönlendirmesi
Özel bir 500 hata sayfası ayarlamak.
ErrorDocument 500 /500.html
Açıklama: 500 hatalarında “/500.html” sayfasını gösterir.
18. Tarayıcı Önbellekleme
Tarayıcı önbelleklemesini kontrol etmek.
<filesMatch "\.(jpg|jpeg|png|gif|css|js)$">
ExpiresActive On
ExpiresDefault "access plus 1 month"
</filesMatch>
Açıklama: Belirtilen dosya türlerinin tarayıcı önbelleklemesini 1 ay süreyle etkinleştirir.
19. URL Yeniden Yazma
Dostu URL’ler oluşturmak için URL’leri yeniden yazmak.
RewriteEngine On
RewriteRule ^urunler/(.*)$ urun-detay.php?urun=$1 [L]
Açıklama: “/urunler/xxx” URL’sini “urun-detay.php?urun=xxx” URL’sine yönlendirir.
20. Mobil Cihaz Yönlendirmesi
Mobil cihazları özel bir sayfaya yönlendirmek.
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "android|iphone|ipad" [NC]
RewriteRule ^$ /mobil-anasayfa.html [L]
Açıklama: Mobil cihazlardan gelen istekleri “/mobil-anasayfa.html” sayfasına yönlendirir.
21. HTTP Metodu Kontrolü
Sadece GET ve POST isteklerine izin vermek.
<LimitExcept GET POST>
Deny from all
</LimitExcept>
Açıklama: GET ve POST dışındaki tüm HTTP isteklerini engeller.
22. İçerik Türüne Göre Yönlendirme
Belirli bir içerik türüne gelen istekleri yönlendirmek.
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(xml|rss)$
RewriteRule ^(.*)$ /rss-yonlendirme.html [L]
Açıklama: XML ve RSS dosyalarına gelen istekleri “/rss-yonlendirme.html” sayfasına yönlendirir.
23. Dosya Boyutu Sınırlaması
Yüklenen dosyaların boyutunu sınırlamak.
LimitRequestBody 1048576
Açıklama: Yüklenen dosya boyutunu 1 MB ile sınırlar.
24. IP Aralığını Engelleme
Belirli bir IP aralığını engellemek.
Order Deny,Allow
Deny from 192.168.0.0/24
Açıklama: 192.168.0.0 ile 192.168.0.255 arasındaki tüm IP adreslerinden gelen istekleri engeller.
25. Siteyi Bakım Moduna Alma
Siteyi bakım moduna almak için gelen tüm istekleri bakım sayfasına yönlendirmek.
RewriteEngine On
RewriteCond %{REQUEST_URI} !/bakim.html$
RewriteRule ^(.*)$ /bakim.html [R=302,L]
Açıklama: Tüm istekleri geçici olarak “/bakim.html” sayfasına yönlendirir, bakım modunu etkinleştirir.
Bu makalede, .htaccess dosyası ile yapılabilecek 25 farklı yapılandırma ve yönlendirme örneği verilmiştir. Her bir kodun ne yaptığı ve nasıl kullanılabileceği detaylı olarak açıklanmıştır. Bu kodlar, web sitenizin güvenliğini artırmak, performansını iyileştirmek ve kullanıcı deneyimini geliştirmek için kullanılabilir.
Bir yanıt yazın