Ubuntu 9.04 server°²×°nginx+php(fastcgi)
×¼±¸ÖªÊ¶£º
Ubuntu :
Ubuntu ÊÇlinuxµÄÒ»¸ö°æ±¾£¬ÓзÇÖÞ·¢²¼µÄ£¬ÏÖÔڱȽÏÁ÷ÐеÄÒ»¸ö°æ±¾¡£
²Î¿¼°Ù¶È˵Ã÷Ubuntu
nginx ¡¡£º
Nginx ("engine x") ÊÇÒ»¸ö¸ßÐÔÄÜµÄ HTTP ºÍ ·´Ïò´úÀí ·þÎñÆ÷£¬Ò²ÊÇÒ»¸ö IMAP/POP3/SMTP ´úÀí·þÎñÆ÷¡£ Nginx ÊÇÓÉ Igor Sysoev Ϊ¶íÂÞ˹·ÃÎÊÁ¿µÚ¶þµÄ Rambler.ru Õ¾µã¿ª·¢µÄ£¬ËüÒѾÔÚ¸ÃÕ¾µãÔËÐг¬¹ýÁ½Äê°ëÁË¡£Igor ½«Ô´´úÂëÒÔÀàBSDÐí¿ÉÖ¤µÄÐÎʽ·¢²¼¡£¾¡¹Ü»¹ÊDzâÊ԰棬µ«ÊÇ£¬Nginx ÒѾÒòΪËüµÄÎȶ¨ÐÔ¡¢·á¸»µÄ¹¦Äܼ¯¡¢Ê¾ÀýÅäÖÃÎļþºÍµÍϵͳ×ÊÔ´µÄÏûºÄ¶øÎÅÃûÁË¡£
Nginx µÄÖÐÎÄά»ù£ºhttp://wiki.codemongers.com/NginxChs ¡¡
Nginx µÄÖÐÎÄÕ¾£º http://www.nginx.cn
²Î¿¼ °Ù¶È°Ù¿Æ½âÊÍNGINX
FastCGI:
¸öÈ˳õ²½¸Ð¾õÊÇCGIµÄÏȽø²úÎ¾Ý˵ËٶȱÈCGI¿ìÎå±¶¡£
ºÃÁË£¬ÏÖÔÚÀ´°²×°£º
µÚÒ»²½£¬°²×°nginx
ÓÉÓÚUbuntu 904ÒѾ°üº¬ÁËnginx£¬ËùÒÔ¸ù±¾²»Òª±àÒ룬°²×°³¬¼òµ¥£¡
ÐÞ¸Ä/etc/apt/sources.listÎļþÄÚÈÝΪ¹úÄÚ¾µÏñ£¬È»ºóÔËÐУº
apt-get update
apt-get install nginx
¼´¿ÉÍê³É°²×°
Æô¶¯nginx£º
/etc/init.d/nginx start
È»ºó¾Í¿ÉÒÔ·ÃÎÊÁË£¬http://localhost/ £¬ Ò»ÇÐÕý³££¡Èç¹û²»ÄÜ·ÃÎÊ£¬ÏȲ»Òª¼ÌÐø£¬¿´¿´ÊÇʲôÔÒò£¬½â¾öÖ®ºóÔÙ¼ÌÐø¡£
ÏÂÃæÅäÖÃphp ºÍmysql¡£
µÚ¶þ²½£¬°²×°PhpºÍmysql
°²×°phpºÍMySQL:
apt-get install php5-cli php5-cgi mysql-server-5.1 php5-mysql
µÚÈý²½£¬°²×°FastCgiºÍÅäÖÃ
ÎÒÃÇÐèÒª/usr/bin/spawn-fcgiÕâ¸öÎļþ£¬¶øËüÊÇÊôÓÚlighttpdÕâ¸ö°üÀïÃæµÄ£¬ËùÒÔÎÒÃǰ²×°lighttpdÈ»ºó°ÑËüÉèÖÃΪ¿ª»ú²»Æô¶¯£º
apt-get install lighttpd #ÎÒÃÇÖ»Òª/usr/bin/spawn-fcgi
rcconf #È¥µôlighttpd¿ª»ú×ÔÆô¶¯
ÐÞ¸ÄnginxµÄÅäÖÃÎļþ£º/etc/nginx/sites-available/default
ÐÞ¸Ä server_name 58.30.17.154;
ÐÞ¸ÄindexµÄÒ»ÐÐÐÞ¸ÄΪ£º
index index.php index.html index.htm;
È¥µôÏÂÃæ²¿·ÖµÄ×¢ÊÍ£º
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;
}
ÌØ±ð×¢ÒâÉÏÃæºìÉ«µÄ×Ö¡£
ÖØÐÂÆô¶¯nginx:
/etc/init.d/nginx stop
/etc/init.d/nginx start
Æô¶¯fastcgi php:
spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi
ΪÁËÈÃphp-c
Ïà¹ØÎĵµ£º
¼ÙÈçÓÐÁ½¸ö±í£º user ºÍ articles ±í
½á¹¹£º
user£º £¨id, name£©
articles: (id,user_id,title,content)
ÆäÖÐuser.id ºÍ user_id ¹ØÁª
ÔÚuserµÄ modelÖÐµÄ relations·½·¨ÀïÃæ¼Ó£º
return array('articles'=>array(self::HAS_MANY,'articles','user_id'));
ÔÚarticlesµÄ modelÖÐµÄ relations·½·¨ÀïÃæ¼Ó£º
......
¡¡¡¡ËäÈ»PHPÊÇWebÓ¦Óÿª·¢ÖÐ×î¹ã·ºÊ¹ÓõĻ·¾³£¬µ«Ëü»¹ÊÇÒ»¶È±»ÈÏΪÎÞÔµÆóÒµ¼¶¿ª·¢¡£InfoQ×éÖ¯ÁËÒ»¸öÐéÄâ×ù̸С×éÀ´ÌÖÂÛÓïÑÔ/ƽ̨µÄÑݱ估PHPÔÚÆóÒµ»·¾³ÏµÄÊÊÓÃÐÔ¡£
¡¡¡¡Zeev Suraski£¬Zend Technologies¹«Ë¾´´Ê¼ÈË£¬¸Ã¹«Ë¾Ö÷Òª¹Ø×¢PHPµÄ½øÕ¹¡£
¡¡¡¡Rob Nicholson£¬¸ß¼¶¼¼ÊõÑÐÔ±, ÔøÎªIBM±àд¹ý³ÌÐòÉè¼ÆÓïÑÔÔËÐÐʱ¡£
¡¡¡ ......
1.ÓÃJSµ÷ÓÃÎļþcount.php ÔÚÄãÐèÒª¼ÓÈëͳ¼ÆµÄµÄµØ·½¼ÓÈë<script src="count.php"></script> ʵ¼ÊÔËÓÃÖÐ×¢ÒâÐ޸ķ¾¶£¡
2.php»·¾³±ØÐëÖ§³Öputenv()º¯Êý,¿ÉÒÔͳ¼Æ×òÈÕ·ÃÎÊ£¬½ñÈÕ·ÃÎÊ£¬ÔÚÏßÈËÊý,Äú·ÃÎʵĴÎÊý¡£
3 . ......
ÕâÖÖÎÊÌâÎÒÏë´ó¼Ò¿ÉÄܶ¼Óöµ½¹ý£¬ÍøÓÑÌṩµÄ½â¾ö·½·¨Ò²ºÜ¶à¡£ÎÒÒ²Ö»ÊǽáºÏ×Ô¼ºÏµÍ³µÄÐèÇó²¢½áºÏÍøÓѵĽâ¾ö·½°¸À´×ܽáµÄÒ»ÖÖ·½·¨
ÓÃÀ´×÷Ϊ½â¾öphpÒÔrootȨÏÞÖ´ÐÐһЩÆÕͨÓû§²»ÄÜÖ´ÐеÄÃüÁî»òÓ¦ÓõIJο¼¡£
ÆäʵphpÀïµÄpopen()º¯ÊýÊÇ¿ÉÒÔ½â¾öÕâ¸öÎÊÌâµÄ£¬µ«ÊÇÓÉÓÚijЩ°æ±¾µÄlinux(ÈçÎÒʹÓõÄCentos 5)¶Ôϵͳ°²È«µÄ¿¼ÂÇ£¬
ʹ ......
ÔÀ´ÊÇѧjspµÄ£¬µ«ÊǸоõjspÌ«ÄÑÁË£¬¶øÇÒ·¢ÏÖ£¬ÏÖÔڱȽÏÁ÷ÐÐphpÁË£¬php+mysqlµÄ»Æ½ð´îµµ¡£
¿´jspµÄÊéʱ£¬ÊéÉÏ˵£¬jsp±ÈphpºÃ£¬ÏÖÔÚ¿´phpµÄÊ飬˵php±ÈjspºÃ£¬ÎÒÏëÕâÒ²ÊÇÖÇÕß¼ûÖÇ£¬ÈÊÕß¼ûÈʰɡ£
ÇìÐÒ×Ô¼ºÑ§php·¢ÏÖÁËÒ»±¾ºÃÊé£¬ÍÆ¼ö¸ø´ó¼Ò£¬¾ÍÊǽ²µÄºÜÏêϸ¡£
Ó¢ÎÄÃû¡¶PHP and MySQL EXAMPLE¡· ÃÀ¹ ......