解决阿里云虚拟主机(linux系统)不支持中文文件名的问题
网站根目录有如下文件:
通过浏览器访问时,问题如下图:
原因 linux 系统文件名都是utf-8编码,所以只需要把文件名改为utf-8格式即可:
1、通过utf-8编码的php上传时,文件名会自动变为utf-8格式,而且看起来像乱码,如下:
此时可直接通过浏览器访问下载。
2、中文.docx,使用ftp工具上传到服务器后,文件名还是gbk编码,虽然看起来正常,但是通过浏览器访问时却是 404 Not Found。
echo convert_encoding('中文.docx', 'utf-8', 'gbk'); //GBK转UTF-8
人工复制生成的字符,重命名服务器上的文件,即可通过浏览器访问中文名称的文件了。
这只是提供一种思路,而且问题都是在"本地为WINDOWS系统,服务器为LINUX系统"的情况下遇到的。