存档

2011年6月 的存档

icnBeta – IT行业资讯阅读器 for iPhone/iPod touch

2011年6月12日 没有评论

icnBeta是iPhone/iPod touch上一款专为cnbeta.com行业资讯网站量身定制的免费新闻阅读器。使用该阅读器用户可以查看cnBeta上所有新闻和评论。新闻页面中的大图片自动缩放至屏幕宽度大小,阅读体验更流畅。支持页面缩放,内置网页浏览器,点击外链自动在新窗口打开,不影响新闻的后续阅读。

icnBeta新闻列表 icnBeta新闻阅读界面

从苹果iTunes App Store免费下载icnBeta:

免费下载icnBeta IT行业资讯阅读器

jQuery AJAX无法解析JSON数据

2011年6月11日 没有评论

今天遇到一个很奇怪的问题,使用jQuery Ajax请求JSON数据,Firefox下一切正常,Internet Explorer下无法正常工作,错误是parsererror。

另外写了一个测试文件,用jQuery写最简单的Ajax请求和响应,结果一切正常。

这令我百思不得其解,JSON数据是用PHP的json_encode()函数编码的,照理不应该还有这么严重的bug吧。jQuery也是一直在改进,如果还存在这样的bug也很难理解。

又怀疑是IE缓存问题,可是清了好几遍缓存都是一样的结果。

将响应的数据格式改为HTML类型后,alert出来一切正常,难道返回的JSON数据有问题?

于是新建HTML文件,将生成的JSON代码贴入,保存时Dreamweaver提示编码有问题。仔细检查了一遍,没发现特殊的字符。

我突然想起,会不会是含有不可见字符?用smart sniff查看请求,响应消息中果然有不明字符串。那一定是BOM!Windows下的很多编辑器就常干这种事情,自动给文件加上BOM标记。

使用Notepad++将文件编码修改为不带BOM的UTF-8格式后,再次测试,一切正常。

分类: JavaScript 标签:

PHP-FPM + NGINX 空白页面问题的解决

2011年6月10日 1 条评论

架设了一台服务器,采用PHP-FPM + NGINX结构,测试时返回空白页面,HTTP状态码200。

访问的文件只要是.php结尾的,无论存在与否,返回状态码均为200,页面内容一律空白。

特意创建了一个PHP文件,里面只有一行代码<?php phpinfo(); ?>,仍然不行,这下也排除了短标签问题。

所有错误日志打开,php.ini、php-fpm.conf、nginx.conf都设置开启日志。

查看日志,没有一处相关的错误报告,nginx日志、php日志、php-fpm日志、系统日志全部检查过,没有任何有用的提示。

究竟是PHP-FPM出问题了还是NGINX设置的问题?查了很多资料都没找到解决办法。

找到最后,都快想放弃了。这时抱着试试看的心态,测试了一个文本文件,返回结果是”403 Forbidden”。

网上一查,原来是权限问题,运行命令修改权限:

Chmod –R 755 /var/www/html/

再次测试,文本文件正常显示,又看到希望了。

再测试phpinfo文件,内容正常打印,曙光终于出现。

我突然想起我所用的框架中很多处函数调用都采用了”@” 符号(at符号)来抑制错误提示。

会不会是这个原因呢?我清理了代码中所用函数调用代码的”@”标记,再次运行我的代码,终于出现错误提示了,一个fatal error,原来是mysql模块没装上。

“@”符号真的害死人啊,我花了那么多时间才找出了错误的原因,我简直想找写这个框架的人来痛扁一顿。

在此给各位同学提醒一下,如无必要,最好不要在PHP函数调用前加”@”符号,错误的抑制完全可以通过php.ini和.htaccess完成。

当然,如果php.ini和.htaccess权限都没有,那么也就只有忍了。

分类: PHP 标签: