사용자 정의 Apache 404 페이지

사용자 정의 Apache 404 페이지

Ubuntu에 있는 Apache 웹 서버의 404 페이지를 일반 페이지가 아닌 다른 페이지로 사용자 정의하고 싶습니다.

Not Found

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

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

이것이 어떻게 이루어질 수 있습니까?

답변1

나는 스스로 답을 찾았습니다.

/etc/apache2/conf.d/localized-error-pages 파일을 편집해야 합니다.

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

일반 텍스트를 입력하거나 스크립트 또는 HTML에 대한 링크를 입력할 수 있습니다.

답변2

<VirtualHost 192.168.0.1:80>
    ServerAdmin [email protected]
    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

여기에 해결책이 있습니다. 도움이 되길 바랍니다.

데모

사이트 폴더로 이동합니다.

라는 이름의 파일을 생성합니다..htaccess(단지.htaccess이름은 없고 파일 확장자만 있음).

파일을 열고 해당 줄을 추가하십시오.

오류문서 404/경로파일

바꾸다/경로파일파일과 동일한 폴더에 있어야 하는 404 페이지 파일 이름으로.htaccess. 관습404파일은 PHP 또는 HTML일 수 있습니다. 다음과 같이 HTML을 추가할 수도 있습니다.

ErrorDocument 404 '<h1>404 찾을 수 없음</h1>'

Apache 서버를 다시 로드할 필요가 없습니다! 끝났습니다. 테스트해 보세요.

원천 -수빈의 블로그

답변4

AFAIK는 Apache 2.4의 기본 오류 메시지가 apache2실행 파일 안에 있기 때문에 쉬운 방법으로 사용자 정의할 수 없습니다.

그러나 NET에서도 사용할 수 있는 "ErrorDocument" 지시문을 사용하여 이를 재정의할 수 있습니다 apache2.conf.

더 나은 방법은 재정의된 메시지를 하나의 별도 파일에서 사용하고 수집하는 Include것 입니다.apache2.conf

다음 내용도 참조하세요.아파치 2.4 문서.

관련 정보