wdcp3.2php用gbk,WDCP不支持中文路径和中文文件名字的解决方法

系统信息

系统名称:WDlinux Control Panel (简称wdCP) (WD订阅)

当前版本: wdCP v3.0.8 最新 v3.0.8 更新日志

操作系统:2.6.32-642.el6.x86_64

主 机 名:LinuxOS

CPU参数:1个 2核 64位   还未安装云锁,开启云锁,服务器会更安全,现在就 安装

CPU型号:Intel(R) Celeron(R) CPU G1620 @ 2.70GHz

系统时间:2017-04-03 21:34:44 CST

运行时间:1 天 2 小时 16分

服务器IP:192.168.0.251

系统负载:0.19   0.30   0.25

内存使用:总:1.65 GB   已用: 238.20 MB   剩余:1.42 GB

1、安装gcc组件。

yum install gcc -y

2、下载压缩包。

wget http://d.nicwind.com/files/mod_encoding_64.tar.gz

3、将压缩包解压,进行编译。

=====依次输入命令开始=====

tar zxvf mod_encoding_64.tar.gz

cd mod_encoding_64

patch -p0 < mod_encoding.c-apache2.2-20060520.patch

cd lib

chmod 755 configure

./configure --prefix=/usr

make

make install

ldconfig

cd ../

chmod 755 configure

cp -p /www/wdlinux/apache/bin/apxs /usr/bin

./configure --with-apxs=/www/wdlinux/apache/bin/apxs --with-iconv-hook=/usr/include

make

gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -Llib -liconv_hook

cp mod_encoding.so /www/wdlinux/httpd-2.4.23/modules

=====依次输入命令结束=====

注:/www/wdlinux/httpd-2.4.23/modules为apache的modules目录,可以用。(find / -name modules查找这个目录的路径)

注意:把/www/wdlinux/httpd-2.4.23/modules改成你的apache模块存放路径。

4、完成以上操作后,再修改apache的配置文件(可以用find / -name httpd.conf,找出httpd.conf文件的路径),

把下面的内容添加到apache的配置文件httpd.conf中。

命令:vi /www/wdlinux/httpd-2.4.23/conf

内容:

LoadModule encoding_module modules/mod_encoding.so

EncodingEngine on

NormalizeUsername on

SetServerEncoding GBK

DefaultClientEncoding UTF-8 GBK GB2312

AddClientEncoding "(Microsoft .* DAV $)" UTF-8 GBK GB2312

AddClientEncoding "Microsoft .* DAV" UTF-8 GBK GB2312

AddClientEncoding "Microsoft-WebDAV*" UTF-8 GBK GB2312

wq!保存,退出

5、重启apache

service httpd restart

6、完成

Nginx:

一、确定你的Linux系统是UTF编码,Root登录SSH:

env|grep LANG

LANG=en_US.UTF-8

二、NGINX配置文件里默认编码设置为utf-8

server

{

listen 80;

server_name xxxx.com ;

index index.html index.htm index.php;

root /usr/local/nginx/html/inginx.com;

charset utf-8;

}

三、如果使用putty

windows –> translation –>UTF-8

mkdir中文目录名

echo ‘中文目录名’ >中文目录名/中国.html

四、如果是用securecrt 上传文件,请选择 回话–>外观–UTF-8

如果是FTP软件也将默认编码设置为TUF-8

五、如果上传的文件名出现乱码显示

执行

for f in `ls *.html` ; do mv $f `ls $f|iconv -f GBK -t UTF-8`; done

完毕。

另外整理资料没验证 请参考

想让Nginx支持中文文件名首先得让你的系统有中语语言包,设置前可以执行:locale 看一下,如果显示是en_US.UTF-8,即是正常,不用按下面的步骤设置

Apache(32位):

安装环境:CentOS 5.6 + Apache 2.2.15

安装结果:安装后支持“中文图片、文件名”链接直接打开

以下为安装过程:

1、下载安装包

wget ftp://ftp.aconus.com/fc5/mod_encoding/mod_encoding-2.2.0-1.i386.tar.gz

2、直接解压

tar zxvf mod_encoding-2.2.0-1.i386.tar.gz

看到2个rpm安装包,进行安装

rpm -ivh iconv_hook-1.0.0-1.i386.rpm

rpm -ivh mod_encoding-2.2.0-1.i386.rpm

3、用 find / -name httpd.conf 找到apache配置文件httpd.conf,vi编辑加入以下内容

LoadModule encoding_module modules/mod_encoding.so

Header add MS-Author-Via "DAV"

EncodingEngine on

NormalizeUsername on

SetServerEncoding GBK

DefaultClientEncoding UTF-8 GBK GB2312

AddClientEncoding "(Microsoft .* DAV $)" UTF-8 GBK GB2312

AddClientEncoding "Microsoft .* DAV" UTF-8 GBK GB2312

AddClientEncoding "Microsoft-WebDAV*" UTF-8 GBK GB2312

保存退出

4、重启apache

service httpd restart

5、完成!

注:如果安装的是WDCP,重启apache会失败,需要将mod_encoding.so复制到/www/wdlinux/httpd-2.2.22/modules下,

命令:

cp /usr/lib/httpd/modules/mod_encoding.so /www/wdlinux/httpd-2.2.22/modules

Apache(64位):

————————————————————-

此方案用于解决Apache软件对中文网址、中文图片、文件名的支持问题。

通过测试环境:64位CentOS5.5 + Apache2.2.15

————————————————————-

下载 mod_encoding_64.tar.gz

源码包由吴世昌整理,已经包含了apache2.2所需的补丁。

2011.9.20由Hostloc.com的Captain修改补充。

————————————————————-

1、安装gcc组件

yum install gcc -y

2、下载压缩包

wget http://d.nicwind.com/files/mod_encoding_64.tar.gz

3、将压缩包解压,进行编译

tar zxvf mod_encoding_64.tar.gz

cd mod_encoding_64

patch -p0 < mod_encoding.c-apache2.2-20060520.patch

cd lib

chmod 755 configure

./configure --prefix=/usr

make && make install

ldconfig

cd ../

chmod 755 configure

cp -p /usr/sbin/apxs /usr/bin

./configure --with-apxs=/usr/bin/apxs --with-iconv-hook=/usr/include

make

gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -Llib -liconv_hook

cp mod_encoding.so /usr/lib/httpd/modules

注:/usr/lib/httpd/modules为apache的modules目录,可以用

find / -name modules

找出这个目录的路径

注意把/usr/lib/httpd/modules改成你的apache模块存放路径。

4、完成以上操作后,再修改apache的配置文件(可以用find / -name httpd.conf,找出httpd.conf文件的路径),把下面的内容添加到apache的配置文件httpd.conf中。

LoadModule encoding_module modules/mod_encoding.so

EncodingEngine on

NormalizeUsername on

SetServerEncoding GBK

DefaultClientEncoding UTF-8 GBK GB2312

AddClientEncoding "(Microsoft .* DAV $)" UTF-8 GBK GB2312

AddClientEncoding "Microsoft .* DAV" UTF-8 GBK GB2312

AddClientEncoding "Microsoft-WebDAV*" UTF-8 GBK GB2312

保存,退出

5、重启apache

service httpd restart

6、完成

注:如果安装的是WDCP,重启apache会失败,需要将mod_encoding.so复制到/www/wdlinux/httpd-2.2.22/modules下,

命令:

cp /usr/lib/httpd/modules/mod_encoding.so /www/wdlinux/httpd-2.2.22/modules

Nginx:

一、确定你的Linux系统是UTF编码,Root登录SSH:

env|grep LANG

LANG=en_US.UTF-8

二、NGINX配置文件里默认编码设置为utf-8

server

{

listen 80;

server_name xxxx.com ;

index index.html index.htm index.php;

root /usr/local/nginx/html/inginx.com;

charset utf-8;

}

三、如果使用putty

windows –> translation –>UTF-8

mkdir 中文目录名

echo ‘中文目录名’ > 中文目录名/中国.html

四、如果是用securecrt 上传文件,请选择 回话–>外观–UTF-8

如果是FTP软件也将默认编码设置为TUF-8

五、如果上传的文件名出现乱码显示

执行

for f in `ls *.html` ; do mv $f `ls $f|iconv -f GBK -t UTF-8`; done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值