Linux-hosts之坑

引入

今天在生产上线时遇到了一个很奇怪的问题,前述就不讲了,直接开始重点吧。

需要在服务器上修改 hosts 文件,让配置的域名生效。

那么问题就来了,共有两台服务器,其中一台生效,另一台没有生效。(放心,不会是什么粗心大意而导致的问题!


环境

系统: AIX
版本: 5.4
JDK: 1.6.0_54

Server-1:

1
2
127.0.0.1	local
10.10.10.1 testadmin.com

Server-2:

1
2
3
127.0.0.1	local
10.10.10.1 testadmin.com


解决

最后经过前置 F5 启停交易最后查出了是第一台服务器有问题,那么问题会在哪里呢?

当出现问题时,那么往往都是最细节的地方才会出现问题!

好家伙,试了一下结果交易就发通了!

原来根本原因就是在 Server-2 hosts 文件的最后一个地址进行了换行,而 Server-1 hosts 文件的最后一行没有换行!

最后希望我踩的这个坑会对你在最困难的有所帮助。


思考

关于 hosts 文件为何最后一行需要换行这个问题,我的想法如下:

  1. 判断 hosts 文件最后一行是否为换行?
    是,则继续添加解析。
    否,则退出添加。

  2. 在使用 shell 脚本时,将文件作为参数时,如果缺少换行符,可能会导致 shell 脚本出错。


个人备注

此博客内容均为作者学习所做笔记,侵删!
若转作其他用途,请注明来源!