windows server 2019 启动 nginx 报错

环境 :windows server 2019 ,nginx-1.19.7

背景:

  1. 自己经常用这个 nginx 包作为 web 服务器。今天发现 部署到 server 2019 上直接报错了。
  2. 这可是原生的包,我啥也没改,怎么可能报错。而且之前在 其他服务器用都没问题。
  3. 特意检查了路径不能是带中文等特殊字符,发现也ok。

这就奇怪了?

分析:查看logs 目录下 error.log ,将最后的报错贴上来,以警后人:

复制代码
nginx启动报错:unknown directive " " in D:\common\nginx\conf\nginx.conf:3

网上查了下,感谢这个博主:

nginx启动报错:unknown directive " " in D:\nginx\conf\nginx.conf:3_unknown directive "user nginx-CSDN博客文章浏览阅读936次。在尝试使用Nginx部署前端项目时,由于使用记事本以UTF-8带BOM格式保存了nginx.conf配置文件,导致启动时出现unknowndirective错误。解决方案是使用不带BOM的UTF-8编码编辑器重新保存conf文件。完成修改后,Nginx成功启动。https://blog.csdn.net/shunhua19881987/article/details/125255452

我将具体原因和解决方法贴上来:

用Nginx部署一个前端项目,用记事本修改了nginx\conf\nginx.conf 文件的相关配置并保存,居然启动时报错:unknown directive " " in D:\nginx\conf\nginx.conf:1

原因:

是编码问题。 conf文件被记事本编辑过,保存成了含BOM编码的文件。

注:记事本编辑UTF-8都会自动加BOM头

解决方法:

使用其他编辑器(不能是记事本)将conf文件另存为UTF-8编码不含Bom的格式。

修改完成后,Nginx成功启动。

相关推荐
杨云龙UP2 小时前
ODA登录ODA Web管理界面时提示Password Expired的处理方法_20260423
linux·运维·服务器·数据库·oracle
songx_992 小时前
Linux基础2
linux·运维·服务器
陈皮糖..3 小时前
27 届运维实习笔记|第三、四周:从流程熟练到故障排查,企业运维实战深化
运维·笔记·sql·nginx·ci/cd·云计算·jenkins
莫白媛3 小时前
Linux在限制敏感命令下的修改用户密码小白版
linux·运维·服务器
hhb_6184 小时前
C Shell 基础语法与高阶运维实战指南
运维·c语言·chrome
爱学习的小囧6 小时前
VMware vCenter Server 9.0.2.0 资源详解+完整部署教程+下载指南+常见问题
运维·服务器·esxi·vmware·虚拟化·esxi9.0.2.0
贾斯汀玛尔斯6 小时前
每天学一个算法--单调栈(Monotonic Stack)
运维·服务器·算法
hhb_6186 小时前
Linux底层运维自动化挂载与磁盘分区实战指南
linux·运维·自动化
SpikeKing6 小时前
Server - 配置 SQLBot 智能问数项目
运维·server·sqlbot
cui_ruicheng7 小时前
Linux库制作与使用(二):ELF文件与链接过程
linux·运维·服务器