今天终于下定决心删掉了雪豹10.6。换回10.5
Dec 30th, 2009 by song

雪豹太他妈占内存来。一群斯说4g内存算平常看我这穷鬼用的2g内存所以不能用雪豹

都是些暴发户,人家win家族中多数还才1g呢。。

扛不住慢死了,开个 Eclipse firefox 就搞得系统无法动弹。。

换回了10.5看起界面有不顺眼。。郁闷 只好将就拉

还得装 XCode 等郁闷。。 全在新装。。

Technorati 标签: , ,

Php-cgi.exe CGI Error!
Oct 23rd, 2008 by song

CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.

try change
REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w3svc\parameters\Script Map]
“.php”=”[PUT PATH HERE]\\php.exe”

try


; cgi.force_redirect is necessary to provide security running PHP as a CGI under
; most web servers.  Left undefined, PHP turns this on by default.  You can
; turn it off here AT YOUR OWN RISK
; **You CAN safely turn this off for IIS, in fact, you MUST.**
cgi.force_redirect = 0

使用file_get_contents提交http post 自phpec
Feb 15th, 2008 by song

自:phpec
使用file_get_contents提交http post
Submitted by tim on 2007, December 1, 9:18 PM

我曾经发过一篇讲使用curl获取需要登陆内容的文章,但其实,自5.0开始,使用file_get_contents就可以完成.(前提是开启了allow_url_fopen),下面以一个简单的例子说明一下:
1.先看一下目标网页(假设是http://localhost/response.php)
response.php

PHP代码
echo “

";   
print_r($_POST);  
print_r($_COOKIE);  
?>  

本文讲述的只是http post请求的发送,所以,目标页只是回显所收到的post和cookie
2.请求页
request.php

PHP代码
$data = array("name" => 'tim',"content" => 'test');  
$data = http_build_query($data);  
$opts = array(  
 'http'=>array(  
   'method'=>"POST",  
   'header'=>"Content-type: application/x-www-form-urlencoded\r\n".  
             "Content-length:".strlen($data)."\r\n" .    
             "Cookie: foo=bar\r\n" .    
             "\r\n",  
   'content' => $data,  
 )  
);  
$cxContext = stream_context_create($opts);  
$sFile = file_get_contents("http://localhost/response.php", false, $cxContext);  
 
echo $sFile;  
 
?>  

这个文件首先使用stream_context_create()构造了一个http请求,然后使用file_get_contents发送出去,返回的结果是:

XML/HTML代码
Array  
(  
   [name] => tim  
   [content] => test  
)  
Array  
(  
   [foo] => bar  
)  


所以上可以看出,只要你了解http协议,完全可以使用这两个函数构造出所有正常的http请求,比如代理,断点续传等...
对照之前的关于curl的文章,就可以用来取得需要用户验证的内容了.

sheel + php 守护进程
Jan 23rd, 2008 by song

shell查看一个后台运行的PHP程序是否非正常退出
如果退出,利用守护进程自动restart.
类似mysql的safe_mysqld

共3个程序
shstart.sh  负责启动
sh.sh       守护进程主程序
shstop.sh   安全退出守护进程和php程序主体

/**************************/
shstart.sh
#!/usr/local/bin/bash
/home/phpshell/sh.sh &
shpid=”$!”;
echo “$shpid” > /home/phpshell/sh.sid

/**************************/
sh.sh
#!/usr/local/bin/bash

PHP=”/usr/local/bin/php”
PROGRAM=”/www/time.php”

#start dameo
$PHP $PROGRAM &
chpid=”$!”;

echo “$chpid” > /home/phpshell/php.sid
echo “child pid is $chpid”
echo “status is $?”

while [ 1 ]
do
       wait $chpid
       exitstatus=”$?”
       echo “child pid=$chpid is gone, $exitstatus” >> /home/phpshell/phperror.log
       echo `date` >> /home/phpshell/phperror.log
       echo “**************************” >>/home/phpshell/phperror.log

       sleep 10

       $PHP $PROGRAM &
       chpid=”$!”;
       echo “$chpid” > /home/phpshell/php.sid
       echo “next child pid is $chpid”
       echo “next status is $?”
       echo “userkill is $userkill”
done

/******************************/
shstop.sh
#!/usr/local/bin/bash
chpid=”`cat sh.sid`”;
kill $chpid;
echo “kill sh.sh done!”
ps ax|grep php |grep -v grep|awk ‘{print $1}’|xargs kill
sleep 2
ps ax|grep php |grep -v grep|awk ‘{print $1}’|xargs kill
echo “kill php done”

利用这个原理,可以实现很多后台程序的吊线问题

PHP实现长连接
Aug 22nd, 2007 by song


[code]<?php
set_time_limit(0);
header("Connection: Keep-Alive");
header("Proxy-Connection: Keep-Alive");
for($i=0; $i<1000; $i++) {
   print 'fuck man!'.$i.'<br>';
   flush();
   sleep(3);
   clearstatcache();
}
?>[/code]

SIDEBAR
»
S
I
D
E
B
A
R
«
»  Substance:WordPress   »