Nginx + php-fpm “504 Gateway Time-out”

Posted in Linux/Unix on April 7th, 2014 by Adam

Nginx log error like the following:
2014/04/06 23:54:32 [error] 13340#0: *25756 upstream timed out (110: Connection timed out) while reading response header from upstream

Add three timeouts, the problem is resolved.

nginx.conf:
http{
fastcgi_connect_timeout 300s;
fastcgi_send_timeout 300s;
fastcgi_read_timeout 300s;
#fastcgi_buffer_size 128k;
#fastcgi_buffers 8 128k;
#fastcgi_busy_buffers_size 256k;
#fastcgi_temp_file_write_size 256k;
#fastcgi_intercept_errors on;
}

Tags: ,

console.log加图片加样式的办法

Posted in javascript on March 30th, 2014 by Adam

现在流行技术流,有些东西只给搞技术的人看。
前端网页console.log也可以加图片加样式,chrome浏览器支持。

//寻觅前端
var isChrome = /webkit/.test(navigator.userAgent.toLowerCase()) && /chrome/.test(navigator.userAgent.toLowerCase());
if(isChrome){
console.log("%c\n ","font-size:60px;background:url('http://sae..../console.gif?v="+$SAE.version+"') left top no-repeat;");
console.log('发现了SAE的什么BUG?\n还是对我们有什么好的建议?\n如果你也对技术充满热情。\n期待你的加入。http://sae....tId=177');
console.log("如有意加入,请在邮件标题中注明:%c["+$SAE.version+"]","color:#FF8A0B;font-weight:bold;");

}


24020140330232657

为什么PHP做网站要使用框架?

Posted in PHP on March 3rd, 2014 by Adam

如果用PHP做网站不用框架,下面问题如何解决?
* 相应代码缺少注释,文档化麻烦
* 前后台没有框架机制,不利维护和敏捷开发
* 没有缓存机制,无法快速切换各种缓存模块
* 没有错误处理机制,无法系统排错,无法准确定位错误点
* 缺少模板机制,代码HTML混杂,降低安全性

PHP做网站使用框架framework的好处

* 面向对象,扩展性好
* 模块化,可重用性高
* 底层封装,更少的代码量,更快速度开发
* 代码管理,文档化方便,也利于Unit test

目前流行的PHP框架:

* http://framework.zend.com/
* http://ellislab.com/codeigniter
* http://cakephp.org/
* http://yiiframework.com/
* http://laravel.com/
* http://symfony.com/

CakePHP 开发框架
如果你仍然需要编写面向PHP4兼容的代码,CakePHP 将是一个非常不错的选择, 在PHP 4 & 5的MVC式框架列表里面,CakePHP都曾经是最流行的。

Zend Framework框架
Zend Framework 是面对一些较有经验的开发者和从底层构建一些企业级应用程序而设计的。

CodeIgniter
CodeIgniter 是一个PHP5.2+ 的MVC框架,它体积小巧切具有丰富的文档资源。通常被称为“初学者框架”。

Symfony
Symfony 是最古老的PHP框架之一,他同样也是转为企业级Web应用程序而设计的。Symfony使用命令行代码生成工具来为项目快速生成所需的代码。
Symfony的网站上手机了大量的教程和范例代码,来帮助你熟悉掌握他们。

Yii Framework
Yii 是一个高度模块化,高性能的PHP5框架,专门为了Web应用程序而开发。Yii是其最主要一大特性,运行起来比Codeigniter和Zend框架要快。

Tags:

Windows下为PHP53安装memcached

Posted in PHP on February 25th, 2014 by Adam

我的环境是XP,apache2.2,php5.3.28。
先下载windows版的mamcached server: http://code.jellycan.com/files/memcached-1.2.6-win32-bin.zip

然后下载5.3.27版的php_memcache.dll:http://windows.php.net/downloads/pecl/snaps/memcache/3.0.9/php_memcache-3.0.9-5.3-ts-vc9-x86.zip

把php_memcache.dll解压,放入ext目录。把memcached.exe放在C盘memcached目录下。

以管理员身份运行DOS,安装memcached server: c:\windwos\memcached -d install 然后memcached -d start。打开服务列表,能看到mamcached server已启动。

重启apache,即可测试memcached php程序。

Tags:

Heroku Python提交失败的问题

Posted in 云时代 on January 21st, 2014 by Adam

本以为nodejs搞定,在Heroku上提交python应该易如反掌,哪知又出问题:
提交时出错提示:“Push rejected, no Cedar-supported app detected”。
出现这个错误是heroku无法判断app的类型,通常python需要在app根目录下有requirements.txt这个文件。
后来发现是我的用户目录下的.gitignore里屏蔽了所有text文件,增加一行!requirements.txt后问题解决。

Tags: , ,

Windows下搭建Heroku的nodejs测试环境

Posted in 云时代 on January 16th, 2014 by Adam

在Heroku上新建App: twittest-njs,下载heroku-toolbelt.exe,安装后在本地dos下heroku login登录。
然后步骤如下:
#add web.js 添加测试代码

本地git init一个目录:twittest-njs,打开dos进入该目录
运行#npm init
运行#npm install express logfmt –save

dos下提示registry.npmjs.org访问出错:
npm ERR! Error: SSL Error: CERT_UNTRUSTED
wayout: npm config set strict-ssl false

npm ERR! error rolling back express@3.4.4 Error: ENOTEMPTY
npm ERR! Unsupported
npm ERR! Not compatible with your version of node/npm: connect@2.11.0
npm ERR! Required: {“node”:”>= 0.8.0″}
npm ERR! Actual: {“npm”:”1.1.12″,”node”:”0.6.14″}

wayout: upgrade http://nodejs.org/download/ http://nodejs.org/dist/npm/ to Program Files\nodejs
解决办法,升级node和npm到最新版。

#add Procfile 创建Procfile文件到当前目录,内容如下:
web: node web.js

在目录 D:\Program Files\Heroku\ruby-1.9.2\bin> 下运行#foreman start出错,提示:
foreman start(0.63)
Bad file descriptor

wayout: gem uninstall foreman;gem install foreman -v 0.61
原因是0.63版本的foreman有问题,换到0.61即可。

复制 copy foreman和foreman.bat 从D:\Program Files\Heroku\ruby-1.9.2\bin> 到 to heroku\twittest-njs
编辑foreman.bat edit: ruby.exe前增加路径:”D:/Program Files/Heroku/ruby-1.9.2/bin/”
当前目录heroku\twittest-njs下运行:#foreman start

结果显示如下:
19:08:07 web.1 | started with pid 5880
19:08:09 web.1 | Listening on 5000

打开浏览器访问:http://localhost:5000/,网页显示:Hello JS World!

至此,Windows下搭建Heroku的nodejs测试环境成功。

补充:如果部署到Heroku出现如下错误:
Fatal: Could not read from remote repository.
或者:
PuTTY Fatal Error: Disconnected: No supported authentication methods available

强烈建议重新安装git,安装时选择openssh,而不是putty。

Tags: , , , , ,

无法安装微信 请释放一些存储空间并重试

Posted in 移动时代 on January 12th, 2014 by Adam

两G的手机卡在升级微信时,提示空间不足,无法安装:“无法安装微信 请释放一些存储空间并重试”。

解决办法是进入应用程序列表,进入微信的应用程序信息页面,点击“移至内置存储卡”即可。转移成功后会显示“移至手机内存”,然后直接升级微信即可。

Tags: ,

天路之旅-川藏线走尼泊尔

Posted in 自助游 on January 6th, 2014 by Adam

没想到自己这么快回又走川藏线进藏,也没想到我会以这么快的形式走完到尼泊尔的三千多公里。前五天,我坚持徒步翻过了折多山,来到了新都桥。但是随着大雪的来临,我不得不以坐班车的形式继续川藏线的朝圣之旅。一路上的山山水水,都将铭记于心,川藏线的风景绝对都在路上,而不是在拉萨和加德满都。IMG_20131226_124234

Tags: , ,
RSS Feed