°ÑPHP°²×°ÎªApache DSO
PHP ¾³£ºÍApache WebþÎñÆ÷Ò»µÀÓÃÓÚLinux/Unixƽ̨¡£µ±ÎÒÃÇÔÚApache»¾³Ï°²×°PHPµÄʱºo£¬ÄaÓÐÈýÖÖ°²×°Ä£Ê½¿É¹(C)Ñ¡Ôñ£º¾²Ì¬Ä£¿e¡¢¶¯Ì¬Ä£¿e£¨DSO£(C)ºÍCGI¡£
ÎÒ½¨ÒeÄa×iºÃ°ÑPHP°²×°ÎªApachedµÄDSO £¬ÕaÖÖ°²×°Ä£Ê½µÄά»¤ºÍÉý¼¶¶¼Ïaµ±¼oµ¥¡£±È*½Ëµ£¬¼ÙÉeÄaÔÏÈÖ»°²×°ÁËPHPµÄÊý¾Ý¿aÖ§³Ö¹¦ÄÜ¡£¿É¹ýÁ˼¸ÌiÖ®ºoÄaÓÖ¾o¶¨ÒªÎªPHPÌi¼Ó¼ÓÃܹ¦ÄÜ¡£ºÜ¼oµ¥£¬ÄaÖ»Òª¼uÈemake cleanÃuÁi£¬È»ºoÔo¼ÓеÄÅaÖÃÑ¡Ïi£¬½Ó×ÅÔÙÖ´ÐÐmakeºÍ make installÃuÁi¼´¿É¡£ÕaÑu£¬ÐµÄPHPÄ£¿e¾Í»a±»°²×°µ½ApacheÉϵÄÇ¡µ±Î»Öã¬ÄaÖ»ÒªÖØÐÂÆo¶¯Apache¾ÍÒ»ÇÐOKÁË£¬µ±È»£¬Õu¸o¹ý³ÌÍeÈ«²»ÓÃÖØбaÒeApache¡£
°²×°Ð°ae±¾µÄApacheÒÔ¼°°²×°×÷ΪApache DSOµÄPHPµÄ¼oµ¥²½ÖeÈçÏÂËuʾ£º
1. ´ÓApacheÈi¼þ»u½ð»aÕaÒ»Õ¾µaÏÂÔØApacheþÎñÆ÷Èi¼þµÄ×iаae±¾Ô´´uÂe¡£
2. °Ñ´uÂeÎļþŵ½/usr/local/ »oÕß/opt/ µÈºÏÊʵÄĿ¼Ï¡£
3. ÓÃGunzipÃuÁi¶Ô´uÂeÎļþ½aѹËo£¬È»ºoÄa¿ÉÒԵõ½ÏaÓ¦µÄ.tarÎļþ¡£
4. ¼uÈeÒÔϵĽa°uÃuÁi°ÑÒÔÉϵÄtarÎļþŵ½ÐÎΪapache_[version]µÄĿ¼Ï£º
tar -xvf apache_[version].tar
5. ½øµ½/usr/local/apache_[version] Ŀ¼£¨»oÕßÔÚÉÏÃae²½ÖeÖÐÄaËuÖ¸¶¨µÄĿ¼£(C)¡£
6. ¼uÈeÏÂÃaeµÄÅaÖÃÃuÁi£¬ÓÃÄaÉe¶¨µÄÂ*¾¶£¨±ÈÈç/usr/local/apache[version]µÈ£¬×¢ÒaºoÃae²»Òª¸uбÏߣ¡£(C)È¡´u[path]²ÎÊý£¬Í¬Ê±Äa»¹ÒªÆoÓÃmod_so²ÎÊýÒÔÔÊÐiApacheʹÓÃDSO¡£
./configure --prefix=[path] --enable-module=so
7. »Øµ½ÃuÁiÌaʾÐмuÈemakeÃuÁi²¢µÈ´ýÃuÁiÖ´ÐÐÍe³ÉÔٴλص½ÃuÁiÌaʾ״̬Ï¡£
8. ¼uÈemake install¡£
µ½Õa¸oʱºo£¬±aÒeÆ÷¼´¿É´´½¨×iÖÕµÄĿ¼²¢*µ»Øµ½ÏµÍ³µÄÃuÁiÌaʾ״̬Ï¡£
½ÓÏÂÀ´°²×°PHP£º
1. ÃÎÊPHPÖ÷Ò³µÄÏÂÔØÇøÓoÑ¡ÖÐ×iаae±¾Ô´´uÂeµÄÁ´½Ó¡£
2. °ÑÏÂÔصÄÎļþŵ½/usr/local/ »oÕß/opt/µÈÊʵ±µÄĿ¼Ï¡£
3. ÓÃGunzipÃuÁi¶Ô´uÂeÎļþ½aѹËo£¬È»ºoÄa¿ÉÒԵõ½ÏaÓ¦µÄ.tarÎļþ¡£
4. ¼uÈeÒÔϵĽa°uÃuÁi°ÑÒÔÉϵÄtarÎļþŵ½ÐÎΪphp-[version]µÄĿ¼Ï£º
tar -xvf php-[version]
5. ½øµ½/usr/local/php-[version]Ŀ¼Ï£¨»oÕßÄaÖ¸¶¨µÄĿ¼£(C)¡£
ÏÖÔÚ¼´¿É±aÒePHP DSO£¬ÆaʵÕaÀiÖ»ÐeÒªÒ»¸o±ØÒªµÄÅaÖÃÑ¡Ïi--with-apxs£¨Apache binĿ¼ÏµÄÒ»¸oÎļþ£(C)--²»¹ý£¬ÎªÁËϵͳÅaÖøuΪȫÃae£¬ÎÒÃÇÔÚÕaÀi»¹Ôo¼ÓÁ˶ÔMySQLÊý¾Ý¿aµÄÖ§³Ö¡£
./configure --with-mysql=/[path to mysql] --with-apxs=/[path to apxs]
6.»Øµ½ÃuÁiÌaʾÐÐϼuÈemakeÃuÁi²¢µÈµ½ÃuÁiÖ´ÐÐÍe³ÉÔٴλص½ÃuÁiÌaʾ״̬Ï¡£
7.¼uÈemake installÃuÁi¡£
ÔÚÕa¸oʱºo£¬±aÒeÆ÷½«»a´´½¨×iÖÕµÄDSO£¬²¢°ÑËu*ÅÔÚApacheÄ£¿eĿ¼Ï£¬Í¬Ê±»aΪÄaÐÞ¸ÄApacheµÄhttpd.conf ÅaÖÃÎļþ£¬Ö®ºoϵͳ»Øµ½ÃuÁiÌaʾ״̬ϵȴýÄaÊaÈeÐÂÖ¸Ái¡£È»ºo£¬Äa¼´¿É´o¿ªApacheµÄhttpd.conf ÅaÖÃÎļþ×oÒ»Ð(C)ÐÞÕý£º
1. ÕÒµ½ÓÐServerAdmin×ÖÑuµÄÒ»ÐУ¬¼ÓÈeÄa×Ô¼ºµÄµç×ÓÓʼþµØÖ*£¬ÈçÏÂËuʾ£º
ServerAdmin you@yourdomain.com
2. ÕÒµ½ÒÔServerName¿ªÍ*µÄÒ»ÐУ¬°ÑºoÃaeµÄ²ÎÊýÐÞ¸ÄΪʵ¼ÊÖµ£¬±ÈÈ磺
ServerName localhost
3. ÕÒµ½ÏÂÃaeÒ»¶Î£º
ÐÞ¸ÄÕaÐ(C)ÅaÖÃÐÐÒÔ±aÈ¡ÏuPHP 4.0ϵÄijÐ(C)¼ÓÔÚAddType֮ǰµÄ×¢ÊÍ£¬Í¬Ê±ÄaÓ¦¸ÃÌi¼ÓÒ»Ð(C)ΪPHPËuʹÓõÄÎļþÀ(C)Õ¹Ãu£¬Ð޸ĺoµÄÒÔÉϸ÷Ðп´ÆðÀ´¿ÉÄÜ»aÊÇÏÂÃaeÕaÑu×Ó£º
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
±£´aeÒÔÉϵÄÅaÖÃÎļþ£¬»Øµ½Éϼ¶Ä¿Â¼£¬¼uÈeÒÔÏÂÃuÁi¼´¿ÉÆo¶¯Apache£º
./bin/apachectl start
Èç¹uÆo¶¯ÆÚ¼aûÓгoÏÖʲôÎÊÌa£¬Äa¼´¿É²aÊÔApacheºÍPHPµÄ°²×°Çe¿o£¬½¨ÊÇ´´½¨Ò»¸oÃu½Ðphpinfo.phpµÄÎļþ£¬ÆaÖаuº¬ÁËÒÔϵĴuÂeÐУº
<? phpinfo() ?>
±£´ae¸ÃÎļþ²¢°ÑËuÅÖÃÔÚApacheµÄÎĵµ¸uĿ¼Ï£¨htdocs£(C)£¬È»ºoÆo¶¯ÄaµÄWeba¯ÀÀÆ÷£¬ÔÚa¯ÀÀÆ÷µØÖÀ¸Ài¼uÈehttp://localhost/phpinfo.php£¬a¯ÀÀÆ÷¼´»aÒԺܴoµÄƪ*uÏÔʾ³oPHPºÍApacheϵͳµÄ¸÷¸o±aÁ¿ºÍ±aÁ¿Öµ¡£
Èç¹uÄaÏeÒªÖØÐÂÉeÖÃPHP£¬ÄaÐeÒª×oµÄ²»ÍaºoÊÇÖ´ÐÐmake cleanÃuÁi£¬È»ºoÖ´ÐдøÓÐÐÂÅaÖÃÑ¡ÏiµÄ./configureÃuÁi£¬½Ó×ÅÖ´ÐÐmakeºÍmake install¡£ÕaÑu£¬ApacheÄ£¿eĿ¼Öоͻa³oÏÖÒ»¸oÐÂÄ£¿e£¬ÄaÖ»ÒªÖØÆoApacheÒÔ×°ÔØÐÂÄ£¿e¡£ÒÔÇ°µÄÐi¶aÍ*ÌÛÎÊÌaÏÖÔÚ¾ÍÓÈжø½aÁË¡£