西部数码的流量不够用了,不想续费,只好搬到国外去了,可是问题接二连三的,看来还是虚拟主机省心。
问题开始于勋章图片不显示,新窗打开变成了404 Not Found,一看URL,文件名成乱码了,这才想起来某些勋章是中文名。
到common目录下面,ls一看,中文文件名全部是乱码了,难怪不能显示。
一开始以为是nginx的问题,搜到一些文章帖子说是要在虚拟主机配置文件中添加 charset utf-8,可是没用。
在ftp中,切换到common目录,也是乱码,可是通过ftp上传一个中文名文件,却可以正常显示,而在putty中仍然显示乱码。开始怀疑是debian系统语言和putty的问题。
先解决putty显示中文的问题:
1.window->appearance->font setting
change font
选择“新宋体”字体+“CHINESE_GB2312"字符集
2.设置
window->translation->character data assumed to be in which character set
选择"UTF-8"
3、在"session"中,保存为“debian".
结束
在使用putty中,就能显示中文。看到ftp上传的文件正常显示了。
在去改系统语言,一开始直接编辑/etc/default/locale,结果报错:
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
1
2
3
locale:CannotsetLC_CTYPEtodefaultlocale:Nosuchfileordirectory
locale:CannotsetLC_MESSAGEStodefaultlocale:Nosuchfileordirectory
locale:CannotsetLC_ALLtodefaultlocale:Nosuchfileordirectory
原来应该是通过dpkg-reconfigure locale来配置。
可是做完这些还是不行,真要崩溃了。
继续怀疑,怀疑自己的unzip出了问题,一百度,豁然开朗,原来是windows下压缩的文件到linux不能正常显示中文的问题,改用tar压缩,还是乱码,懒得折腾了,懒得看那些修改unzip源码的文章,直接打开虚拟机,在ubuntu里面压缩,然后上传,解压,中文文件名正常显示!
然而,正当欢喜之时,悲催的孩子又发现了更糟糕的问题,网页标题也出现乱码了,不过貌似只是chromium浏览器出现了,opera和IE9都正常。但是表情框和其他一些地方,所有浏览器都出现了乱码。看来还是编码的问题。编辑虚拟主机配置文件,去掉charset utf-8,恢复正常。