nginx could not build the server_names_hash 解决方法
nginx “nginx could not build the server_names_hash”解决方法
给一个服务器下增加了一些站点别名,差不多有20多个。
重启nginx时候,提示:
could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32
解决方法:
在配置文件的http{}段增加一行配置
server_names_hash_bucket_size 64;
如果64还不够,那么就按32的倍数往上加。
下面是在中文wiki上摘抄的一段说明:
保存服务器名字的hash表是由指令 server_names_hash_max_size 和 server_names_hash_bucket_size所控制的。参数hash bucket size总是等于hash表的大小,并且是一路处理器缓存大小的倍数。在减少了在内存中的存取次数后,使在处理器中加速查找hash表键值成为可能。如果 hash bucket size等于一路处理器缓存的大小,那么在查找键的时候,最坏的情况下在内存中查找的次数为2。第一次是确定存储单元的地址,第二次是在存储单元中查找键值。因此,如果Nginx给出需要增大 hash max size 或 hash bucket size的提示,那么首要的是增大前一个参数的大小.
相关推荐
-
nginx could not build the server_names_hash 解决方法
nginx "nginx could not build the server_names_hash"解决方法 给一个服务器下增加了一些站点别名,差不多有20多个. 重启nginx时候,提示: could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32 解决方法: 在配置文件的http{}段增加一行配置 server_names_hash_bucket_size
-
nginx安装完成无法解析php解决方法
目录 方法一 方法二 安装完成nginx后,发现无法解析php代码,现在解决方案如下 方法一 找到nginx配制文件,如图下添加配制(截图画出来的),我的配制文件位置是/etc/nginx/sites-available/default location ~ \.php$ { root /var/www/html; include snippets/fastcgi-php.conf; fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILEN
-
nginx 代理后出现503的解决方法
目录 问题: 解决思路: 问题: 配置serve_name后,并且在hosts中添加对应的映射,重新启动nginx后,不生效 解决思路: 1.serve_name设不设置,启动nginx后,都能通过localhost或者windows10.microdone.cn访问: 2.根据这个问题,查看网络配置: 操作步骤:1).win+r,输入regedit: 2).查看注册表: 计算机\HKEY_ _CURRENT_ _USER\Software\Microsoft\Windows\CurrentVe
-
Nginx报404错误的详细解决方法
近日在部署项目时,出现了一些问题,如图 正常的登录界面是可以访问的,但是在登录之后访问之后的地址会报404错误,于是去查看是否配置有错误,但是查看之后发现,nginx.conf与config.js两个配置文件的ip和端口都是没有错误的 这个项目部署过好多次,没有出现过这样的错误. 这是原版没动过的解压缩后的nginx.conf的源文件 圈起来的地方是应该按照项目配置对应的ip和监听的端口 listen对应的是端口,server_name对应的是访问的ip 但是这样是不能解决问题,我们需要添加如下
-
Nginx could not build the server_names_hash 错误的解决办法
在给nginx 配置了一个超长的域名后,通过 /usr/local/nginx/sbin/ngnix -t 检查配置文件时出现一下错误: 复制代码 代码如下: could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32 解决办法是在nginx的配置文件的http段中增加如下配置: 复制代码 代码如下: server_names_hash_bucket_size 64; 如
-
Nginx下无法使用中文URL的解决方法
前言 最近更换了博客空间后,发现许多文章页出现404的情况,找了一下原因,发现是由于URL含有中文而Nginx默认不支持中文URL导致的.此文记录了解决方法. 在Apache中,要实现对中文的支持需要单独加载中文模块,而Nginx是支持多种编码不需要安装其他组件的,只是默认是走UTF-8的支持路线.这里提供两种方法实现Nginx对中文URL的支持. 方法一 利用convmv对文件名转码 此方法治标不治本,仅供紧急时候使用(访问量大时间段,无法对服务器进行重启操作的时候). 这里以CentOS为例
-
深入探讨:Nginx 502 Bad Gateway错误的解决方法
max_children=40 , 每个children平均占用20M-30M内存,children越多,可以同时接受的并发数量越多,一般children的值是网站最高并发数+浮动值,这值再×内存占用,就是你需要用到的内存.max_requests = N 是指当每个children接受了N次请求以后,就会把自己杀死,然后重新建立一个children.PV / max_children = 每一个children接受的request次数[ 默认预设浏览一个只调用一次PHP程序,或许异步调用呢?接
-
Nginx中worker connections问题的解决方法
查看日志,有一个[warn]: 3660#0: 20000 worker_connections are more than open file resource limit: 1024 !! 原来安装好nginx之后,默认最大的并发数为1024,如果你的网站访问量过大,已经远远超过1024这个并发数,那你就要修改worker_connecions这个值 ,这个值越大,并发数也有就大.当然,你一定要按照你自己的实际情况而定,也不能设置太大,不能让你的CPU跑满100%. 所以,当你修改提高了配置
-
linux环境配置nginx导致页面不刷新的解决方法
在linux环境下,配置了nginx负载均衡,由于可能在虚拟主机的配置文件nginx.conf中,对缓存机制未配置成功,导致页面不刷新,仍然显示缓存中的内容. 最后通过注释nginx.conf文件中的相关缓存配置,然后到tmp目录下查看已生成的缓存文件,如图: 这里我们需要将proxy_cache以及proxy_temp文件删除: 重启nginx服务:sercive nginx restart 页面刷新的问题解决了...
-
nginx代理多次302的解决方法(nginx Follow 302)
用proxy_intercept_errors和recursive_error_pages代理多次302 302是HTTP协议中的一个经常被使用状态码,是多种重定向方式的一种,其语义经常被解释为"Moved Temporarily".这里顺带提一下,现实中用到的302多为误用(与303,307混用),在HTTP/1.1中,它的语义为"Found". 302有时候很明显,有时候又比较隐蔽.最简单的情况,是当我们在浏览器中输入一个网址A,然后浏览器地址栏会自动跳到B,进
随机推荐
- Servlet+JavaBean+JSP打造Java Web注册与登录功能
- 组建小型局域网教程
- java中子类继承父类,程序运行顺序的深入分析
- iOS App之间的通信 local socket
- JavaScript实现获取dom中class的方法
- php模板之Phpbean的目录结构
- Delphi中设置条件断点的方法讲解
- Android百度定位导航之基于百度地图移动获取位置和自动定位
- Bootstarp基本模版学习教程
- javascript实现左右控制无缝滚动
- Python json 错误xx is not JSON serializable解决办法
- windows 10下安装搭建django1.10.3和Apache2.4的方法
- 从学习到接单赚钱 十大网络技术人员推荐收藏的网站
- javascript下给元素添加事件的方法与代码
- combox改进版 页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
- jq实现左侧显示图片右侧文字滑动切换效果
- jQuery.parseHTML() 函数详解
- js简单实现让文本框内容逐个字的显示出来
- js动态创建标签示例代码
- win2008 IIS7.5防盗链配置方法