配置一个static目录来做简单的web静态服务器出现乱码问题
发布于 10 年前 作者 deng19891006 3510 次浏览 最后一次编辑是 8 年前

页面编码是gb2312的,用端口访问页面出现乱码,直接打开html文件没有乱码

1 回复

你是说用connect的static中间件配置了一个static目录?

问题的根源也许是因为static中间件是使用fs.createReadStream创建了一个流,然后把这个stream pipe到res

看看这篇文章: http://www.infoq.com/cn/articles/nodejs-about-buffer

遗憾的是目前Node.js仅支持hex、utf8、ascii、binary、base64、ucs2几种编码的转换。对于那些因为历史遗留问题依旧还生存着的GBK,GB2312等编码,该方法是无能为力的

要嘛你把页面编码全部转换为utf-8 要嘛用nginx来处理静态请求,动态请求用nginx proxy_pass转发到nodejs app上

回到顶部