专注于高品质PHP技术等信息服务于一体 [STIEMAP] [RSS]

百度提供的广告:
PHP
当前位置:首页 > 技术文档 > PHP >  > 
中文图片空间转到linux 下引发的问题
客户的网站,原来在 win 2003 下面,使用的很多中文的图片名称,现在要把空间所有程序图片转换到 linux 服务器下,直接使用FTP 下载,在上传至 linux 服务器。
打开网页首页,查看发现 中文图片无法显示。网页为 GBK 编码。
解决方法:
1,如果全部手动修改中文图片,则修改量太大,用户后台自己也上传了很多中文图片(FCK网页编辑器)
2,使用rewtrie 方法
3,使用linux 命令批量换转 图片中文名称

下面介绍rewrite 方法:
打开一个,有中文的图片 URL 为 首页.jpg
查看URL 地址栏为 %E9%A6%96%E9%A1%B5.jpg 是采用了 url 转为 utf-8 编码的 asc 模式
linux 是 apache 2.2 支持 rewrite

.htaccess 文件内容
RewriteEngine On
RewriteBase /
RewriteRule ^(.*).jpg$ jpg.php?file=$1.jpg

jpg.php文件内容
<?php
$file = $_GET['file'];
$file = iconv('UTF-8','GBK',$file);  // 使用PHP 函数进行编码转换
header("Content-type: image/JPEG",true);
echo file_get_contents($file);

成功了。。