Nginx/0.8.6 Configuration Error 404 page

Source: Internet
Author: User

Nginx/0.8.6 Configuration Error 404 page


Nginx/0.8.6

 

Why do we need to customize the 404 page?

When I encounter the above 404 error page, I think 99% (uninvestigated, estimated data) users will close the page, and users will be quietly lost. If there is a beautiful page at this time to guide the user to where he wants to go, the user will inevitably be retained. Therefore, each website should customize its 404 page.

How to customize the 404 page in NGINX

There have been a lot of articles about the experience of customizing the 404 page under IIS and APACHE, and NGINX is still relatively small. Coincidentally, some of my servers are NGINX, in order to solve their own problems, we have made in-depth research on this. The research results show that it is feasible to configure a custom 404 page in NGINX, and it is very simple, just a few steps:

1.create the secret 404.html page

2. Change nginx. conf and add it to the http definition area:

Fastcgi_intercept_errors on;

3. Add nginx. conf in the server region:

Error_page 404 =/404.html

4. Verify nginx. conf:

/Opt/nginx/sbin/nginx-t

If the information is correct, the following information should be displayed:

The configuration file/opt/nginx/conf/nginx. conf syntax is OK
Configuration file/opt/nginx/conf/nginx. conf test is successful

5. Restart nginx

Kill-HUP 'cat/opt/nginx. Pi'
 

Configuration file instance:

......

Http
{
Include mime. types;
Default_type application/octet-stream;

Charset gb2312;
Server_names_hash_bucket_size 128;
Client_header_buffer_size 32 k;
Large_client_header_buffers 4 32 k;
Client_max_body_size 8 m;
Sendfile on;
Tcp_nopush on;

Keepalive_timeout 60;

Tcp_nodelay on;

Fastcgi_connect_timeout 300;
Fastcgi_send_timeout 300;
Fastcgi_read_timeout 300;
Fastcgi_buffer_size 64 k;
Fastcgi_buffers 4 64 k;
Fastcgi_busy_buffers_size 128 k;
Fastcgi_temp_file_write_size 128 k;
Fastcgi_intercept_errors on;

Gzip on;
Gzip_min_length 1 k;
Gzip_buffers 4 16 k;
Gzip_http_version 1.0;
Gzip_comp_level 2;
Gzip_types text/plain application/x-webpage effects text/css tutorial application/xml;
Gzip_vary on;

# Limit_zone crawler $ binary_remote_addr 10 m;

#65 configuration information
Server
{
Listen 80;
Server_name www.65.la 65.la *. 65.la;
Index index.html index.htm index. php tutorial;
Root/opt/www/65;
Location ~ . *. (Php | php5 )? $
{
# Fastcgi_pass unix:/tmp/php-cgi.sock;
Fastcgi_pass 127.0.0.1: 9000;
Fastcgi_index index. php;
Fcinclude gi. conf;
}
Error_page 404 =/404.html;

#502 and other errors can be configured in the same way.
Error_page 500 502 503 504 =/50x.html;
Ocation =/50x.html {
Root html;
}
Log_format 65 '$ remote_addr-$ remote_user [$ time_local] "$ request "'
'$ Status $ body_bytes_sent "$ http_referer "'
'"$ Http_user_agent" $ http_x_forwarded_for ';
Access_log/opt/nginx/logs/65.log 65;
}

......

 

 

Note:

1. You must add: fastcgi_intercept_errors on. If this token is not set, creating 404.html and configuring error_page does not work.

Fastcgi_intercept_errors
Syntax: fastcgi_intercept_errors on | off

Default Value: fastcgi_intercept_errors off

Add location: http, server, location

By default, nginx does not support custom 404 error pages. Only when this command is set to on, nginx supports 404 error redirection. Note that if fastcgi_intercept_errors on is set, nginx will redirect the 404 error. In nginx, the precondition for 404 error redirection to take effect is that fastcgi_intercept_errors on is set, and error_page is set correctly (including syntax and corresponding 404 page. do not set the homepage as a 404 error page for the purpose of saving time or increasing the homepage weight, or use other methods to jump to the homepage.

3. The custom 404 page must be larger than 512 bytes; otherwise, the default 404 page of IE may appear. For example, the parameter is set to 404.html and the size is only 11 bytes (the content is 404 error ). Use the following two addresses that do not exist for access:

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.