[emerg] could not build server_names_hash, you should increase server_names_hash_bucket_size:32

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。[emerg] could not build server_names_hash, you should increase server_names_hash_bucket_size:32,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

解决nginx报错
nginx: [emerg] could not build server_names_hash, you should increase server_nam
es_hash_bucket_size: 32
nginx: configuration file xxxx/conf/nginx.conf test failed

报错原因
该报错产生的原因主要是因为Nginx中的server配置中server_name的定义值过长产生的。
解决方法
在Nginx的http字段内添加如下代码,放大默认bucket_size

http {
        server_names_hash_bucket_size 64;
        .....
    }

  

  注意:如果已经存在该字段信息,需要加大后面的数值。且数值必须是32的倍数

这时候可能有的同学要问了,他的默认值是多少。根据Nginx的官方文档分析,server_names_hash_bucket_size的默认值有可能是32也有可能是64,或者是其他值,这个默认值的大小取决于CPU的缓存行长度,如果这个值是32,那么定义的如下代码就会报错

 

 

http {
        server_names_hash_max_size 【值为域名长度总和】;
        server_names_hash_bucket_size 【上升值】;
}

  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/198793.html

(0)
小半的头像小半

相关推荐

极客之家——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!