PHPÄ£Äâ¶àÏ̷߳½·¨×ܽá
PHPÓïÑÔ±¾ÉíÊDz»Ö§³Ö¶àÏ̵߳Ä. ×ܽáÁËÒ»ÏÂÍøÉϹØÓÚPHPÄ£Äâ¶àÏ̵߳ķ½·¨, ×ܵÄÀ´Ëµ, ¶¼ÊÇÀûÓÃÁËPHPµÄºÃ»ï°éÃDZ¾ÉíËù¾ßÓеĶàÏß³ÌÄÜÁ¦.
PHPµÄºÃ»ï°éÖ¸µÄ¾ÍÊÇLINUXºÍAPACHEÀ², LAMPÂï.
ÁíÍâ, ¼ÈÈ»ÊÇÄ£ÄâµÄ, ¾Í²»ÊÇÕæÕýµÄ¶àÏß³Ì. ÆäʵֻÊÇ¶à½ø³Ì. ½ø³ÌºÍÏß³ÌÊÇÁ½¸ö²»Í¬µÄ¸ÅÄî. ºÃÁË, ÒÔÏ·½·¨¶¼ÊÇ´ÓÍøÉÏÕÒÀ´µÄ.
1. ÀûÓÃLINUX²Ù×÷ϵͳ
<?php
for ($i=0;$i<10;$i++) {
echo $i;
sleep(5);
}
?>
ÉÏÃæ´æ³Étest.php, È»ºóдһ¶ÎSHELL´úÂë
#!/bin/bash
for i in 1 2 3 4 5 6 7 8 9 10
do
php -q test.php &
done
2. ÀûÓÃfork×Ó½ø³Ì(ÆäʵͬÑùÊÇÀûÓÃLINUX²Ù×÷ϵͳ)
<?php
declare(ticks=1);
$bWaitFlag = FALSE; /// ÊÇ·ñµÈ´ý½ø³Ì½áÊø
$intNum = 10; /// ½ø³Ì×ÜÊý
$pids = array(); /// ½ø³ÌPIDÊý×é
echo ("Startn");
for($i = 0; $i < $intNum; $i++) {
$pids[$i] = pcntl_fork();/// ²úÉú×Ó½ø³Ì£¬¶øÇÒ´Óµ±Ç°ÐÐ֮ϿªÊÔÔËÐдúÂ룬¶øÇÒ²»¼Ì³Ð¸¸½ø³ÌµÄÊý¾ÝÐÅÏ¢
if(!$pids[$i]) {
// ×Ó½ø³Ì½ø³Ì´úÂë¶Î_Start
$str="";
sleep(5+$i);
for ($j=0;$j<$i;$j++) {$str.="*";}
echo "$i -> " . time() . " $str n";
exit();
// ×Ó½ø³Ì½ø³Ì´úÂë¶Î_End
}
}
if ($bWaitFlag)
{
for($i = 0; $i < $intNum; $i++) {
pcntl_waitpid($pids[$i], $status, WUNTRACED);
echo "wait $i -> " . time() . "n";
}
}
echo ("Endn");
?>
3. ÀûÓÃWEB SERVER, PHP²»Ö§³Ö¶àÏß³Ì, APACHE¿ÉÊÇÖ§³ÖµÄ, ºÇºÇ.
¼ÙÉèÎÒÃÇÏÖÔÚÔËÐеÄÊÇa.phpÕâ¸öÎĵµ. µ«ÊÇÎÒÔÚ³ÌʽÖÐÓÖÇëÇóWEB·þÎñÆ÷ÔËÐÐÁíÒ»¸öb.php
ÄÇôÕâÁ½¸öÎĵµ½«ÊÇͬʱִÐеÄ.
<?php
function runThread()
{
$fp = fsockopen('localhost', 80, $errno, $errmsg);
fputs($fp, "GET /a.php?act=brnrn");
fclose($fp);
}
function a()
{
$fp =
Ïà¹ØÎĵµ£º
²½Ö裺
1.ÔËÐÐÃüÁ./ext_skel --extname=sharemem
2.ÔËÐÐÃüÁ./configure --with-php-config=/usr/local/lnmp/php/bin/php-config
3.make clean
make
make install
/usr/local/lnmp/php/sbin/php-fpm restart
/usr/local/lnmp/php/bin/php-cgi /data0/htdocs/blog/sharemem.php
´úÂëÈçÏ£º
1.config.m4
PHP_A ......
(1) ´ò¿ªphpµÄ°²È«Ä£Ê½
phpµÄ°²È«Ä£Ê½ÊǸö·Ç³£ÖØÒªµÄÄÚǶµÄ°²È«»úÖÆ£¬Äܹ»¿ØÖÆÒ»Ð©phpÖеĺ¯Êý£¬±ÈÈçsystem()£¬
ͬʱ°ÑºÜ¶àÎļþ²Ù×÷º¯Êý½øÐÐÁËȨÏÞ¿ØÖÆ£¬Ò²²»ÔÊÐí¶ÔijЩ¹Ø¼üÎļþµÄÎļþ£¬±ÈÈç/etc/passwd£¬
µ«ÊÇĬÈϵÄphp.iniÊÇûÓдò¿ª°²È«Ä£Ê½µÄ£¬ÎÒÃǰÑËü´ò¿ª£º
safe_mode = on
(2) Óû§×鰲ȫ
µ±safe_mode´ò¿ªÊ±£¬ ......
×î½üÓÐÈËÔÚÕбêÒª×ö¸öÏñ£ºwww.webjianzhi.com ÕâÑùµÄÈ˲ÅÕ¾£¬³õ¿´£¬Õâ¸öÍøÂç¼æÖ°Íø£¬½çÃæ»¹ÊDZȽÏÇåÎúµÄ¡£
ÕûÌå·ÖÎöÁËһϣ¬Ò»¸öÐÂÎÅÎÄÕ·¢²¼ÏµÍ³£¬Õâ¸ö²»ÊǺÜÄÑ£¬ÁíÒ»¸ö¾ÍÊÇ×ֶε÷ÓÃϵͳ£¬¾ÍÊÇÊ×Ò³µÄÖ°Òµ½éÉÜ£¬¼æÖ°ÈËÆø£¬µÄÕâЩµ÷Óá£
ÁíÒ»¸ö¾ÍÊÇ»áÔ±·¢²¼ÏµÍ³¡£
Õû¸öÓñí¸ñ²¼¾Ö£¬ÃÀ¹¤Éϲ»´æÔ ......
È·±£ÄãµÄ´úÂëÕý³£¹¤×÷ÊDzâÊÔµÄÊ×ÒªµÄÄ¿µÄ£¬µ«ÊÇÔÚ²âÊÔÄãµÄ´úÂëʱºò£¬ÄãÓ¦¸ÃÈÏʶµ½³ý´Ë
Ö®Í⻹ÓÐһЩ¶îÍâµÄ£¬Ïà¶Ô´ÎÒªµÄÄ¿µÄ£º
1¡¢²âÊÔÈÃÄãÊéдÈÝÒײâÊԵĴúÂë¡£ÕâʹµÃ´úÂëËÉÉ¢ñîºÏ£¬¸´ÔÓÉè¼Æ£¬¶øÇÒ¾ßÓÐ
ºÜºÃµÄÄ£¿éÐÔ¡£
2¡¢²âÊÔÄÜÈÃÄãÇåÎúµÄÁ˽âÔËÐдúÂëµÄÆÚÍû½á¹û£¬ÈÃÄã´ÓÒ»¿ªÊ¼¾Í×¢ÖØÓÚÄ£¿éµÄ
Éè¼ÆºÍ·ÖÎö¡£Í¨¹ý²âÊÔ£¬ ......
×òÌìÎÒÃÇʵÏÖÁËÒ»¸ö¼òµ¥µÄËÑË÷¹¦ÄÜ£¬½ñÌìÎÒÏëÁËһϣ¬Æäʵ»¹ÓпÉÒԸĽøµÄµØÖ·£¬ÈçÖ±½ÓÓÃIndex.php´úÌæSearch.php¡£
ÐÞ¸ÄIndex.phpÎļþ£¬ÐÞ¸ÄÒ»ÏÂËÑË÷±íµ¥
<!---ËÑË÷¿ò--->
<!--ÕâÀïµÄËùÓÐÖµÇ°Ãæ¼Óǰ׺“S_”ÒÔÇø·Ö-->
<form id="form1" name="form1" method="get" action="Index.php">
&n ......