Nginx - Customizing 404 page

后端 未结 5 2238
无人共我
无人共我 2020-12-07 10:29

Nginx+PHP (on fastCGI) works great for me. When I enter a path to a PHP file which doesn\'t exist, instead of getting the default 404 error page (which comes for any invalid

5条回答
  •  没有蜡笔的小新
    2020-12-07 11:00

    You can setup a custom error page for every location block in your nginx.conf, or a global error page for the site as a whole.

    To redirect to a simple 404 not found page for a specific location:

    location /my_blog {
        error_page    404 /blog_article_not_found.html;
    }
    

    A site wide 404 page:

    server {
        listen 80;
        error_page  404  /website_page_not_found.html;
        ...
    

    You can append standard error codes together to have a single page for several types of errors:

    location /my_blog {
        error_page 500 502 503 504 /server_error.html
    }
    

    To redirect to a totally different server, assuming you had an upstream server named server2 defined in your http section:

    upstream server2 {
        server 10.0.0.1:80;
    }
    server {
        location /my_blog {
            error_page    404 @try_server2;
        }
        location @try_server2 {
            proxy_pass http://server2;
        }
    

    The manual can give you more details, or you can search google for the terms nginx.conf and error_page for real life examples on the web.

提交回复
热议问题