Ò»¡¢¼ò½é
´Ólinux2.4.13¿ªÊ¼£¬ÔÚNetworking options³öÏÖÁËÒ»¸öÊÔÑéÐÔµÄÑ¡Ïî£'[ ] Kernel httpd acceleration (EXPERIMENTAL)'£¬Ê²Ã´ÊÇkHTTPdÄØ£¿ËüÊÇÒ»¸öLinux»·¾³ÏµÄweb·þÎñÆ÷¡£kHTTPdºÍÆäËüweb·þÎñÆ÷µÄ²»Í¬Ö®´¦ÔÚÓÚÆäÊÇ×÷ΪÄں˵ÄÒ»²¿·ÖÔËÐÐÔÚLinuxµÄÄÚºËÖÐ(¿ÉÒÔ¿´³ÉÊÇÒ»¸öÉ豸Çý¶¯)¡£
KHTTPd½ö½ö´¦Àí¾²Ì¬(»ùÓÚ¾²Ì¬ÎļþµÄ)µÄwebÒ³Ãæ£¬¶ø½«ËùÓеĶÔÓڷǾ²Ì¬ÄÚÈݵÄÇëÇ󴫵ݸøÕý³£µÄÔËÐÐÓÚÓû§¿Õ¼äµÄweb·þÎñÆ÷À´´¦Àí£¬Èçapache¡¢ZeusµÈ£¬¶øÕâЩÔËÐÐÔÚÓû§¿Õ¼äµÄweb·þÎñÆ÷²¢²»ÐèÒªÈκÎÐ޸ġ£
¶ÔÓÚ¾²Ì¬webÒ³ÃæµÄhttpÇëÇóµÄ´¦Àí²»ÊÇÒ»¸ö·Ç³£¸´ÔÓ¹ý³Ì£¬µ«ÊÇÕâÈ´ÊÇweb·þÎñÖзdz£ÖØÒªµÄÒ»¸ö²¿·Ö£¬ÒòΪÖÁÉÙÍøÕ¾Öдó¶àÊýͼÐζ¼ÊǾ²Ì¬µÄ£¬¶øÇÒ»¹ÓкܶàhtmlÎļþʱ¾²Ì¬µÄ¡£Ò»¸ö³£¹æµÄweb·þÎñÆ÷¶ÔÓÚ¾²Ì¬Ò³ÃæµÄhttpÇëÇó´¦Àí·Ç³£¼òµ¥£¬½ö½öÊÇ¿½±´¡®Îļþµ½ÍøÂç¡®µÄ¼òµ¥²Ù×÷¡£Èç¹ûÕâЩ²Ù×÷ÔÚÄÚºËÖÐÍê³É½«±äµÃ·Ç³£¸ßЧ¡£ÀýÈçÒ²ÊÇÍê³ÉÀàËÆµÄ¹¦ÄܵÄNFS·þÎñÆ÷Ò²ÊÇÔËÐÐÔÚÄÚºËÖеġ£
ͨ¹ýÔÚÄÚºËÖÐʵÏÖwebÇëÇó´¦Àí¼ÓËÙ£¬Í¨³£ÒâÒåµÄweb·þÎñÆ÷£ÈçapacheµÈÔò¿ÉÒÔרעÓÚ´¦ÀíÄÇЩ¶¯Ì¬webÇëÇó¡£
×¢£ºÕâÀïApacheÖ¸´úÈκÎÒ»¸öweb·þÎñÆ÷¡£
¶þ¡¢¿ìËÙÈëÃÅ
1) ±àÒë²¢¼ÓÔØÄ£¿é¡£
2) Èç¹ûÐèÒª£¬Í¨¹ý/proc/sys/net/khttpdÀ´¶ÔÄ£¿é½øÐÐÅäÖá£
3) echo 1 > /proc/sys/net/khttpd/start¡£
Ð¶ÔØ£º
|
Èý¡¢ÅäÖÃ
1¡¢²Ù×÷ģʽ
ÕâÀïÓÐÁ½ÖÖÍÆ¼ö²Ù×÷ģʽ£º
1) 'Apache' ÊÇÖ÷web·þÎñÆ÷£¬kHTTPdÊǸ¨Öúweb·þÎñÆ÷
|
2) kHTTPdÊÇÖ÷web·þÎñÆ÷, 'Apache'ÊǸ¨Öúweb·þÎñÆ÷
¡¡
|
2¡¢ÅäÖÃkHTTPd
ÔÚÆô¶¯kHTTPd֮ǰÊ×ÏÈÐèÒª¶ÔËü½øÐÐÅäÖá£ÕâÊÇͨ¹ý/procÎļþϵͳÀ´½øÐеģ¬Òò´Ë¿ÉÒÔÔڽű¾ÖÐʵÏÖ×Ô¶¯ÅäÖᣴó¶àÊý²ÎÊýÖ»ÄÜÔÚkHTTPdûÓÐÆô¶¯ÒÔǰ²ÅÄÜÉèÖá£
Ò»°ã¿ÉÒÔÅäÖÃÒÔϲÎÊý£º
1) kHTTPd¼àÌýµÄ·þÎñÇëÇó¶Ë¿Ú£»
2) 'Apache'¼àÌýµÄ¶Ë¿Ú(ÔÚ'localhost'½Ó¿ÚÖÐ)£»
3) webÎĵµrootĿ¼(documentroot)£»
4) ¶¯Ì¬ÄÚÈݵÄÇëÇóËù°üº¬µÄ×Ö·û´®(¿ÉÑ¡µÄ)[ ĬÈϰüÀ¨"cgi-bin"]¡£
ÔÚÕâÀïÖ¸¶¨µÄdocumentrootÒ»¶¨Òª±£Ö¤ºÍÔËÐÐÔÚÓû§¿Õ¼äµÄweb·þÎñÆ÷µÄdocumentrootÏàÒ»Ö£¬ÒòΪkHTTPd¿ÉÄܻὫÈκÎÇëÇóÖØ¶¨Ïò¸øÓû§¿Õ¼äµÄweb·þÎñÆ÷À´´¦Àí¡£
Ò»¸öµäÐ͵Ľű¾(µÚÒ»ÖÖ²Ù×÷ģʽ)£º
|
¶ÔÓÚµÚ¶þÖÖ²Ù×÷ģʽ£¬ÆäµäÐ͵Ľű¾ÈçÏ£º
|
ÔÚÕâÖÖÇé¿öÏ£¬ÄãÊ×ÏÈÐèÒªÐÞ¸ÄApacheµÄÅäÖãº
¡¡
|
ÐÞ¸ÄΪ
|
3¡¢Í£Ö¹kHTTPd
ΪÁËÐÞ¸ÄÅäÖã¬Ê×ÏÈÐèҪֹͣkHTTPd£º
|
¡¡¡¡
Èç¹ûÏ£ÍûÐ¶ÔØÄ£¿é£¬Í£Ö¹kHTTPdÒÔºó£¬ÔËÐУº
|
¡¡¡¡
Èç¹ûÄã¸Ð¾õ¶ÔÄãÀ´ËµÕâ¸ö¹ý³ÌÌ«ÂýÁË(ÉÏÃæµÄÃüÁîÐèÒªµÈ´ýÔ¶³ÌÁ¬½ÓÊ×ÏȹرÕ)£¬¿ÉÒÔÔÚÍ£Ö¹ÆäÍ£Ö¹ÒÔºóÏò·þÎñÆ÷·¢ËÍHUPÐźţ¬Õ⽫µ¼Ö·þÎñÆ÷Ïß³ÌÁ¢¼´Í£Ö¹¡£
×¢£ºÈç¹ûÕâЩ½ø³ÌûÓб»Í£Ö¹£¬ËüÃÇ»áÂíÉÏÖØÐÂÆô¶¯¡£
ËÄ¡¢ ÏÞÖÆ
kHTTPdµÄ°²È«Ä£Ê½·Ç³£Ñϸñ£¬ÕâÊÇÒòΪÓÐÓû§¿Õ¼äµÄweb·þÎñÆ÷¿ÉÒÔ´¦Àí¸´ÔÓµÄÇé¿ö,kHTTPdÖ»ÓÐÔÚÂú×ãÏÂÃæµÄÌõ¼þ²Å»á´¦ÀíÇëÇó£º
1) URLÖÐûÓÐ'?'£»
2) URLÒÔ'/'¿ªÊ¼£»
3) URLÖ¸¶¨µÄÎļþ´æÔÚ£»
4) ¸ÃÎļþµÄȨÏÞÊÇËùÓÐÓû§¿É¶ÁµÄ(*)£»
5) Îļþ²»ÊÇÒ»¸öĿ¼£¬²»ÊÇ¿ÉÖ´ÐÐÎļþ£¬Ã»ÓÐstickyλÖÃλ(*)£»
6) URL²»°üº¬ÈκηǷ¨×Ó´®£¬È磺'..'¡¢'cgi-bin'µÈ(*)£»
7) ÎļþµÄmimeÀàÐÍÊÇ¿ÉÖªµÄ(*)¡£
ÕâÀïºóÃæ±ê×¢*µÄÌõ¼þÊÇ¿ÉÒÔͨ¹ý/proc/sys/net/khttpdÀ´ÅäÖõIJ»Âú×ãÉÏÃæÈκÎÌõ¼þµÄÇëÇ󽫱»×ª½»¸øÓû§¿Õ¼äµÄweb·þÎñÆ÷À´´¦Àí¡£
Îå¡¢²ÎÊý
ÏÂÃæµÄ²ÎÊý¿ÉÒÔͨ¹ý/proc/sys/net/khttpd±»ÅäÖãº
|
threads 2 ·þÎñÆ÷Ï̵߳ÄÊýÁ¿£¬¶ÔÓÚСÐÍwebÀ´ËµÓ¦¸ÃÊÇÿ¸öCPU¶ÔÓ¦Ò»¸ö£¬¶ÔÓÚ´óÐÍÍøÕ¾À´Ëµ(»î¶¯Îļþ²»ÊDZ£´æÔÚRAMÖÐ)£¬ÆäÖµÓ¦¸ÃÊÇÿ¸öCPU¶ÔÓ¦2documentroot /var/www webÄÚÈÝËùÔÚĿ¼¡£
start 0 ÉèÖÃΪ1À´Æô¶¯kHTTPd (¸Ãλ¿ÉÄܱ»'stop'×Ô¶¯ÉèÖÃΪ0)£»
stop 0 ÉèÖÃΪ1À´Í£Ö¹kHTTPd (¸Ãλ¿ÉÄܱ»'start'×Ô¶¯ÉèÖÃΪ0)£»
unload 0 ÉèÖÃΪ1À´×¼±¸Ð¶ÔØkHTTPdÄ£¿é£»
sloppymime 0 Èç¹ûΪ1£¬ÄÇôΪֹµÄmimeÀàÐÍ×Ô¶¯ÉèÖÃΪtext/html£¬Èç¹ûΪ0Ôòδ֪mimiÀàÐ͵ÄÎļþ½«ÓÉÓû§¿Õ¼äµÄweb·þÎñÆ÷À´´¦Àí£»
perm_required S_IROTH ÐèÒªµÄ×îСÏÞÖÆ(ÆäÖµ²Î¿¼'man 2 stat')£»
perm_forbid dir+sticky+ Îļþ½ûÖ¹µÄÏÞÖÆÑÚÂë(ÆäÖµ²Î¿¼'man 2 stat')£»
dynamic cgi-bin .. ¶¯Ì¬ÄÚÈÝÇëÇóURL°üº¬µÄ×Ó´®£»
maxconnect 1000 µ±Ç°×î´óÁ¬½ÓÊý¡£
Áù¡¢¸ü¶àÐÅÏ¢
¹ØÓÚkHTTPdÌåϵ½á¹¹µÄ¸ü¶àÐÅÏ¢£¬²Î¿¼http://www.fenrus.demon.nl¡£
| ×ÔÓÉ¹ã¸æÇø |
| ¡¡ |