安装Ice for PHP

05月 30th, 2008 by xlight

1. 下载Ice 以及它需要的第三方包
http://www.zeroc.com/download.html#src
Source Distributions下面和Source Code for Third-Party Software下面的

2. 解压,并安装必要的 Third-Party Software,
这么我没遇到什么问题,基本就是 make, make install就ok

3. 编译Ice
可以直接在第一层目录里面直接 make。他会将cpp java cs py rb php 的都编译了。

也可以使用先make cpp 来编译cpp的模块,
然后 make php 来单独编译php所需模块。

注意:编译之前要先编辑 Ice-3.3.0/php/config/Make.rules 中的PHP路径,以及Ice-3.3.0/cpp/config/Make.rules中的各个Third-Party Software的安装路径。

4. 将编译好的IcePhp.so 复制到php的extension目录,然后根据文档编辑php.ini就可以了。

阻碍我最长时间的就是各个Third-Party的路径问题,Ice这个源码包真麻烦,各个子模块都要单独修改config/Make.rules。
可我怎么没在安装文档中看到这个说明呢

把UTC/GMT(伦敦)时间字符串转成中国时间

04月 29th, 2008 by xlight

今天,第一次知道UTC时间竟然还有夏令时,这不是添乱嘛。
原来写的代码转换时区时都是用timestamp +3600*8 。。

function conventDateTime_UTCtoChina($strDatetime){
date_default_timezone_set(’Europe/London’);
$t = strtotime($strDateTime);
date_default_timezone_set(’Asia/Shanghai’);
return date(’Y-m-d H:i:s’,$t );
}

最近几天折腾我的RSS Feed,请各位谅解一下

04月 15th, 2008 by xlight

由于这个原因,我的Feed这几天可能会反复出现已阅读过的文章。

请宽容一下我的爱折腾的心吧。

真想知道一下,有哪些朋友在盯着我看呢?

91d1cf97

Install Nginx PHP5 on ubuntu 7.10

04月 13th, 2008 by xlight

1. 安装Nginx和PHP

apt-get install nginx

apt-get install php-pear php5-cli php5-common php5-xcache php5-cgi

2. 从lighttpd中取得spawn-fcgi

apt-get install lighttpd

cp /usr/bin/spawn-fcgi ./
apt-get remove gamin libgamin0 libglib2.0-0 libterm-readline-perl-perl lighttpd

cp spawn-fcgi /usr/bin/

3. 配置php-fastcgi

vim /usr/bin/php-fastcgi

#!/bin/sh
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www-data -f /usr/bin/php5-cgi

chmod 755 /usr/bin/php-fastcgi

vim /etc/init.d/php-fastcgi

#!/bin/bash
PHP_SCRIPT=/usr/bin/php-fastcgi
RETVAL=0
case “$1″ in
    start)
      $PHP_SCRIPT
      RETVAL=$?
  ;;
    stop)
      killall -9 php
      RETVAL=$?
  ;;
    restart)
      killall -9 php
      $PHP_SCRIPT
      RETVAL=$?
  ;;
    *)
      echo “Usage: php-fastcgi {start|stop|restart}”
      exit 1
  ;;
esac     
exit $RETVAL

chmod 755 /etc/init.d/php-fastcgi

启动一下看看:

/etc/init.d/php-fastcgi start

ps -ef |grep php

4. 配置Nginx使用Fast-cgi处理php

vim /etc/nginx/sites-available/default

location ~ .php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /var/www/nginx-default$fastcgi_script_name;
    include /etc/nginx/fastcgi_params;
}


vim /etc/nginx/fastcgi_params

fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with –enable-force-cgi-redirect
#fastcgi_param  REDIRECT_STATUS    200;



/etc/init.d/nginx stop
/etc/init.d/nginx start

然后就可以到/var/www/nginx-default/下面写个phpinfo测试一下了

参考:http://howtoforge.com/nginx_php5_fast_cgi_xcache_ubuntu7.04

 和“ ”(空格)是不同的

11月 9th, 2007 by xlight

下面这段代码在fireFox和IE中的结果是不同的


function trim (str)
{
return str.replace(/ */g, '');
}

function getTextContent (el)
{
if (el.textContent) return el.textContent;
if (el.innerText) return el.innerText;
if (el.innerHTML) return
el.innerHTML.replace(/( )|( )|( )/g, ' ');
}

   here    is the text 0.123 

tag:javascript 正则

OperaMini4 Final 终于推出了!气势滂沱!!

11月 8th, 2007 by xlight

没话说,这气势!太帅啦!VeryCool!很震撼,我喜欢!!