bu .htaccess dosya Apache’de, dizin ve alt dizin düzeyinde yapılandırmalara izin veren bir araçtır. .htaccess sunucu yapılandırma dosyalarını değiştirmeden web sitesi izinlerini yapılandırmanıza olanak tanır.
Bu eğitim size gösterecek nasıl kurulur ve etkinleştirilir htaccess Apache’de. Ayrıca, sunucudaki belirli yerelleştirmelere erişimin nasıl kısıtlanacağı, IP adreslerinin nasıl yönetileceği ve trafiğin nasıl yönlendirileceği konusunda talimat verir.
Önkoşullar
- Çalışan bir Apache web sunucusu
- Bir terminal penceresine/komut satırına erişim
- Sudo ayrıcalıklarına sahip bir kullanıcı hesabına erişim
- gibi bir metin düzenleyici NTekrarvarsayılan olarak dahildir
1. Adım: Apache .htaccess’i etkinleştirin
Varsayılan olarak, .htaccess dosya etkin değil.
1. Terminalde aşağıdaki komutu girerek varsayılan ana bilgisayar yapılandırma dosyasını açın:
sudo nano /etc/apache2/sites-available/default
2. etiketli bölümü bulun
Bu bölümde, değiştir AllowOverride None
hepsine giriş:
Tümünü Geçersiz Kılmaya İzin Ver
Dosya ‘yı kaydet ve çıkış
3. Sonraki, tekrar başlat Apache hizmeti:
sudo systemctl apache2 restart
2. Adım: .htaccess Dosyası Oluşturun
Çoğu Linux yazılım paketi gibi, Apache de yapılandırma dosyaları üzerinde çalışır. bu .htaccess dosyası bunlardan biridir. Bir değerle birlikte bir ayar belirterek çalışır.
oluşturmak ve açmak için .htaccess düzenlemek için dosya girin:
sudo nano /var/www/my_website.com/.htaccess
Yer değiştirmek internet sitem gerçek web sitenizin adıyla. Bu dosya yoksa, metin düzenleyiciniz onu oluşturacaktır.
3. Adım: Dizin Listelerini Kısıtlayın
Sunucunuzda erişimi kısıtlamak istediğiniz konumlar olabilir. Bunu, erişim yetkisi verilmiş kullanıcı adları ve parolalardan oluşan bir liste oluşturarak yapabilirsiniz.
1. Yeni bir dosya oluşturarak başlayın, .htpasswd farklı bir dizinde:
sudo nano /user/safe_location/.htpasswd
Oluşturmak istediğiniz her kullanıcı için bir kullanıcı adı ve şifre girin. Emin ol güçlü parolalar kullanınve her satıra yalnızca bir kullanıcı adı/şifre çifti girin.
Dosyayı kaydet ve çık.
2. Sonra .htaccess’i şuraya düzenleyin: kimlik doğrulamayı etkinleştir:
AuthUserFile /user/safe_location/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Enter Password"
AuthType Basic
Require valid-user
Yer değiştirmek /user/safe_location/htpasswd Seçtiğiniz konum ile. Güvenlik nedeniyle web içeriğinizle aynı dizinde saklamayın.
AuthUserFile
– Bu, .htpasswd dosyanızın konumunu ayarlar.
AuthGroupFile
– Bir grup kullanmıyoruz, yani bu bir yer tutucu.
AuthName
– Bu, kullanıcıya yöneltilen bilgi istemidir – isterseniz yeniden ifade edebilirsiniz.
AuthType
– Kullanılan kimlik doğrulama türü – bunu değiştirmeyin.
Require valid-user
– Birkaç yetkili kişiden herhangi birinin oturum açmasına izin verir. Bunu şu şekilde değiştirebilirsin: Kullanıcı gerektir yeni_kullanıcı erişimi yalnızca kullanıcı adına sahip biriyle kısıtlamak için yeni kullanıcı.
IP Adreslerini Yönet
IP adreslerini yönetmenin birçok yolu vardır:
- Yalnızca belirli IP’lere izin ver.
- Belirli IP adreslerini engelleyin.
- Yönlendirene göre ziyaretçileri engelleyin.
IP Adreslerine İzin Ver
IP adreslerine izin vermek için, belirlenmiş birkaç IP adresine izin verecek şekilde davranışı değiştirebilir ve geri kalanını engelleyebilirsiniz.
Komutları girin:
order deny, allow
allow from 192.168.0.54
allow from 192.168.0
IP Adreslerini Engelle
IP adreslerini engellemek için htaccessgirmek: order allow, deny
Tek bir IP adresini engellemek için şu kodu girin: deny from 192.168.0.54
Son rakamı atlarsanız, 0 – 255 aralığındaki tüm IP adreslerini engeller:
Örneğin: deny from 192.168.0
Not: Aşağıda listelenen her işlemden sonra .htaccess dosyanızı kaydedebilirsiniz. Değişiklik yapmayı bitirdiyseniz, sadece Tekrar yükle test etmeden önce Apache hizmetiniz. Ayrıca dosyayı düzenlerken yorum yapmanızda fayda var. Bir satırı yorum olarak işaretlemek için # işaretini kullanın; bu, sistemin komut olarak okumayacağını notlar almanızı sağlar.
Ziyaretçileri Yönlendirene Göre Engelle
İnsanların belirli bir siteden sizin sunucunuza yönlendirilmesini engellemek isteyebilirsiniz. Trafik kalıplarını izole etmek istiyorsanız bu yararlı olabilir. Şüpheli bir kaynaktan aşırı sunucu trafiği alıyorsanız da kullanabilirsiniz.
Aç .htaccess dosyasını açın ve aşağıdaki bloğu ekleyin:
RewriteEngine on
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} blockeddomain\.com [NC]
RewriteRule .* - [F]
bu NC
seçeneği, kuralın girilerek atlanamaması için büyük veya küçük harfleri yok sayma talimatı verir. BlockedDomain.com.
Daha fazla alan eklemek istiyorsanız, aşağıdakilere dikkat edin:
RewriteEngine on
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} blockeddomain\.com [NC,OR]
RewriteCond %{HTTP_REFERER} blockeddomain2\.com
RewriteRule .* - [F]
bu OR
bayrağı, sisteme engellenen yönlendirenleri eklemeyi henüz bitirmediğinizi söyler. Son girişte bu seçeneği atlayın.
Trafiği Yönlendir
kullanabilirsiniz .htaccess trafiği yönlendirmek için dosya.
Dosyayı açın ve aşağıdakileri girin:
Redirect301/Other_Website.com/index.html/My_Website.com/index.html
Bu komut, arama yapan tüm trafiği alır. Diğer_Website.com ve ona yönlendirir My_Website.com.
404 Sayfası ayarlayın
.htaccess temel işlevleri yeni bir konuma işaret etmek için dosya. Bir örnek, 404 sayfa.
1. .htaccess dosyalayın ve şunu girin:
ErrorDocument 404 /404.html
Bu satır, sisteme web sitesinin içerik dizinine bir /404.html hata sayfası olarak dosya.
2. Bu komutu kullanarak 404 sayfasını oluşturun:
sudo nano cd /var/www/My_Website.com/public.html/404.html
Bu açmalı 404.html dosyasını metin düzenleyicinize ekleyin.
3. Ardından, aşağıdaki kodu ekleyin:
<!doctype html>
<html>
<body>
404 Error: Page not found
</body>
</html>
Bu sayfa artık istediğiniz herhangi bir hata mesajını gösterecek şekilde özelleştirilebilir. Ayrıca istediğiniz diğer hata sayfalarını da özelleştirebilirsiniz. Sadece belirtin Hata Belgesi sayı, örneğin, Hata 500 noktadan daha .htaccess yeniye hata.html oluşturduğunuz dosya.
Çözüm
etkinleştirme .htaccess Apache web sunucunuzu yönetmek için inanılmaz derecede değerli bir araç olabilir.
Bu kılavuz, karşılaşabileceğiniz en olası senaryolardan bazılarıyla birlikte temel komutlar ve ayarlar sağlar.