帮助中心 >  技术知识库 >  云服务器 >  服务器教程 >  nginx错误提示:nginx: [emerg] too long parameter ...

nginx错误提示:nginx: [emerg] too long parameter ...

2018-01-29 11:21:53 7269

nginx错误提示:nginx: [emerg] too long parameter ...

站点添加附加域名,字符数大约有4000多个字符,100多个域名。将此些域名添加到nginx/vhost/站点.conf的域名项后,重启nginx时,就出现了该错误。

原因:

nginx的核心文件限死了 NGX_CONF_BUFFER参数的值为4K,该参数决定了.conf配置文档不能大于4K,如果超过则无法读取,便出现该提示。

添加大量域名 / 添加非常长的规则指令如伪静态规则或301规则 / 其它增加的参数项

解决方案:

方案1:

修改核心文件src/core/ngx_conf_file.c,设置为例如8K,

#define NGX_CONF_BUFFER  8192

方案2:

对于域名过多或字符过长,可通过使用多个.conf将域名分开放置。若是伪静态规则过长,则可以使用include引入外部文件,以减小单文档文件的大小。


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: