vsftp+apache中文乱码问题

      本以为很简单的两个服务,装装配配,一个小时搞定的事情,哪里想到会碰到中文编码的问题。。。。。。

       一。vsftpd很好用,但是在windows IE下中文会出现乱码,查了下相关手册,vsftpd固有的顽症,网上有人说在2.1后的版本有修复

我特意下了个vsftpd-3.0.2.tar.gz,安装测试,证明是扯淡的话,先采用以下办法解决,

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    

下载vsftpd-2.0.3.tar.gz,之后解压得到文件夹vsftpd-2.0.3

再下载补丁vsftpd-2.0.3-encoding.patch.tar.bz2,解压得到补丁。

然后将补丁复制到vsftpd-2.0.3中,执行

sudo patch -p1< vsftpd-2.0.3-encoding.patch(最后是补丁名)给源码打上补丁,

再make就ok了,

最后make install安装成功后配置一下/etc/vsftpd.conf,加入

charset_filter_enable=YES,

charset_client=GB2312,

charset_server=UTF8。

之后在windows下测试,通过flashfxp上传一个文件,在linux下看正常

相关安装包:

 vsftpd-2.0.3-encoding.patch.tar

vsftpd-2.0.3.tar

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

       二。 apache安装很快,然后修改下httpd.conf中的 “Document root”路径,中间有报错Forbidden,鉴于快速定位出错的地方,可以从

              以下两个方面入手:

              1. rm /etc/httpd/conf.d/welcom.conf,便于使问题直接暴露出来

              2. 查看 /var/log/httpd/error.log日志

             问题出在文件根目录的option上,我是option后面添加 “Indexes”,注释掉了的“FollowSymLinks”

      三。 IE浏览apache网站里也出现了中文乱码问题,如下:

             1. Index列出中文目录,中文命名的文件出现乱码,httpd.conf里添加参数“IndexOptions Charset=UTF-8”,解决问题

             2. 中文文件里的中文内容在IE里也出现乱码,httpd.conf里修改默认编码为“AddDefaultCharset gb2312”,解决问题

参考文章:

http://www.linuxsir.org/bbs/thread42075.html

http://www.douban.com/note/36413522/

原文地址:https://www.cnblogs.com/derekchen/p/2830227.html