Bu gizemli .htaccess dosyası. PHP hata gösterimi nasıl etkinleştirilir

  • 18.06.2019

Htaccess dosyası - kurulum ve kullanım örnekleri - 18 oy ile 5 üzerinden 4,1

htaccess dosyası, Apache web sunucusunun ve benzer sunucuların ayarlarını yapılandırmanıza ve geçersiz kılmanıza olanak tanır. Belirli barındırma kullanıcıları ve hatta belirli bir kullanıcının ayrı klasörleri için sunucu işlemi için izinleri ve parametreleri ayarlamak için kullanılabilir.

Çoğu zaman, eski URL'lerden yenilerine 301 yönlendirmeleri oluşturmak, dosya türlerini yeniden eşlemek, kontrollü dizin erişimi ve çok daha fazlası için kullanılır. htaccess dosyası sayesinde ana yapılandırma dosyasına erişmenize ve tüm sunucuyu etkilemenize gerek kalmaz.

htaccess dosyası nedir ve ne için kullanılır?

Belirtildiği gibi, htaccess, Apache sunucuları ve diğer sunucular için bazı parametreleri ayarlamak için kullanılır. Büyük ve garip uzantıya rağmen, .htaccess dosyasının özelleştirilmesi, içeriği herhangi bir metin düzenleyiciyle açılıp değiştirilerek yapılır.

Htaccess dosyası, tüm sunucuyu değil, yalnızca kendi sitesini etkileyen her kullanıcı için sunucu yapılandırmasını değiştirme yeteneği sağlamak üzere özel olarak tasarlanmıştır. Herkes ana Apache yapılandırma yönergelerinin httpd.conf dosyasında bulunduğunu bilir. Bununla birlikte, çoğu kullanıcı ve paylaşılan barındırma hakkında konuşursak, o zaman tüm kullanıcılar buna erişme yeteneğine ve değiştirme haklarına sahip değildir, çünkü bu işlem herkes için geçerli olacaktır.

Htaccess dosya uzantısına genellikle dinamik denir. Bunun nedeni, sunucunun onu içeren dizini sorgulaması gerektiğinde ona erişmesi gerektiğidir. Belki de bu önemli bir avantajdır, çünkü kullanıcı tarafından dosyada yapılan değişiklikler sunucuyu yeniden başlatmaya gerek kalmadan hemen etkili olacaktır. Ana yapılandırma dosyasında değişiklik yapılırsa, sunucunun yeniden başlatılması bunların yürürlüğe girmesi için bir ön koşuldur.

Tabii ki, her şey istediğimiz kadar düzgün değil, çünkü htaccess kullanımı sunucunun performansını biraz etkiler, yine de ana yapılandırma dosyasına kapalı erişim durumunda, bu yöntem bunun için en basit ve en uygun yöntemdir. parametreleri değiştirme.

htaccess kullanmanın bazı özellikleri:

1. İçinde, ana httpd.confg dosyasında yazılmış çok sayıda yönergeyi geçersiz kılabilirsiniz.

2. htaccess dosyasını kök dizine yerleştirirseniz, tüm siteye dağıtılacaktır (tek istisna, kendi yapılandırma dosyalarının bulunduğu dizinler ve ağaç yapısında aşağıda bulunan dizinler olacaktır)

3. htaccess dosyasını herhangi bir dizine yerleştirebilirsiniz ve yönergeleri tüm alt dizinlere uygulanacaktır.

4. Htaccess, "sistem" kategorisine ait olduğu için tarayıcıdan görüntülenemez.

Böylece htaccess yardımıyla kullanıcı kendi sunucusunu kurma konusunda esneklik kazanır ve aşağıdaki parametreleri uygulayabilir:

  • Basit yeniden yönlendirme yönergeleri (yönlendirme);
  • Karmaşık yeniden yönlendirme yönergeleri (mod_rewrite);
  • Dizin sayfaları;
  • Hata işleme;
  • Kodlamanın Belirlenmesi;
  • Dizinlere ve dosyalara erişimi kontrol etme;
  • Dizinlerin parola koruması;
  • PHP seçenekleri.

htaccess dosyasının en yaygın kullanım örnekleri

Şimdi site özelleştirmesi için htaccess'in en yaygın kullanım durumlarına bakacağız.

Başlamadan önce aşağıdaki noktalara dikkat edin:

2. htaccess uzantılı yeni bir dosya oluşturmak için bir not defteri veya başka bir metin düzenleyici açmanız, bir kod yazmanız, .htaccess uzantısını (öndeki nokta) belirterek dosyayı kaydetmeniz gerekir. Ardından, amaçlandığı dizine atmaya devam ediyor.

3. Sözdizimi .htaccess

Dosya yolları (dizinler) sunucu kökünden belirlenir.

DirectoryIndex /home/st5155/www/data/home.html

htaccess dosyası sitenin kök klasöründe yapılandırılmışsa, yollar bu klasörün kökünden belirlenir.

DirectoryIndex /home.html

Etki alanları http:// veya https:// protokolü kullanılarak kaydedilir.

Yönlendirme / http://vash-sait.ru

Dosya tam olarak "dot" htaccess olarak adlandırılmıştır.

Yorumlu bir satır oluşturmak için # işaretini kullanın.

Total Commander'ın bir parçası olan AkelPad düzenleyicisini kullanarak bir dosyayı düzenlemek en uygunudur, sadece onu seçin ve F4 tuşuna basın.

Basit yeniden yönlendirme - Yönlendirme yönergesi

1. Yeni site sayfalarına yönlendirme

Sitedeki sayfalar yeni adreslere taşındıysa, eski adrese başvuran kullanıcı veya arama robotu muhtemelen onları görmeyecektir. Eski ve yeni sayfa URL'lerini yapıştırmak için basit bir 301 yönlendirmesi kullanabilirsiniz. Bunu yapmak için, htaccess yapılandırma dosyasına aşağıdaki kod yazılmalıdır:

Yönlendirme 301 /staraya.html http://vash-sait.ru/novaya.html

2. Yayınları ortak bir biçime getirme

Önceden, Atom, RSS, Rdf gibi çeşitli besleme biçimleri kullanılıyordu. Bugün RSS, aralarında en popüler ve en popüler olanıdır, bu nedenle diğer biçimlerin birine yönlendirildiğinden emin olabilirsiniz. Ayrıca htaccess dosyasını ve aşağıdaki kodu kullanır:

RedirectMatch 301 / besleme / (atom | rdf | rss | rss2) /? $ Http://vash-sait.ru/feed/

Karmaşık yeniden yönlendirme - RewriteRule yönergesi

1. www'den www olmayanlara etki alanı yönlendirmesi.

Etki alanlarını www ile ve www olmadan yapıştırmak için htaccess'te çok sık 301 yönlendirmeleri kullanmanız gerekir. Daha önce arama motorları bu tür adresleri tamamen farklı kabul ediyor ve onlara farklı siteler olarak bakıyorlardı. Bugün yapıştırma görevi bir arama robotuna emanet edilmiştir, ancak doğru aynayı belirtmek asla gereksiz olmayacaktır. Üstelik kendi aralarında bir karışıklık da olmayacak.

Seçenekler + FollowSymLinks RewriteEngine On RewriteCond% (HTTP_HOST) ^ www.vash-sait \ .ru $ RewriteRule ^ (. *) $ Http://vash-sait.ru/$1

2. Ziyaretçinin IP adresine bağlı olarak ziyaretçileri farklı sayfalara yönlendirmek.

Htaccess'te, belirli bir IP adresine sahip kullanıcının hangi sayfaya yönlendirileceğini belirtmek mümkündür. Örneğin 183.1.101.1 ip adresi olan ziyaretçileri kontakt.html sayfasına yönlendirmek

SetEnvIf REMOTE_ADDR 183.11.101.1 REDIR = "redir" RewriteCond% (REDIR) redir RewriteRule ^ / $ /kontakt.html

3. Bir web kaynağı güncellenirse yeniden yönlendirme

Kaynağın test edilmesi veya güncellenmesi sırasında kullanıcı siteye giremez. Ancak onu bu konuda uyarmamak yanlış olur. Htaccess'te, kullanıcıyı sorunun yapısını (nedenleri, zamanlaması vb.) açıklayan bir bilgi sayfasına yönlendirecek bir kod yazabilirsiniz.

RewriteCond% (REQUEST_URI) üzerinde RewriteEngine! /Info.html$ RewriteCond% (REMOTE_HOST)! ^ 14 \ .124 \ .354 \ .80 RewriteRule $ http://vash-sait.ru/info.html

Nerede 14.124.354.80 - IP adresinizle değiştirin.

4. Bağlantı koruması

Günümüzde sitelerden giderek daha fazla bilginin çalındığı bir sır değil. Bazen sadece metin, bazen de grafik görsellerle birlikte. Ve bir ziyaretçi üçüncü taraf bir siteye her geldiğinde, bu görüntüler barındırma hizmetinizden yüklenerek bir yük oluşturur ve trafik yakan. Bunu önlemek için aşağıdaki kodu ekleyin:

RewriteEngine On RewriteCond% (HTTP_REFERER)! ^ $ RewriteCond% (HTTP_REFERER)! ^ Http: // ([-a-z0-9] \.)? Vash-sait \ .ru RewriteRule \. (Gif | jpe? G | png) $ -

Yukarıdaki örnekte, sitede resmi yüklerken bir 403 hatası belirecektir, eğer resim yerine belirli bir resmin gösterilmesini istiyorsanız, son satırı aşağıdaki ile değiştirin:

RewriteRule \. (Jpg | png | gif) $ http://vash-sait.ru/images/imageinfo.jpg

5. Güvenli bir https bağlantısına yönlendir

Htaccess'te, tüm kullanıcıların yalnızca sunucu ve istemci arasındaki veri aktarımının güvenliğini ve güvenilirliğini garanti eden bu protokol aracılığıyla çalışması için güvenli bir https bağlantısına yönlendirme ayarlayabilirsiniz.

RewriteCond% (HTTPS) Üzerinde RewriteEngine!RewriteRule (. *) Üzerinde Https: //% (HTTP_HOST)% (REQUEST_URI)

6. Adresin sonunda otomatik eğik çizgi değiştirme.

Bir URL bir dizin adıyla bittiğinde durumlar çok yaygındır: http://vash-sait.ru/images/raznoe

Apache hatayı kendi başına düzeltebilir ve eksik eğik çizgiyi bağlantıya ekleyerek 301'inci yönlendirmeyi yapabilir. Böylece kullanıcı herhangi bir farklılık hissetmeyecek ve cevaben gerekli sayfayı alacaktır. Ancak böyle bir eylemi tamamlamak iki kat daha uzun sürecektir. Aşağıdaki kod her zaman adresin sonuna / ekler.

RewriteCond% (REQUEST_URI) /+ [^\. ]+$ RewriteRule ^ (. + [^ /]) %% (REQUEST_URI) /

7. Belirli bir siteden gelen kullanıcıları engelleme

Site sahibi, kaynağının belirli bir etki alanından gelen ve erişimini kapatması gereken kullanıcılar tarafından ziyaret edilmesini istemiyorsa, htaccess de yardıma hazırdır. Bir 403 sayfası veya "erişimi reddet" kullanarak belirli sitelerden gelen trafiği engelleyebilirsiniz. Bu ayar, sitenizde yasaklı içeriğe sahip sitelerden bağlantılar göründüğünde ve bunlar üzerinden sitenize trafik gittiğinde kullanışlıdır.

RewriteCond% (HTTP_REFERER) üzerinde RewriteEngine zapretnui-sait.com RewriteCond% (HTTP_REFERER) zapretnui-sait.com RewriteRule * - [F]

Dizin Sayfaları - DirectoryIndex Yönergesi

1. Varsayılan dizin sayfasını değiştirme

Tipik olarak, varsayılan dizin sayfaları index.htm, index.php veya index.html'dir; site dizinine erişirken bu dosyalar hemen aranır. Ancak gerekirse, dizin sayfasını başka bir sayfayla yeniden tanımlayabilirsiniz. Benzer bir görev de htaccess dosyası kullanılarak çözülür.

DirectoryIndex sayfam.html

İki veya daha fazla sayfa belirtmek mümkündür. DirectoryIndex yönergesinden sonra konfigürasyon dosyasında listelendikleri sırayla aranacakları unutulmamalıdır.

DirectoryIndex index.shtml index3.php index.html index.htm

Hata İşleme - ErrorDocument Yönergesi

1. Özel hata sayfası

Sitelerdeki birçok kişinin hala standart 404 hata sayfasını kullanmasına rağmen, beklenen sonucu almayan ve bunun yerine kendisi için anlaşılmayan bilgileri gören bir kullanıcıyı tatmin etmek pek mümkün değildir. İsteğin başarısız yürütülmesinin nedenleri hakkında daha ayrıntılı bilgi gösterecek olan ana stille eşleşen bir sayfa sunmak gerekir. Bunu yapmak için standart 404 hata sayfası yerine htaccess içinde hangi dosyanın yükleneceğini belirtebilirsiniz.

ErrorDocument 404 "/404.html"

2. Kendi hata sayfalarınızı oluşturma

Sitede meydana gelen hataların açıklamasını gösteren tanıdık sayfalardan sıkılanlar için kendi şablonlarını kullanma fırsatı sağlanmaktadır. Sadece * .html çözünürlüğünde gerekli içeriğe sahip birkaç dosyayı dizmeniz ve htaccess dosyasına bir giriş yapmanız yeterlidir.

ErrorDocument 401 /errors401.html ErrorDocument 403 /errors403.html ErrorDocument 404 /errors404.html ErrorDocument 500 /errors505.html

Hata sayfalarının her birine ne yazacağınızı bilmeniz için anlamlarını kısaca açıklayacağız.

  • 401 - Yetkilendirme Gerekli
  • 403 - kullanıcının kimliği doğrulanmadı, erişim reddedildi (Yasak)
  • 404 - istenen belge (dosya, dizin) bulunamadı (Bulunamadı)
  • 500 - Dahili Sunucu Hatası - .htaccess dosyasının sözdiziminde komut dosyası hatası veya hatası - (Dahili Sunucu Hatası)

kodlamanın belirlenmesi

1. Sunucunun dosyaları "hizmet ettiği" kodlamayı belirleme

Kullanıcının, sözcükleri okumanın imkansız olduğu, kendisi için anlaşılmaz olan karakterleri görüntülemesini önlemek için, monitör ekranında doğru kodlama belirtilmelidir. Etiketsiz bile< Мета http-equiv = "Content-Type">sayfadaki metin her zaman doğru olacak ve htaccess dosyası bu konuda tekrar yardımcı olacaktır.

AddDefaultCharset UTF-8

2. İndirilen dosyalar için kodlamayı belirleme

Bir kullanıcı sunucuya bir dosya yüklediğinde ve içeriği yeniden kodlanabildiğinde benzer bir durum ortaya çıkabilir. Gerekli kodlamanın kullanılabilmesi için htaccess, yüklenen tüm dosyaların UTF-8 kodlaması ile açılması gerektiğini belirten bir kod içermelidir.

CharsetSourceEnc UTF-8

Dizinlere ve dosyalara erişimi denetleme

1. Tüm dosyalara erişimi engelle

Dosyanın görüntülenmesini engellemenin en kolay yolu bir şifre belirlemektir ancak bu her zaman yeterli değildir. Bazı durumlarda, kullanıcının herhangi bir dosya veya dizini görüntüleme hakları olmamalıdır (örneğin, sunucunun çalışmasını ağırlaştırabilecek değişiklikler, sistem dizinlerini kilitlemeniz gerekir). htaccess dosyasına tüm kullanıcı ayrıcalıklarından mahrum bırakan bir kod parçası yazılır.

2. Belirli bir IP'den erişime izin ver

Apache web sunucusu, çeşitli yeteneklere sahip güçlü ve zengin özelliklere sahip bir yazılım ürünüdür. Bu makale, Web sitesi geliştirmede en sık karşılaşılan Apache yapılandırma tekniklerini kapsayacaktır.

Bildiğiniz gibi tüm Apache sunucu ayarları her zaman erişilemeyen httpd.conf dosyasında yer almaktadır. Örneğin, bir barındırmada sanal bir sunucu kullanılıyorsa, bir Apache sunucusu yüzlerce siteye hizmet verdiğinde, elbette bir sitenin sahibinin diğer tüm siteleri etkileyecek olan sunucu yapılandırmasını değiştirmesine izin veremezsiniz. Ancak, Apache web sunucusu, .htaccess dosyalarını kullanarak dizin düzeyinde yapılandırmaya izin verir. Bu makale, çoğu Web geliştiricisinin kullanabileceği tek yapılandırma dosyası olarak bu dosyalarla çalışmaya odaklanacaktır.

Htaccess dosyası (adın başında bir nokta ile), sunucu işlemini bireysel dizinler düzeyinde yapılandırmayı mümkün kılan bir yapılandırma dosyasıdır: dizinlerdeki dosyalara erişim haklarını ayarlayın, dizin dosyalarının adlarını değiştirin, bağımsız olarak işlem yapın HTTP yanıt kodları, istenen sayfaların adreslerini değiştirin...

Not
Htaccess dosyası herhangi bir dizine yerleştirilebilir. Bu dosyanın yönergeleri, geçerli dizindeki ve tüm alt dizinlerindeki tüm dosyaları etkiler (bu yönergeler, alt dizinlerdeki .htaccess dosya yönergeleri tarafından geçersiz kılınmadıkça).

.htaccess dosyalarında yapılan değişiklikler hemen yürürlüğe girer ve ana yapılandırma dosyası httpd.conf'ta yapılan değişikliklerin aksine sunucunun yeniden başlatılmasını gerektirmez.

.htaccess dosyalarının kullanılabilmesi için, httpd.conf ana yapılandırma dosyasının uygun ayarları gereklidir, burada .htaccess dosyasının dizindeki Web sunucusu yapılandırmasını geçersiz kılmasına izin verecek yönergelerin yazılması gerekir. Bu yönergelerin listesi AllowOverride yönergesi tarafından belirlenir.

AllowOverride yönergesi aşağıdaki yönergelerden birini veya bunların bir kombinasyonunu içerebilir: AuthConfig, FileInfo, Indexes, Limit, Options, All, None

.htaccess dosyalarının direktiflerine direktifleri değiştirmek için maksimum izin verebilmek için, httpd.conf dosyasındaki AllowOverride direktifinin değeri All'a eşit olmalıdır. Varsayılandır.

Tümünü Geçersiz Kıl

Yok değerini kullanarak .htaccess yapılandırma dosyalarındaki tüm yönergeleri geçersiz kılmayı devre dışı bırakabilirsiniz:

İzin Ver Geçersiz Kıl Yok

Yorum Yap
Yapılandırma dosyasının adı değiştirilebilir ve örneğin onu .htaccess olarak değil, access.conf olarak adlandırabilirsiniz. httpd.conf dosyasındaki AccessFileName yönergesi bu dosyanın adından sorumludur. .htaccess yapılandırma dosyasının adının değiştirilmesi önerilmez. bu, daha fazla sunucu desteğini karmaşıklaştırabilir.

.Htaccess sözdizimi

Örneklere bakmadan önce, .htaccess dosyalarındaki direktiflerin sözdizimi üzerinde duralım.

  • Dosya ve dizin yolları sunucu kökünden belirtilmelidir, örneğin, / pub / makaleler / ustalar / php /
  • Mutlak URL'leri belirtirken, protokoller belirtilmelidir, örneğin: Yönlendirme / http://www.site.ru
  • .htaccess dosyalarında, dosya yollarında ve dosyaların kendi adlarında boşluklar kabul edilemez, çünkü bu, bir yanıt kodu 500 oluşturur - sunucu yapılandırma hatası: "Dahili Sunucu Hatası".

.Htaccess Örnekleri

Dizin Sayfaları:

İndeks dosyalarının kompozisyonunu değiştirmenin gerekli olduğu durumlar olabilir, örneğin indeks sayfası index.php gerekliyse, ancak httpd.conf ana konfigürasyon dosyasında kayıtlı değil. Bu görev, dizin sayfalarının adlarını listeleyecek bir DirectoryIndex yönergesi oluşturmanız gereken .htaccess dosyası kullanılarak çözülebilir:

DirectoryIndex index.php index.shtml index.html

Dosya adı belirtilmeden katalog istendiğinde önce index.php isimli sayfa aranacaktır. Bu isimde bir sayfa dizinde yoksa, index.shtml dosyası vb. ile benzer işlemler yapılacaktır. ilgili sayfa bulunana ve açılana kadar listenin sonuna kadar.

İndeks dosyası olmadığında bir dizinin içeriğinin görüntülenmesini engelle

Bir dizin dosyası belirtilmemişse veya eksikse, bir dizindeki dosyaların listesinin görüntülenmesini önlemek genellikle gereklidir. Örneğin, bir dizinin içeriğinin resimlerle görüntülenmesini yasaklayın. Böyle bir yasak ayarlanmazsa, böyle bir dizine doğrudan erişen kullanıcı tüm görüntülerin bir listesini alacaktır.

Seçenekler – Dizinler

Apache Web Sunucusu Yanıt Kodlarını Kullanma

Hiçbir site hatalardan bağışık değildir. En yaygın hata, var olmayan bir sayfanın bağlantısını takip etmektir. Bu durumda, Apache bir 404 yanıt kodu oluşturur ve otomatik olarak oluşturulan hata sayfasını görüntüler. Var olmayan sayfaların varlığı site ziyaretçileri üzerinde kötü bir izlenim bırakmaktadır. Bu gösterim, standart sayfalar yerine kendi hata sayfalarınızı değiştirerek azaltılabilir. ErrorDocument yönergesi, sayfaların atanmasından sorumludur - HTTP yanıt kodlarının işleyicileri.

ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html

ErrorDocument yönergesinden sonra yanıt kodunu ve bu yanıt kodu oluştuğunda ziyaretçinin yönlendirileceği sayfayı belirtmelisiniz.

  • 401 hatası - İstek, kullanıcı kimlik doğrulaması gerektiriyor (Yetkisiz).
  • Hata 403 - İstenen kaynağa erişim Yasak.
  • 404 hatası - İstenen belge sunucuda eksik (Bulunamadı).
  • Hata 500 - Sunucunun veya harici programın konfigürasyonunda hata (Dahili Sunucu Hatası).

PHP kodunu HTML dosyalarında yürütün

Genellikle PHP kodu, php uzantılı dosyalarda yürütülür. Bazen, farklı bir uzantıya sahip dosyalarda PHP kodunu yürütmenin gerekli olduğu durumlar vardır. Bu durumda, web sunucusuna PHP kodunu yalnızca php uzantılı dosyalarda değil, aynı zamanda html uzantılı dosyalarda da çalıştırma talimatı verebilirsiniz.

RemoveHandler .html .htm
AddType uygulaması / x-httpd-php .php .htm .html .phtml

İlk satır, html ve htm uzantılı dosyalar için işleyiciyi kaldırır ve ikinci satır, sunucuya htm ve html uzantılı dosyalar için PHP işleyicisini kullanmasını söyler.

Sunucuda dosya kodlamasını ayarlama

Belirtilen kodlama, Content-Type başlığında tarayıcıya gönderilir ve istemci tarayıcısının otomatik olarak gerekli kodlamaya geçmesine izin verir.

AddDefaultCharset Windows-1251

Yüklenen dosyaların kodlamasını ayarlama

Dosyaları sunucuya yüklerken, sunucunun dosyayı hangi kodlamada bekleyeceğini belirleyebilirsiniz.

CharsetSourceEnc windows-1251

MultiViews yönergesini devre dışı bırakma

Barındırmada etkinleştirilen MultiViews seçeneği, örneğin var olmayan site sayfalarının görüntülenmesi gibi beklenmeyen sorunlara neden olabilir. Sitede http://www.sait.ru/down.php adresinde bir sayfa olduğunu ve ziyaretçilerin var olmayan http://www.sait.ru/down/ dizinine dönerse, MultiView'lerin etkin olduğunu varsayalım. seçeneği bu dizin down.php dosyasının yerini alacaktır. Ancak, ikame eksik olacaktır - resimlere, stil sayfalarına vb. giden yollar. yanlış değiştirilecektir. Yani, sayfa bozulma ile görüntülenecektir. Bu davranışı bastırmak için Apache, MultiViews seçeneğini devre dışı bırakmalıdır.

Seçenekler -Çoklu Görünümler

Dosyalara erişimi reddetme

Ziyaretçilerin tarayıcı penceresinden hizmet dosyalarına erişmesini önlemek için bu tür dosyalara erişimi engelleyebilirsiniz. Bunun için Reddet yönergesi ve Erişime izin ver izni kullanılır.

Not
Reddet ve İzin Ver yönergelerinin kullanımı yalnızca tarayıcıdan veya başka bir istemci programından dosyalara erişimi kontrol eder. Bu tür yasaklar sunucu komut dosyaları için geçerli değildir.

Tarayıcıdan dosyalara erişimi engelleme

hepsinden reddet

Böyle bir yönerge kullanıldığında, tarayıcıdan geçerli dizinin tüm dosya ve dizinlerine erişim reddedilecektir.

Belirli bir dosyaya erişimi reddetme

hepsinden reddet

Burada sadece config.php adlı dosyalara izin verilmez.

inc dosyalarına erişimi reddetme

hepsinden reddet

* - eğik çizgi karakteri (/) hariç herhangi bir karakter dizisi.

Birden çok uzantı türüne sahip dosyalara erişimi engelleyin

hepsinden reddet

inc, conf ve cfg uzantılı dosyalara erişim reddedildi

Belirli bir IP adresinden erişimi engelle

195.135.232.70'ten reddet

Yalnızca belirli bir IP adresinden erişime izin ver

Siparişi reddet, izin ver
hepsinden reddet
195.135.232.70'den itibaren izin ver

Order yönergesi, yönergelerin yürütüleceği sırayı belirlemenizi sağlar. İlk olarak, erişim engelleme yönergesi (Deny yönergesi) yürütülür ve ardından 195.135.232.70 (Yönetmeliğe İzin Ver) IP adresi için erişime izin verilir. İlk satırda direktiflerin sırasını Order izin ver, reddet olarak değiştirirseniz, 195.135.232.70 IP adresine erişim açılmayacaktır, çünkü son Reddetme yönergesi, İzin Ver yönergesini geçersiz kılacaktır.

Not
Belirli bir IP adresinden erişime izin vermenin bazen başarısız olabileceğine dikkat edilmelidir. Örneğin, barındırmada bir ters önbelleğe alma proxy sunucusunun kurulu olması durumunda. Erişim izni yönergeleri çalışmıyorsa bu konu ile ilgili olarak hosting teknik destek servisi ile iletişime geçmeniz gerekmektedir.

Başka bir adrese yönlendir

Genellikle, belirli bir dizine veya sayfaya yapılan tüm isteklerin farklı bir adrese yeniden yönlendirilmesi gerektiğinde görevler vardır. Bu, Redirect ve RedirectMatch yönergeleri kullanılarak yapılabilir. İstenen url'de kaynak olmadığını bildirirler ve gidilecek adresi belirtirler. Yönlendirme yönergeleri, uygun başlığı tarayıcıya gönderir ve tarayıcı yönlendirmeyi yapar.

.Htaccess dosyası talimatları

.htaccess dosyası, sitenizin birçok ayarını değiştirmenize olanak tanır - hem Apache web sunucusu ayarları hem de PHP seçenekleri. .htaccess dosyasında belirtilen yönergeler, bulunduğu dizine ve tüm alt dizinlere (aşağıda tartışılacak olan bir istisna dışında), alt etki alanları dahil (alt etki alanı dizinleri ana sitenin alt dizinleri olduğundan) uygulanır. bir kural olarak, .htaccess dosyası sitenin kök dizininde ve bazen web sunucusunun belirli davranışını gerektiren dizinlerde oluşturulur (dosya listesinin görüntülenmesini yasaklama, SSI'yi etkinleştirme, yetkilendirme vb.).

Bir FTP istemcisi kullanarak kendiniz bir .htaccess dosyası oluşturabilir ve sitenizdeki diğer dosyalarla olduğu gibi onunla çalışabilirsiniz.

Yeni oluşturulan .htaccess dosyası neden dosya listesinde görünmüyor?

Bazı FTP istemcileri, bir nokta ile başlayan dosyaları gizli olarak ele alır ve varsayılan olarak görüntülemez. Bu gibi durumlarda .htaccess dosyasını görebilmek için FTP istemci ayarlarında "Gizli dosyaları göster" ayarını etkinleştirmek gerekir.

Sitenin kökünde barındırılan .htaccess dosyası neden alt dizinlerde çalışmıyor?

Bu, statik dosyaların işlenmesinin optimizasyonundan kaynaklanmaktadır.

Siteler genellikle çok sayıda statik dosya içerir. Bunlar, bunları görüntülemek için çalışan komut dosyaları gerektirmeyen dosyalardır: resimler, müzik, video, css, javascript, basit html sayfaları. Sitelerin çalışmalarını hızlandırmak için ana web sunucusu atlanarak ve .htaccess dosyaları ayrıştırılmadan işlenirler.

Bazen, belirli bir dizinde statik dosyaların işlenmesinin optimizasyonunu yasaklamak gerekli hale gelir. Örneğin, bunlar filigranlanması gereken resimlerse, istekleri özel bir komut dosyasına yönlendirmek.

Bir dizindeki dosyaların her zaman optimizasyon olmadan işlenmesini sağlamak için bu dizinde bir .htaccess dosyası oluşturmanız gerekir. Bu dosya herhangi bir yönerge içermeyebilir, sadece varlığı yeterlidir.

Optimizasyonu devre dışı bırakmanın sitenizin hızını ve tarife planı kaynaklarının kullanımını etkileyebileceğini unutmamak önemlidir.

Alt etki alanı neden bir hata gösteriyor?

.htaccess etki alanı ayarları, alt etki alanı için devralınır. Bir etki alanının .htaccess ayarlarında mod_rewrite kuralları kullanılırsa, bunlar alt etki alanının yanlış çalışmasına neden olabilir. Etki alanının mod_rewrite kurallarının alt etki alanında hareket etmesini önlemek için, alt etki alanının .htaccess dosyasına aşağıdaki satırı ekleyin:

Yeniden YazmaMotoru kapalı

Site dizini açılırken tarayıcıda neden 403 Yasak gösteriliyor?

Belirli bir dosya belirtmeden bir dizini açarken, web sunucusu görüntülenecek index.htm, index.html, index.php dosyalarını arar (indeks dosyaları). Dizin dosyası yoksa, dizindeki dosyaların listesinin görüntülenmesine varsayılan olarak izin verilmediğinden sunucu bir 403 Yasak hatası verir.

403 Forbidden hatasını gizlemek için dizinde bir dizin dosyası oluşturun veya .htaccess dosyasına bir seçenek ekleyin:

Seçenekler + Dizinler

Site için dizin dosyasını yükleme

Varsayılan olarak, web sunucusu dosyayı sitenizin dizin dosyası olarak kabul eder (öncelik sırasına göre): index.html, index.php.

Rastgele bir dosyayı dizin dosyası olarak ayarlamak için talimatı ekleyin:

DirectoryIndex dosya adı

Örneğin, aşağıdaki talimat, bir siteye erişirken web sunucusuna sitenizin cgi-bin dizininde bulunan bir Perl betiğini dizin sayfası olarak açmasını söyler:

DirectoryIndex /cgi-bin/engine.pl

PHP hata gösterimini nasıl etkinleştiririm?

PHP hatalarını görüntülemek için .htaccess dosyanıza aşağıdaki yönergeyi ekleyin:

Php_value display_errors 1

PHP'de yüklenen dosyaların maksimum boyutunu nasıl değiştirebilirim?

Yüklenen dosyaların maksimum boyutu .htaccess'te iki yönerge kullanılarak belirtilir:

php_value upload_max_filesize 20M php_value post_max_size 20M

20M'yi sınırlamak istediğiniz boyutla değiştirin. Bu parametrelerin değeri 50M'den fazla olamaz. Lütfen “M” (Latin M) sembolünün değerle birlikte gösterildiğine dikkat edin.

PHP yorumlayıcısına .php dosyalarından daha fazlasını işlemesini nasıl söylerim?

PHP yorumlayıcısını rastgele bir uzantıya sahip dosyaları işlemeye zorlamak için sitenizin kök dizininde bulunan .htaccess dosyasına uygun talimatı eklemeniz gerekir. Örneğin, aşağıdaki ifade PHP yorumlayıcısına .phtml uzantılı dosyaları işlemesini söyleyecektir:

AddType uygulaması / x-httpd-php .phtml

PHP oturum depolama süresi nasıl değiştirilir

Örneğin, sitenizdeki kullanıcı yetkilendirme verilerinin daha uzun süre saklanmasını istiyorsanız, oturumların saklama süresinin değiştirilmesi gerekebilir. Varsayılan olarak, oturum saklama süresi 1440 saniyedir (24 dakika), oturum tanımlayıcılı çerez - kullanıcı tarayıcıyı kapatana kadar.

PHP oturumlarının depolama süresini değiştirmek için .htaccess'te birkaç değişiklik yapmanız gerekir. Belirli ayarlar sitenizin ziyaretçilerle nasıl çalıştığına bağlı olabileceğinden, herhangi bir değişiklik yapmadan önce profesyonel bir geliştiriciye danışmanızı öneririz. Belki doğrudan siteniz için, bir ziyaretçiyle ilişkili verileri depolamak için alternatif bir mekanizma (örneğin, yalnızca çerezler aracılığıyla) veya PHP oturumlarını depolamak için alternatif bir mekanizma (session_set_save_handler () kullanılarak ayarlanır) daha verimli olacaktır.

Oturum saklama süresini değiştirmek için .htaccess'e aşağıdaki yönergeleri ekleyin:

# Site oturumlarınızı saklamak için ayrı bir dizin oluşturun, # örneğin alan adları / YOUR_SITE / tmp. Bu, hesapta çalışan diğer sitelerin eski oturumlarını temizlerken PHP'nin site oturumlarını silmesini önlemek için gereklidir. # session.save_path kullanarak site için oturum depolama dizinini ayarlayın. php_value session.save_path / home / YOUR_LOGIN / domains / YOUR_SITE / tmp # Maksimum oturum ömrünü saniye olarak ayarlayın. # 604800 - 1 hafta. php_value session.gc_maxlifetime 604800 # Kullanıcının tarayıcısında oturum kimliğini # depolayan çerezin yaşam süresini ayarlayın. php_value session.cookie_lifetime 604800

Lütfen unutmayın: Her yetkisiz kullanıcı için çok sayıda ziyaretçi ve uzun bir oturum tasarrufu süresi olan bir oturum açılırsa, session.save_path içinde belirtilen klasörde çok sayıda dosya oluşturulur. Bu, eski oturum temizleme mekanizması başlatıldığında sitenin yavaşlamasına ve sitenin çalışması için gereken kaynak miktarının artmasına neden olabilir. Çok sayıda oturumla çalışırken, bunları depolamak ve temizlemek için alternatif mekanizmalar kullanmanızı öneririz, örneğin:

  • session.save_path için N bağımsız değişkenini kullanarak oturum depolama dizinlerinin iç içe yerleşimini belirtin. Bu durumda eski oturumları kendi scriptlerinizle temizlemeniz gerekir. Bu yöntem hakkında daha fazla bilgi için PHP belgelerinde session.save_path bölümüne bakın.
  • Kendi oturum depolama mekanizmanızı uygulayın (örneğin, MySQL'de) ve bunu session_set_save_handler () kullanarak ayarlayın.

SGK nasıl etkinleştirilir

Sunucu Tarafı İçerir (SSI) yönergeleri, varsayılan olarak .shtml uzantılı dosyalarda (örneğin, index.shtml) işlenir. SSI'nin başka dosyalarda işlenebilmesi için .htaccess dosyasında aşağıdaki yönergeleri belirtmeniz gerekir:

AddType metin / html .html .ssi AddOutputFilter .html .ssi DAHİLDİR

“.ssi .html” dosyasını SSI direktiflerinin işleneceği dosya uzantılarıyla değiştirin.

CGI betiklerinin yürütülmesini nasıl özelleştirebilirim?

Bir klasörde CGI betiklerini yürütmek için, .htaccess dosyasını kullanarak web sunucunuzu buna göre yapılandırmanız gerekir.

  1. CGI betiklerinin yürütüleceği klasörde, aşağıdaki gibi bir .htaccess dosyası oluşturun: Seçenekler + ExecCGI
    AddHandler cgi-script .cgi .pl “.cgi .pl” yerine komut dosyası olarak işlenmesi gereken uzantıların bir listesiyle değiştirin.
  2. Komut dosyalarını bir klasöre yükleyin.
  3. Dosya yöneticinizi kullanarak komut dosyalarını izinleri yürütecek şekilde ayarlayın (755).

PHP'de RAM kullanım sınırını nasıl değiştirebilirim?

RAM sınırını değiştirmek için .htaccess'te aşağıdaki yönergeyi kullanın:

Php_value memory_limit 128M

128M'yi sınırlamak istediğiniz boyutla değiştirin. Lütfen “M” (Latin M) sembolünün değerle birlikte gösterildiğine dikkat edin.

Site her zaman ana isimle nasıl açılır?

Sitenizin birden fazla adı varsa, ancak kullanıcıların adres çubuğunda her zaman ana site adını görmesini istiyorsanız, sitenizin kökündeki .htaccess dosyasına aşağıdaki satırları ekleyin:

RewriteCond% üzerinde RewriteEngine (HTTP_HOST) ^ www.site.com RewriteRule ^ (. *) Http://site.com/$1

example.com'u sitenizin ana adıyla değiştirin. Artık siteye erişirken kullanıcılar otomatik olarak ana ismine yönlendirilecek.

.htaccess'te başka hangi PHP ayarlarını ayarlayabilirim?

Geliştiricinin sitesindeki belgeler, PHP yönergelerinin tam bir listesini sağlar. .htaccess dosyasında, PHP_INI_PERDIR veya PHP_INI_ALL'ye karşılık gelen Değiştirilebilir sütunun değeri olan yönergeleri değiştirebilirsiniz.





















.htaccess ne için?

Dosya .htaccess web sunucusunun çalışmasını siteniz için özelleştirmenize olanak tanır. Bir sayfaya veya bir klasörün tamamına erişmek için parolalar ayarlayabilir, bir katalog talep ederken görüntülenen varsayılan sayfayı ayarlayabilir ve daha pek çok şey yapabilirsiniz.

Birden fazla dosya oluşturabilirsiniz .htaccess- sitenizdeki her dizin için bir tane.

.htaccess dosyasında değişiklik yaparken sunucuyu yeniden başlatmaya gerek yoktur - bu dosyada bir şeyi değiştirir değiştirmez değişiklikler hemen yürürlüğe girer. Bu dosyaya hata ekleseniz bile sadece sitenize (veya bulunduğu dizine) yansıyacaktır.

.htaccess dosyası sunucunun kök dizininde bulunuyorsa, eylemleri başka bir .htaccess dosyasının bulunduğu dizinler (ve bu klasörün ikinci . htaccess).

.htaccess dosyası bir hizmet dosyası olduğundan, tarayıcıdan web kullanıcısı tarafından kullanılamaz.

Sunucudaki dizinlerinizin yapısı aşağıdaki gibidir: (.htaccess dosyasının kurulamadığı dizinler gri renktedir.

/ ana sayfa / st1331 / | + - / www / (web sunucunuzun kök dizini)| | | + - .htaccess | | | + - / www / haberler / | | | | | + - .htaccess | | + - ana.html | | | | | + /www/news/2003.10/ | | | | | | | + .htaccess | | | | | + /www/news/2003.11/ | | | + - / www / veri / | | | | | + - .htaccess | | + - .htpasswd | | | + - / www / resimler / | + - / ana sayfa / st1331 / cgi-bin (cgi betikleri için) | + - / günlük (servis) | + - / istatistikler (hizmet)

.htaccess eylemi otomatik olarak tüm alt dizinlere yayılır. Aşağıdaki .htaccess dosyaları şu şekilde hareket eder:

dizin Valid.htaccess
/ www / /www/.htaccess
/ www / haberler / /www/.htaccess
/www/news/.htaccess
/www/haberler/2003.10/ /www/.htaccess
/www/news/.htaccess
/www/news/2003.10/.htaccess
/www/haberler/2003.11/ /www/.htaccess
/www/news/.htaccess
/ www / veri / /www/.htaccess
/www/data/.htaccess
/ www / resimler / /www/.htaccess

.Htaccess kuralları

Dosya yolları (dizinler) sunucu kökünden belirlenir.

Doğru örnek:

DirectoryIndex /home/st1331/www/data/main.html DirectoryIndex /www/news/main.html

Diğer sitelerde bulunan belgelerin adreslenmesi, protokol göstergesi ile yapılmalıdır.

Doğru örnek:

Yönlendirme / oldsite / http://www.site.ru/ Yönlendirme / oldsite / www.site.ru/

Yorumlar # karakteriyle başlayan satırlardır.

Ortam değişkenlerini % (REMOTE_ADDR) veya % (HTTP_REFERER) gibi ifadelerde kullanabilirsiniz.

Htaccess dosyası UNIX biçiminde yazılmalıdır - bu, satır beslemenin içinde DOS veya Windows'ta olduğu gibi iki karakter (0x0D 0x0A) değil bir karakter (0x0A) ile belirtilmesi gerektiği anlamına gelir.

Kapsam Direktifleri

Dosyalar yönergesi

tanım: dirktiva Dosyalar
Sözdizimi: dosya adı> ...
dosya adı Dosya adı
Örnek:

Sipariş Reddet, Tümünden Reddet 192.168.1.1'den İzin Ver

FilesMatch yönergesi

tanım: dirktiva Dosyalar direktiflerin etkisini bir dosyayla sınırlar
Sözdizimi: normal ifade> ...
normal ifade: bir grup dosyayı açıklayan normal ifade (desen).
Örnek:

İzin Ver, Reddet Tümünden İzin Ver 192.168.1.1'den Reddet

Yönlendirmeler (yönlendirmeler)

Yönlendirme yönergesi

harici yönlendirme(tarayıcıya başka bir URL yüklemesini söylemek).
Sözdizimi: Yönlendir [ durum] URL yolu URL'si
durum
URL yolu
URL'si: Yönlendirmenin yapılması gereken URL

Yönlendirme sıcaklığı / http://www.iho.ru/newyear.html Yönlendirme sıcaklığı /index.html http://www.iho.ru/newyear.html Kalıcı yeniden yönlendirme /prices2002.html http://www.iho.ru /prices2003.html

RedirectMatch yönergesi

Açıklama: Belge isteyen bir ziyaretçiyi farklı bir URL'ye yönlendirir. gerçekleştirir harici yönlendirme(tarayıcıya başka bir URL yüklemesini söylemek). Yönerge Yönlendirme'ye benzer, ancak istenen belgenin adresi yerine düzenli bir ifade (kalıp) yazılır
Sözdizimi: Yönlendir [ durum] normal ifade URL'si
durum: isteğe bağlı alan, dönüş kodunu tanımlar, izin verilen değerler: kalıcı (301 - belge kalıcı olarak taşındı), temp (302 - belge geçici olarak taşındı), seeother (303 - başkasını gör), gitti (410 - kaldırıldı) .
URL yolu: istenen belgenin URL'sinin yerel kısmı.
normal ifade: grubu URL'ye açıklayan normal ifade (desen).

RedirectMatch (. *) \. Gif $ http: //www.myserver.com$1.png RedirectMatch (. * \. Jpg) $ http: //www.myanother.com$1

Örnek: ziyaretçinin IP adresine bağlı olarak farklı sayfalar. Örnekte, 192.168.1.1'den gelen ziyaretçiler başka bir sayfaya yönlendiriliyor

RewriteCond% (REMOTE_ADDR) 192.168.1.1 RewriteRule ^ / $ /anoter_index_pahe.html [L]

Örnek: yönlendiren sayfaya bağlı olarak farklı sayfalar. Örnekte, http://www.partner.ru/ sayfasından gelen ziyaretçiler /prices.html yerine /anoter_prices.html alırlar.

RewriteCond% (HTTP_REFERER) http://www.partner.ru/recep.html RewriteRule ^ / fiyatlar.html $ /anoter_prices.html [L]

Belirli sayfaları talep ederken bir ziyaretçiyi yönlendirmek:

Bu zaten tüm ağ virüsleri ve tarayıcılar için geçerlidir. Artık / _vti_bin adresine sahip herhangi bir istek otomatik olarak Microsoft'a yönlendirilecektir:

Yönlendirme / _vti_bin http://www.microsoft.com yönlendirmesi / komut dosyaları http://www.microsoft.com yönlendirmesi / MSADC http://www.microsoft.com yönlendirmesi / c http://www.microsoft.com yönlendirmesi / d http://www.microsoft.com yönlendirmesi / _mem_bin http://www.microsoft.com yönlendirmesi / msadc http://www.microsoft.com RedirectMatch (. *) \ cmd.exe $ http: // www. microsoft.com $ 1

Erişim kısıtlaması (şifreler)

sipariş yönergesi

Açıklama: Yönergelerin ve yönergelerin sırasını belirler.
Sözdizimi: Sipariş Emir
Emir Reddet, İzin Ver veya İzin Ver, Reddet olabilir
Varsayılan: Sipariş Reddet, İzin Ver

Direktifi reddet

Açıklama: Belirli istemcilerin kaynaklara erişmesini engeller.
Sözdizimi: Tümünden reddet | ev sahibi
ev sahibi

yönergeye izin ver

Açıklama: Belirli istemcilerin kaynaklara erişmesine izin verir.
Sözdizimi: Tümünden reddet | ev sahibi
ev sahibi IP adresi veya hostname değerlerini alabilir.

Örnek: Herkes için erişimi reddetme

Sipariş Reddet, Reddet'e izin ver

Örnek: Belirli IP Adreslerine Erişime İzin Verme

Sipariş Reddet, Tümünden Reddet .iho.ru'dan İzin Ver 192.168.1.1'den İzin Ver

Örnek: belirli IP adresleri için erişimi reddetme

İzin Ver, Reddet Tümünden İzin Ver .iho.ru'dan Reddet 192.168.1.1'den Reddet

Örnek: Belirli bir dosyaya erişimi reddetme. Örnek, tüm ziyaretçiler için .htpasswd dosyasına erişimi reddediyor

Örnek: Belirli bir dosya grubu için erişimi reddetme. Örnek, tüm ziyaretçiler için "lib" ve "pm" uzantılı dosyalara erişimi reddediyor

Sipariş Reddet, Reddet'e izin ver

Erişim için bir şifre belirleme

AuthName yönergesi

Açıklama: AuthName değeri ziyaretçiye gösterilecektir ve yetkilendirme talebini netleştirmek için kullanılabilir.

AuthType yönergesi

Açıklama: Bu yönerge, kimlik doğrulama türünü seçer. Aşağıdaki türler mümkündür: Temel ve Özet.
Sözdizimi: AuthType Temel | Özet

AuthUserFile yönergesi

Açıklama: AuthUserFile değeri, kullanıcı kimlik doğrulaması için parola dosyasının adını belirtir. Şifre dosyası, htpasswd yardımcı programı kullanılarak oluşturulabilir. Parola dosyasının yolu, web sunucusunun kök dizinine göre belirlenir. Parola dosyasını, kullanıcıların erişemeyeceği bir klasörde saklayın..
Sözdizimi: AuthUserFile dosyanın yolu

Yönerge gerektir

Açıklama: Erişebilecek kullanıcıları belirtir
Sözdizimi: Gerektir Kullanıcı adı| geçerli kullanıcı
işaret etmek geçerli kullanıcı parola dosyasında listelenen tüm kullanıcılara erişim izni verirsiniz.

Örnek: Tüm kullanıcılara dizin erişimine izin verir:

AuthName "Kısıtlı alan" AuthType Basic AuthUserFile /home/st1331/www/data/.htpasswd Geçerli kullanıcı gerektir

Örnek: Dizine yalnızca 3 kullanıcının erişmesine izin verir:

AuthName "Çok kısıtlı alan" AuthType Basic AuthUserFile /home/st1331/www/data/.htpasswd antonio solo marina gerektir

Örnek: belirli dosyalara erişimi kısıtlama (bu örnekte, zip arşivlerine erişim kısıtlanmıştır)

AuthName "Yalnızca geçerli kullanıcılar zip dosyalarını indirebilir." AuthType Temel AuthUserFile /home/st1331/www/data/.htpasswd Geçerli kullanıcı gerektir

Örnek: bir dosyaya erişimi kısıtlama (bu örnek, .htpasswd dosyasına erişimi kısıtlar)

AuthName "Erişim kısıtlandı." AuthType Temel AuthUserFile /home/st1331/www/data/.htpasswd antonio solo gerektirir

sunucu yönetimi

DirectoryIndex yönergesi - varsayılan sayfada değişiklikler (başlangıç ​​sayfası)

Açıklama: Dizine erişirken gösterilecek sayfayı değiştirmenizi sağlar.
Sözdizimi: DirectoryIndex sayfa [sayfa]
sayfa- başlangıç ​​sayfasının adı. Birden çok sayfa belirtilebilir.
Örnek:

DirectoryIndex main.html index.php test.shtml

ErrorDocument yönergesi - hata işleme

Açıklama: alternatif hata sayfaları ayarlamanıza olanak tanır
Sözdizimi: ErrorDocument kod URL yolu
URL yolu- sayfanın yerel adresi
kod- hata kodu. En yaygın hata kodları şunlardır:
401 - Yetkilendirme Gerekli
403 - kullanıcının kimliği doğrulanmadı, erişim reddedildi (Yasak)
404 - istenen belge (dosya, dizin) bulunamadı (Bulunamadı)
500 - Dahili Sunucu Hatası - .htaccess dosyasının sözdiziminde komut dosyası hatası veya hatası - (Dahili Sunucu Hatası)

ErrorDocument 401 /401.html ErrorDocument 403 /403.html ErrorDocument 404 /404.html ErrorDocument 500 /500.html

AddOutputFilter yönergesi - filtre ayarı (SSI)

SetOutputFilter DAHİLDİR

SetHandler yönergesi - işleyici kurulumu (PHP, Ayrıştırıcı)

Açıklama: verilen dizindeki dosyalar için bir işleyici kurar
Sözdizimi: SetHandler işleyici-adı

SetHandler php betiği

AddHandler yönergesi - işleyici kurulumu (PHP, Ayrıştırıcı)

Açıklama: belirtilen türdeki dosyalar için bir işleyici yükler
Sözdizimi: AddHandler işleyici-adı dosya adı uzantısı

AddHandler php-script .html AddHandler ayrıştırıcı-script .htm

AddDefaultCharset yönergesi - işleyici kurulumu (PHP, Ayrıştırıcı)

Varsayılan olarak, sunucu Windows-1251 kodlamasına ayarlanmıştır.

AddDefaultCharset koi8-r

Apache'nin SSI yönergelerini işlemesi nasıl sağlanır?

SSI, bir sayfayı parçalardan "birleştirmenize" izin verir. Bir parçada menü kodunuz var, diğerinde sayfanın üstü, üçüncüsünde alt için kod var. Ve ziyaretçi, parçalarınıza giren koddan oluşan normal bir sayfa görür. httpd.conf dosyasındaki zorunlu ayarlar gereklidir: İle başlayan blokta ve bitiş Seçenekler Dizinler satırına İçerir'i ekleyin. Ardından, .htaccess dosyasına şunu yazın:

AddOutputFilter .html .htm içerir

Bir dizin dosyasının yokluğunda bir dizinin içeriğinin görüntülenmesi nasıl engellenir?

Diyelim ki sitede kullanılan tüm grafikler img dizininde bulunuyor. Bir ziyaretçi bu dizini tarayıcının adres çubuğuna yazabilir ve tüm grafik dosyalarınızın bir listesini görebilir. Elbette bu size zarar vermez ancak ziyaretçinin böyle bir görüntüsünü de engelleyebilirsiniz. htaccess'te şunu yazıyoruz:

htpasswd

htpasswd yönergesi, bir web sunucusuyla kullanıcıların kimliğini doğrulamak için kullanılabilecek bir parola dosyası oluşturmak için kullanılır.

Örnek: şifreli bir dosya oluşturmak ve ona 1 isim eklemek:

Htpasswd -c Dosya adı kullanıcı adı

Örnek: Parola Dosyasını Ekleme veya Değiştirme

Htpasswd Dosya adı kullanıcıadı2

.htaccess dosyası eklendi ve şimdi sunucu 500 hatası veriyor. Niye ya?

500. hata aşağıdaki nedenlerden kaynaklanabilir:
1.htaccess sözdizimi geçersiz
2.htaccess dosyası Windows formatında yazılmıştır, ancak UNIX formatında yazılmalıdır.