Özel Apache 404 sayfası


15

Ubuntu'daki Apache Web sunucumun 404 sayfasını genel dışında bir şeye özelleştirmek istiyorum:

Not Found

The requested URL /***** was not found on this server.
______________________________________________________

Apache/*.*.** (Ubuntu) Server at **** Port 80

Bu nasıl yapılabilir?


Yanıtlar:


20

Cevabı kendim buldum.

/Etc/apache2/conf.d/localized-error-pages dosyasını düzenlemeniz gerekir

sudoedit /etc/apache2/conf.d/localized-error-pages

Düz metin girebilir veya bir komut dosyasına veya html'ye bağlantı verebilirsiniz


5
<VirtualHost 192.168.0.1:80>
    ServerAdmin admin@host.ru
    ServerName host.ru
    ServerAlias www.host.ru
    DocumentRoot /home/WebServer/www/host.ru/public_html/
    ErrorLog /home/WebServer/www/host.ru/logs/error.log
    CustomLog /home/WebServer/www/hostu/logs/access.log combined


    Alias /error_html/ "/home/WebServer/www/host/error_html/"
    <Directory "/home/WebServer/www/host.ru/error_html">
        AllowOverride None
        Options IncludesNoExec
        AddOutputFilter Includes html
        AddHandler type-map var
        Order allow,deny
        Allow from all
        LanguagePriority en cs de es fr it nl sv pt-br ro
        ForceLanguagePriority Prefer Fallback
    </Directory>
    ErrorDocument 404 /error_html/HTTP_NOT_FOUND.html
</VirtualHost>

3

İşte bir çözüm. Umarım yardımcı olur.

DEMO

Sitenizin klasörüne gidin.

.Htaccess adlı bir dosya oluşturun (sadece .htaccess sadece isim yok dosya uzantısı).

Dosyayı açın ve satırı ekleyin.

ErrorDocument 404 / pathtofile

/ Pathtofile dosyasını .htaccess dosyasıyla aynı klasörde bulunması gereken 404 sayfa dosya adınızla değiştirin . Özel 404 dosyası PHP veya HTML biçiminde olabilir. HTML'yi şu şekilde de ekleyebilirsiniz:

ErrorDocument 404 '<h1> 404 Bulunamadı </h1>'

Apache Sunucusunu yeniden yüklemenize gerek yok! Bitti. Test edin.

Kaynak - Subin'in Blogu


1
Bu, apache'deki "AllowOverride" yapılandırmasının açık olmasını gerektirir; bu, ubuntu'da varsayılan değildir.
Nemo

Bu benim için çalıştı
SimplySimon

0

Bir tür 404 özelleştirme (henüz burada ele alınmamaktadır) VPS Ubuntu'daki 404 sayfasını sitenin ana sayfası gibi ayrı bir sayfaya yönlendiriyor.

Bunu yapmak için .htaccess, web kökünde çağrılan bir dosya yapın ve bu satırı içine koyun:

ErrorDocument 404 http://www.yoursite.com

Sonra dosyayı kaydedin.

Bu, 404 sayfasının belirtilen URL'ye yönlendirilmesini sağlar.


0

AFAIK, Apache 2.4'ün varsayılan hata mesajlarını kolay bir şekilde özelleştiremezsiniz, çünkü bu mesajlar apache2yürütülebilir dosyadadır.

Ancak, içinde de kullanılabilen "ErrorDocument" yönergelerini kullanarak bunları geçersiz kılabilirsiniz apache2.conf.

Çok daha iyi bir yolu kullanıyor olabilir Includeiçinde apache2.confve ayrı dosyada geçersiz kılınan mesajları toplar.

Lütfen ayrıca Apache 2.4 belgelerine de bakın .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.