Invalid byte 1 of 1-byte UTF-8 sequence解决办法
错误提示
Invalid byte 1 of 1-byte UTF-8 sequence
原因分析
在中文版的window下java的默认的编码为GBK,也就是所虽然我们标识了要将xml保存为utf-8格式但实际上文件是以GBK格式来保存的,所以这也就是为什么能够我们使用GBK、GB2312编码来生成xml文件能正确的被解析,而以UTF-8格式生成的文件不能被xml解析器所解析的原因。
把xml的encoding属性值UTF-8改为UTF8
org.xml.sax.SAXParseException: Content is not allowed in trailing section
把先要解析和字符串trim()一下即可解决问题。
解决:
1、最简单就是把<?xml version="1.0" encoding="UTF-8"?>改成<?xml version="1.0" encoding="gbk"?>
2、或者把xml打开另存的时候把字符集改为UTF-8后保存
或改程序
代码如下 | 复制代码 |
SAXReader reader = new SAXReader(); |
我使用的是eclipse编辑器如下操作即可
可以在Eclipse中更改,在 eclipse 的功能表 [Project]→[Properties],?? [Resources],在右?的「Text file encoding」,把原?硎窍到y??的??,改? 「UTF-8」。
经常会有同学问我为什么php time()与date()时间与本地电脑有区别呢,相关有几个小时啊,仔细计算有8小时之差了,这个就是php date_default_timezone_set时区设置问题了,我们只要简单设置即可。如果date时间不一致可以使用date_default_timezone_set设置时区:
代码如下 | 复制代码 |
<?php
date_default_timezone_set('Asia/Chongqing');
//获取当前时间
echo date('Y-m-d H:i:s',time());
echo "<br>";
//对当前时间进行计算
echo date('Y-m-d H:i:s',time()-600); //减10小时
echo "<br>";
//时间戳转时间
echo date('Y-m-d H:i:s',1364277600);
//时间转时间戳(仅精确到秒)
echo strtotime("2013-03-26 14:00");
echo "<br>";
?> |
除了上面办法我们还可以在php.ini中设置一个时区,这们以后就不需要程序开加这date_default_timezone_set('Asia/Chongqing');了
代码如下 | 复制代码 |
date.timezone = PRC |
解决办法
方法一(推荐)、修改 php.ini 里的 memory_limit 的设置值 8M 改为 120M:memory_limit = 120M
方法二、在最上层的 PHP Script,加入一行:ini_set("memory_limit","120M");
我使用的是否wordpress博客,我的解决办法有点不同,下面也分享一下。
1、网络办法,据说这个适用3.0以前的版本。编辑wp-config.php这个文件,添加
代码如下 | 复制代码 |
define(‘WP_MEMORY_LIMIT’, ’64M’); |
64M可以更高。可以96M、128M。
2、3.0以后的版本,要修改源文件,介意的就不用改了。在wp-includes目录下找到default-constants.php文件中的以下的代码
代码如下 | 复制代码 |
global $blog_id; // set memory limits |
第二行 define(‘WP_MEMORY_LIMIT’, ’32M’); 变64M即可。
phpmyadmin超时或响应慢的原因我分析有两种,超时就是设置时间不够,默认为1800秒了,而反应慢估计是phpmyadmin自动检查更新导致的,下面我来具体解决一下操作方法。今天安装了最新版的phpmyadmin,安装好了测试了一下,发现间或的反应超慢,查看了nginx的日志,是报fastcgi连接超时。然后打开fastcgi的慢日志,发现如下错误:
[10-May-2013 11:15:16] [pool www] pid 10992 script_filename = /usr/share/nginx/html/phpmyadmin-1688/version_check.php [0x0000000002902e78] file_get_contents() /usr/share/nginx/html/phpmyadmin-1688/version_check.php:240
问题明显了,是phpmyadmin不断地进行版本的检查更新,而国内的服务器连接phpmyadmin服务器又是超慢的,且还有可能无法连接,所以导致了超时的现象。
解决方法:
编辑version_check.php文件,在
代码如下 | 复制代码 |
<?php: exit; |
保存测试,响应慢的问题解决了。
下面来看第二个问题,就是phpmyadmin超时问题
phpMyAdmin的默认超时时间是1800秒,太短了
开发过程中写几行代码回来一看数据库就超时了,
反复登录很烦人。
修改方法:
打开 phpMyAdmin/libraries/config.default.php
找到$cfg['LoginCookieValidity'] = 1440; 行
把1440调大一些就ok了
今天起看发现服务器的nginx产生大量日志了,并且提示PHP Warning: Memcache::connect(): Can\'t connect to 127.0.0.1:11211, Connection timed out (110) in,后来几经周折找出问题所在了。在一次例行检查日志的时候,发现Nginx日志中出现了大量的PHP连接Memcached超时的报错信息,如下:
PHP Warning: Memcache::connect(): Can't connect to 127.0.0.1:11211, Connection timed out (110) in ...
连上服务器检查Memcached进程运行正常,然后我用一段测试代码检查Memcached是否能够正常连接,结果也很正常。
于是又仔细分析日志,发现那段报错信息是间隔出现的,说明是有一定几率的。这时我回想起上周因为架构问题刚刚把PHP的Session存储路径指向到了Memcached里,可能是因为这个配置增加了Memcached的负载,从而导致在并发量较高时,Memcached出现连接超时的现象。
找到原因就容易解决了。重新调整Memcached的启动参数,增加-c参数来提高连接数量。默认为1024,可以逐步增加以找到最佳数值。我设置为2048。
启动命令为:
代码如下 | 复制代码 |
memcached -d -m 256 -c 2048 -l 127.0.0.1 -p 11211 -u root |
如果服务器充裕,可以考虑分布式的memcached集群,以降低单个节点上的压力,据说2.5有连接数量过多导致oom的bug
相关文章
- 409错误是什么?http 409错误怎么解决呢?不少站长在遇到这个错误代码之后都一筹莫展,本次一聚教程网为大家带来了详细的说明,快来看看吧。 409错误是什么: HTTP 40...2017-01-22
PHP session_start()很慢问题分析与解决办法
本文章来给各位同学介绍一下关于PHP session_start()很慢问题分析与解决办法,希望碰到此问题的同学可进入参考。 最近在做东西的时候发现一个问题 有一个接口挂...2016-11-25- http 405错误是什么?http 405错误怎么解决?相信很多站长都在找这两个问题的答案,本次小编为大家带来了详细的教程,快来看看吧。 405错误是什么: HTTP 405错误是H...2017-01-22
php中json_decode()和json_encode()用法与中文不显示解决办法
本文章介绍了关于php中json_decode()和json_encode()用法与中文不显示解决办法,有需要的朋友可以参考一下下。 php中json_decode()和json_encode() 1.json_decode(...2016-11-25- 在php中我们如果要导入excel数据我们通常会使用phpexcel插件了,但是有朋友会发与使用phpexcel导出数据出现身份证后四位是0000情况了,下面我们就来看解决办法。 最...2016-11-25
- 401是HTTP状态码的一种,属于“请示错误”,表示请求可能出错,已妨碍了服务器对请求的处理。具体的401错误是指:未授权,请求要求进行身份验证。登录后,服务器可能会返回对页面...2017-01-22
- Apache status 503 的原因大致有如下几种情况 : 1、 CPU 负载过高,服务器响应不过来,返回503 2、 系统连接数超限,超过MaxVhostClients的上限,返回503 3、 单IP连接数超限,超过M...2016-01-28
- 403错误是HTTP状态码的一种,属于“请示错误”,表示服务器拒绝请求。如果在搜索引擎尝试抓取您网站上的有效网页时显示此状态代码,那么,这可能是您的服务器或主机拒绝搜索...2017-01-22
- 412错误是什么?412错误怎么解决?本次一聚教程网将为大家带来详细的介绍,帮助大家全面了解412错误的意思以及解决412错误的方法。 412错误是什么: HTTP 412错误,(Precond...2017-01-22
- 今天用CPAN安装Term::ReadLine,报了个这样的错误 Going to read /root/.cpan/sources/modules/03modlist.data.gz Can't locate object method "data" via package "C...2016-11-25
- 407错误是什么?407错误怎么解决?不少站长都遇到过407错误,下面小编将告诉大家如何处理407错误。 407错误是什么: HTTP 407错误是HTTP协议状态码的一种,表示需要代...2017-01-22
- HTTP 406错误是HTTP协议状态码的一种,表示无法使用请求的内容特性来响应请求的网页。一般是指客户端浏览器不接受所请求页面的 MIME 类型。 而MIME类型是在把输出...2017-01-22
- 410错误是HTTP协议状态码的一种,本次一聚教程网将为大家详细介绍HTTP 410错误是什么,以及410错误的解决办法。 410错误是什么: HTTP 410错误是HTTP协议状态码的...2017-01-22
- 每当遇到http错误代码为400,代表客户端发起的请求不符合服务器对请求的某些限制,或者请求本身存在一定的错误,那么HTTP 400错误怎么解决呢?请看下文介绍。 目前400错...2017-01-22
- 下面给大家介绍phpstudy访问速度慢的解决办法。1、修改mysql数据库链接地址为ip地址127.0.0.1。2、使用最新版本,这个坑了我好久时间。下面一段内容是关于phpstudy启动失败的解决办法。php5.3、5.4和apache都是用vc9编...2015-11-24
- 自己用的小PHP应用,使用curl抓网页下来处理,为了穿墙方便,使用Privoxy作为代理,便于选择哪些网站使用proxy、哪些不用。但今天却遇到了奇怪的问题,访问google baidu这些网站居然都返回403错误,而访问其他的一些网站没事,如果...2014-05-31
- 分享给大家php判断上传文件类型的方法,大家一起学习学习。/** * 读取文件前几个字节 判断文件类型 * @return String */ function checkTitle($filename){ $file=fopen($filename, "rb"); $bin=fread($file, 2); /...2015-10-21
- 这篇文章主要介绍了Jrebel启动失败解决方案详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-07-07
android.os.BinderProxy cannot be cast to com解决办法
本文章来给大家介绍关于android.os.BinderProxy cannot be cast to com解决办法,希望此文章对各位有帮助呀。 Android在绑定服务的时候出现java.lang.ClassCastExc...2016-09-20- 1.用phpmyadmin创建数据库和数据表 创建数据库的时候,请将“整理”设置为:“utf8_general_ci” 或执行语句: 复制代码 代码如下:CREATE DATABASE `dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 创...2015-10-21