Linux服务器配置PHP文件下载,中文乱码问题,下载出错如何解决

俩个坑点

1. 操作系统的编码问题

windows上的默认编码是gbk,所以如果文件名采用的是中文,那么上传到Linux上面,由于默认编码是utf-8就会出现文件名乱码!

解决办法,手动重命名

2. PHP.ini 配置文件中默认编码是 ISO-8859-1

sudo vi /etc/php5/apache2/php.ini

打开文件后,按下“/default_charset”进行搜索,

按下回车键,找到default_charset的位置,进行修改。

把注释去掉,即是把“;”去掉,把iso-8859-1改为utf-8。

然后重启apache,  sudo /etc/init.d/apache2 restart

** 记得重启Apache**

内容到这里就结束了,大家赶快去试试吧

(0)

相关推荐

  • php实现简单文件下载的方法

    本文实例讲述了php实现简单文件下载的方法.分享给大家供大家参考.具体如下: 这里介绍的php文件下载代码,只是简单实现了一张图片的下载功能,还不完善,最好是封装到一个类里,或是采用函数调用.感兴趣的朋友可以在此基础上加以完善! php文件下载代码如下: <?php $file_name = "2.jpg";//需要下载的图片 define("SPATH","/php/image/");//存放图片的相对路径 $file_sub_path

  • php实现文件下载代码分享

    简单的文件下载只需要使用HTML的连接标记<a>,并将属性href的URL值指定为下载的文件即可.所示: <a href="http://www.jb51.net/download/book.rar">下载文件</a> 如果通过上面的代码实现文件下载,只能处理一些浏览器不能默认识别的MIME类型文件,例如当访问book.rar文件时,浏览器并没有直接打开,而是弹出一个下载提示框,提示用户"下载"还是"打开"等处

  • PHP实现文件下载详解

    1.php下载原理图 2.文件下载源码: 复制代码 代码如下: <?php $file_name="哈哈.jpg";//需要下载的文件 $file_name=iconv("utf-8","gb2312","$file_name"); $fp=fopen($file_name,"r+");//下载文件必须先要将文件打开,写入内存 if(!file_exists($file_name)){//判断文件是否

  • Linux服务器配置PHP文件下载,中文乱码问题,下载出错如何解决

    俩个坑点 1. 操作系统的编码问题 windows上的默认编码是gbk,所以如果文件名采用的是中文,那么上传到Linux上面,由于默认编码是utf-8就会出现文件名乱码! 解决办法,手动重命名 2. PHP.ini 配置文件中默认编码是 ISO-8859-1 sudo vi /etc/php5/apache2/php.ini 打开文件后,按下"/default_charset"进行搜索, 按下回车键,找到default_charset的位置,进行修改. 把注释去掉,即是把":

  • 远程linux xshell下输出中文乱码解决方法

    使用xshell登录中文版CentOS或者redhat时,在xshell下如果输出的是中文的话可能会显示乱码,通过如下办法可以有效的解决乱码问题 linux中文乱码解决方法如下: 复制代码 代码如下: [root@localhost ~]# cd /etc/sysconfig/ [root@localhost sysconfig]# cp i18n i18n.bak #备份i18n文件 [root@localhost sysconfig]# echo "" >i18n [root

  • Python BeautifulSoup中文乱码问题的2种解决方法

    解决方法一: 使用python的BeautifulSoup来抓取网页然后输出网页标题,但是输出的总是乱码,找了好久找到解决办法,下面分享给大家首先是代码 复制代码 代码如下: from bs4 import BeautifulSoupimport urllib2 url = 'http://www.jb51.net/'page = urllib2.urlopen(url) soup = BeautifulSoup(page,from_encoding="utf8")print soup

  • sqlite中文乱码问题原因分析及解决

    在VC++中通过sqlite3.dll接口对sqlite数据库进行操作,包括打开数据库,插入,查询数据库等,如果操作接口输入参数包含中文字符,会导致操作异常.例如调用sqlite3_open打开数据库文件,如果文件路径出现中文,就会导致打开失败.sqlite3_exec执行sql语句,如果包含中文对应字符就会变成乱码. 这是由于sqlite数据库使用的是UTF-8编码方式,而传入的字符串是ASCII编码或Unicode编码,导致字符串格式错误.解决方案是在调用sqlite接口之前,先将字符串转换

  • mysql 中文乱码 解决方法集锦

    第一个方法: MySQL 4.1 中文乱码的问题 最近要将 MySQL 4.0 升级到 MySQL 4.1 ,发现了中文乱码的问题,希望以下见解对大家有用. 1. MySQL 4.1 在文字上有很大改进,它有了 Character Set 与 Collation 的慨念. 2. 在 MySQL 4.0 ,一般的程式都会将文字以拉丁文 ( latin) 来储存,就算我们输入中文字,结果仍是放在以拉丁文设置的文字栏里头,这对 MySQL 4.0 与以 MySQL 4.0 为基楚的程式来说,并不会有问

  • PHP 中文乱码解决办法总结分析

    一.首先是PHP网页的编码 1. php文件本身的编码与网页的编码应匹配 a. 如果欲使用gb2312编码,那么php要输出头:header("Content-Type: text/html; charset=gb2312″),静态页面添加<meta http-equiv="Content-Type" content="text/html; charset=gb2312″>,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文

  • 详解关于java文件下载文件名乱码问题解决方案

    JAVA文件下载时乱码有两种情况: 1,下载时中文文件名乱码 2,下载时因为路径中包含中文文件名乱码,提示找不到文件 解决方法见下面部分代码 response.setContentType("multipart/form-data"); String userAgent = request.getHeader("User-Agent"); String oraFileName = meetingFile.getFileName(); String formFileN

  • MySQL中文乱码问题解决方案

    1.linux 中 MySQL 出现中文乱码问题如下操作 编辑vi /etc/my.cnf 文件,添加图中标记三行 [client] default-character-set=utf8 [mysqld] character-set-server=utf8 [mysql] default-character-set=utf8 重启mysql 服务 2.navicat 工具连接数据库出现中文乱码问题 查看编辑连接中的编码格式 查看编辑数据库中的编码格式 查看表的设计表中的字符集 以上就是本文的全部

  • 解决Ajax加载JSon数据中文乱码问题

    一.问题描述 使用zTree的异步刷新父级菜单时,服务器返回中文乱码,但项目中使用了SpringMvc,已经对中文乱码处理,为什么还会出现呢? 此处为的异步请求的配置: Java代码 async: { enable: true, url: basePath + '/sysMenu/listSysMenu', autoParam: ["id=parentId"] } SpringMvc中文字符处理: Java代码 <mvc:annotation-driven> <mvc

  • ExtJS中文乱码之GBK格式编码解决方案及代码

    这几天做后台看了一些Ext的知识,在切入工作项目的时候出现了乱码情况,所以就总结了这篇ExtJS中文乱码之GBK格式编码解决办法的文章,作为记录. 1.具体情况: 在引入: 复制代码 代码如下: <title>Ext-学习|测试项目</title> 02.<link href="/js/ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" /&

随机推荐