注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

早衰男的巢

大音希声 道隐无名

 
 
 

日志

 
 

冷知识:你妹的下划线! 记局域网内以主机名访问lighttpd返回的400错误  

2014-01-24 06:39:40|  分类: others note. |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

【背景简述】nas自带的web服务是lighttpd。nas主机名我设为 “NAS_HOME”。

当我用 http://NAS_HOME/ 访问web服务的时候,浏览器直接抛回一个400 error给我。

碰上午夜脑抽这种日常,后果不出所料是一夜没睡和各种问号折腾缠斗到天亮——幸运的是,搞定!

【折腾过程】

NAS主机名为 nas_home,ip:192.168.0.39
开启了php,端口设为7778(80端口默认为管理占用)
用IP访问 http://192.168.0.39:7778/ 可以打开 /mnst/array1/www/htdocs/index.php
但如果我用 http://nas_home:7778/ 访问则返回400 error
访问 http://nas_home/ 也是400
浏览器的调试工具显示IP已经解析到 192.168.0.39, 400错误是由nas返回的
我用 \\nas_home\ 访问samba的文件共享正常

QQ截图20140124054927
用 http://nas_home:9000/ 访问webaccess也正常(webaccess不依赖lighttpd)
那么我认为是lighttpd 返回的400
于是我去 /etc/lighttpd/lighttpd.conf 检查了一大通….
server.bind 是没有设置的,前面还加着备注的"#"
注释 defaults to all interfaces

也不见有vhost的设置。
搞不懂为什么会400…

于是又胶着于慢慢爬google… 翻了好几页国内的“文献”…狗屁不通!一点用没有


!!!最后,终于给我在一个6年前的老坟里,从一圈老外激辩中..找到了答案!

http://redmine.lighttpd.net/issues/1253

*有趣的是…我怀疑这个贴的提问者其实是个华人,他提到自己的英文不是很好。但我看着很顺眼,貌似是chinese-english

凶手竟然是 NAS_HOME?

问题指向于 hostname 的 rfc标准 underscore 在lighttpd中被视作非法字符..于是触发了这个bug

当我把NAS的主机名称改为 NASHOME 后,问题解决了………………艹
QQ截图20140124060728
【小插曲】
nas在webadmin界面上修改主机名,是无效的主机名改了,我从另一外PC去查看nas宣告的NetBIOS的主机名绑定,依然是NAS_HOME
QQ截图20140124054943

重启NAS也没用。又搜了一下… 直接修改/etc/samba/smb.conf 的 netbios name,

QQ截图20140124060013

然后重启smb 和 nmb 服务。好了!

其他参考资料
http://www.linuxidc.com/Linux/2011-03/32894.htm

http://technet.microsoft.com/zh-cn/library/cc784285(v=ws.10).aspx

  评论这张
 
阅读(755)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018