windows往linux里拷贝内容编码问题导致nginx报错:unknown directive “ “ in /etc/nginx/conf.d/XXX.conf 的问题
一、问题背景
1、报错信息:
在nginx配置文件中增加gzip配置后,出现该报错:
nginx: [emerg] unknown directive " " in /etc/nginx/conf.d/XXX.conf:13
2、报错原因:
该问题为文本从Windows中拷入Linux,空格编码不统一。
二、解决方法
1、排错:
最开始排错角度为配置的准确性,在网上寻找许多资料后,确认当前配置没有问题。
再次查看报错,感觉错误信息在说文件中空格出现了问题,空格被当做了一个配置项?而且正好是第 13 行。
忽然想到这些配置是从我之前的博客中复制的,然后在 Windows 中写了个记事本,然后格式化后拷入到 linux vim 里的,会不会像之前遇到的 ^ M 问题一样?继续从Windosw文本复制到Linux这个角度排查。
2、查看配置文件
cat -A /etc/nginx/conf.d/XXX.conf
可以看到,输出了很多M-BM-
,这些貌似是从Windows拷贝过来的空格。
将文本中所有的M-BM-
替换为普通空格后,nginx检测通过。
再次启动 nginx 镜像就成功更新了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律