开发者社区> 问答> 正文

nginx配置404页面,没反映,求解

使用的 阿里云,nginx的服务器,为了给公司设置404页面,做了如下修改:
修改nginx.conf 文件,在server_names_hash_bucket_size 128; 后面添加:fastcgi_intercept_errors on;
在server段里添加:error_page  404 /404.html;
制作了一个404页面,放到根目录/mnt/www/default/下。
但是没实现404的效果
依然是默认的404页面效果:



404 Not Found


nginx

------------------------------------------------------------------
-------所有conf代码如下-------------------------------------
user  www www;

worker_processes 2;

error_log  /home/wwwlogs/nginx_error.log  crit;

pid        /usr/local/nginx/logs/nginx.pid;

#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 65535;

events
    {
        use epoll;
        worker_connections 65535;
        multi_accept on;
    }

http
    {
        include       mime.types;
        default_type  application/octet-stream;

        server_names_hash_bucket_size 128;
        fastcgi_intercept_errors on;    #此处为添加代码
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 50m;

        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 64k;
        fastcgi_buffers 8 64k;
        
        fastcgi_temp_file_write_size 256k;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
        gzip_vary on;
        gzip_proxied   expired no-cache no-store private auth;
        gzip_disable   "MSIE [1-6]\.";

        #limit_conn_zone $binary_remote_addr zone=perip:10m;
        ##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.

        server_tokens off;
        #log format
        log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
             '$status $body_bytes_sent "$http_referer" '
             '"$http_user_agent" $http_x_forwarded_for';
        access_log off;
        
        server {             #server段代码为添加代码
            server_name  zbega.com;     #实现xx.com跳转到www.xx.com这样效果
            rewrite ^(.*) http://www.zbega.com$1 permanent;
            error_page  404 /404.html;        #指定404页面
        }

include vhost/*.conf;
}


展开
收起
余茜 2015-08-24 22:48:28 8756 0
5 条回答
写回答
取消 提交回答
  • 旺旺:nectar2。
    回 4楼(qq1178787805) 的帖子
    您好,

    请问您的问题已经得到解决了吗?

    如果还没有,请参考nginx官方的关于error_page的说明和举例喔: http://nginx.org/en/docs/http/ngx_http_core_module.html#error_page

    祝您成功。
    2015-09-12 10:09:15
    赞同 展开评论 打赏
  • 码农|Coder| Pythonista
    您的帖子很精彩!希望很快能再分享您的下一帖!
    2015-09-10 12:17:04
    赞同 展开评论 打赏
  • Renginx配置404页面,没反映,求解
    你好,我还在迷茫着呢,可以qq 指导一下吗?
    2015-09-10 11:20:19
    赞同 展开评论 打赏
  • 回1楼ivmmff的帖子
    这样改了。貌似还是没反应啊。不知道哪里还有问题。已经reload了。
    http
        {
            include       mime.types;
            default_type  application/octet-stream;

            server_names_hash_bucket_size 128;
            fastcgi_intercept_errors on;
            client_header_buffer_size 32k;
            large_client_header_buffers 4 32k;
            client_max_body_size 50m;

            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 64k;
            fastcgi_buffers 8 64k;
            
            fastcgi_temp_file_write_size 256k;

            gzip on;
            gzip_min_length  1k;
            gzip_buffers     4 16k;
            gzip_http_version 1.1;
            gzip_comp_level 2;
            gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
            gzip_vary on;
            gzip_proxied   expired no-cache no-store private auth;
            gzip_disable   "MSIE [1-6]\.";

            #limit_conn_zone $binary_remote_addr zone=perip:10m;
            ##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.

            server_tokens off;
            #log format
            log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
                 '$status $body_bytes_sent "$http_referer" '
                 '"$http_user_agent" $http_x_forwarded_for';
            access_log off;
            
            server {
                server_name  zbega.com;
                rewrite ^(.*) http://www.zbega.com$1 permanent;
                error_page    404    /mnt/www/default/404.html;
            }
            
    include vhost/*.conf;
    }


    -------------------------

    Renginx配置404页面,没反映,求解
    已经搞定了。error_page    404 /404.html;
    把这句代码放到http段里,非server
    2015-08-25 09:18:11
    赞同 展开评论 打赏
  • 解决方案工程师,负责为企业规划上云迁移方案和云上架构设计,在网站建设开发和云计算领域有多年经验,专注于Linux平台的系统维护以及应用部署。致力于以场景化的方式让云计算,用更加通俗易懂的方式让更多人体验云计算,让云端的计算更质朴的落地。
    error_page  404 /mnt/www/default/404.html;
    2015-08-24 23:11:22
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《Nginx 代理系统常用手册》 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载