×÷ΪȫÇò×îÊܽӴýµÄ¿ªÔ´WebЧÀÍÆ÷Ö®Ò»£¬nginx£¨¡°enginex¡±£©×Ô½µÉúÒÔÀ´±ãÒÔ¸ßÐÔÄܺ͸ßЧÂÊÖø³Æ¡£Ëü²»µ«ÊÇÒ»¿î¾²Ì¬ÄÚÈݵĸßЧЧÀÍÆ÷£¬¸ü¼æ¾ß·´ÏòÊðÀí¡¢¸ºÔØÆ½ºâ¡¢HTTP»º´æ¡¢ÓʼþÊðÀíµÈ¶àÖÖ¹¦Ð§¡£ÒªÕæÕýʩչnginxµÄÍþÁ¦£¬ÏêϸÔĶÁ¹Ù·½ÎĵµÎÞÒÉÊÇ×îºÃµÄ½Ý¾¶¡£
Ϊʲô˵¡°Îĵµ¡±Ö÷Òª£¿ÕâÊÇÓÉÓÚnginxµÄÉèÖÃÎÞа£¬¹¦Ð§¸»ºñ£¬Ã¿Ò»Öָ߼¶Ó¦Óñ³ºó¶¼Òþ²Ø×ÅÉîÖ¿µÄÉèÖü¼ÇɺÍ×î¼Ñʵ¼ù¡£¶ø¹Ù·½ÎĵµÕýÊÇÕâЩ֪ʶµÄ±¦¿â£¬Äý¾ÛÁË¿ª·¢ÕßµÄÖǻۺÍÂÄÀú¡£´ÓÈëÃŵ½Éî¶ÈÓÅ»¯£¬´Ó×î»ù±¾µÄÉèÖõ½ÖØ´óµÄÄ£¿é¿ª·¢£¬nginxµÄ¹Ù·½ÎĵµÖð¼¶ÒýÁìÓû§Öð²½ÕÆÎÕ½¹µãÔÀí¡£
nginxµÄ¹Ù·½Îĵµ½á¹¹ÇåÎú£¬º¸ÇÁËÒÔϼ¸¸öÖ÷Òª²¿·Ö£º
×°ÖÃÖ¸ÄÏ£º²î±ðƽ̨µÄ×°Ö÷½·¨ºÍ×¢ÖØÊÂÏ×ÊÖúÐÂÊÖ¿ìËÙ¼ÜÉèÇéÐΡ£ÉèÖÃÖ¸ÄÏ£ºÏêϸÏÈÈÝnginxÉèÖÃÎļþµÄÓï·¨¡¢Ö¸ÁʾÀý¡£Ä£¿éÏÈÈÝ£ºÄÚ½¨Ä£¿éºÍµÚÈý·½Ä£¿éµÄ¹¦Ð§ËµÃ÷£¬×ÊÖúÓû§Æ¾Ö¤ÐèÇóÑ¡Ôñ×îºÏÊʵÄÉèÖá£ÐÔÄܵ÷ÓÅ£ºÌṩ½¨æÅºÍ×î¼Ñʵ¼ù£¬È·±£Ôڸ߲¢·¢ÇéÐÎÏÂÒÀ¾ÉÎȹ̡£
ÉèÖÃÎļþ£¨nginx.conf£©ÊÇnginxµÄÁé»ê¡£Ëü½ÓÄÉ¿é½á¹¹£º
È«¾Ö¿é£¨main£©£º½ç˵Õû¸öЧÀÍÆ÷µÄ»ù±¾²ÎÊý£¬ºÃ±ÈÓû§¡¢ÊÂÇéÀú³ÌÊý¡£events¿é£º´¦Öóͷ£ÅþÁ¬ÊÂÎñ£¬ÈçÅþÁ¬ÊýÏÞÖÆ¡£http¿é£º½¹µã²¿·Ö£¬½ç˵ÐéÄâÖ÷»ú¡¢·´ÏòÊðÀí¡¢»º´æÕ½ÂԵȡ£server¿é£ºÐéÄâÖ÷»úÉèÖ㬰ó¶¨ÓòÃûºÍ¶Ë¿Ú¡£location¿é£ºÏ¸Á£¶ÈµÄÇëÇó·¾¶Æ¥Å乿Ôò¡£
ÿһ¿éÿһÌõÖ¸Áî¶¼¿ÉÒÔÎÞа×éºÏ£¬Ê¹µÃnginxµÄÉèÖÃÏÕЩûÓÐÓ²ÐÔÏÞÖÆ¡£´Ó×î¼òÆÓµÄ¾²Ì¬ÍøÒ³Íйܣ¬µ½ÖØ´óµÄ΢ЧÀͼܹ¹£¬¹Ù·½Îĵµ¶¼ÌṩÁËÏêϸָÄÏ¡£
ÅþÁ¬ÊýÓë²¢·¢¿ØÖÆ£ººÏÀíÉèÖÃworkerprocessesºÍworkerconnections£¬³ä·ÖʹÓöàºËÓÅÊÆ¡£»º´æ»úÖÆ£º¿ªÆôºÍÓÅ»¯HTTP»º´æÕ½ÂÔ£¬ïÔÌÖØ¸´ÇëÇó´øÀ´µÄ¸ºÔØ¡£·´ÏòÊðÀíºÍ¸ºÔØÆ½ºâ£ºÆ¾Ö¤²î±ðµÄ³¡¾°Ñ¡ÔñÂÖѯ¡¢IP¹þÏ£»òÆäËûµ÷ÀíËã·¨¡£
ѹËõÓëÓÅ»¯£º¿ªÆôgzipѹËõ£¬¼õС´«ÊäÊý¾Ý£¬ÌáÉýËÙÂÊ¡£Çå¾²ÉèÖãºÍ¨¹ýÏÞÖÆÇëÇóƵÂÊ¡¢ÏÞÖÆIPµÈÊֶΣ¬±ÜÃâ¶ñÒâ¹¥»÷¡£
ËùÓÐÕâЩսÂÔµÄÏêϸ²ÎÊýºÍÓ¦ÓÃʵÀý¶¼¿ÉÔÚ¹Ù·½ÎĵµÖÐÕÒµ½¡£ÍøÕ¾ÖÎÀíÔ±ºÍ¿ª·¢Õßͨ¹ýѧϰºÍµ÷½âÉèÖÃÎļþ£¬Äܹ»ÏÔÖøÌáÉýÍøÕ¾µÄÍÌÍÂÁ¿ºÍÎȹÌÐÔ¡£
ÕÆÎÕnginxµÄ½¹µãÔÀíºÍÉèÖü¼ÇÉ£¬ÊÇÈκÎÏ£Íû´òÔì¸ßÐÔÄÜÍøÕ¾µÄÊÖÒÕÖ°Ô±µÄ±ØÐ޿Ρ£¹Ù·½Îĵµ²»µ«ÊÇѧϰµÄÆðµã£¬¸üÊÇÒ»Á¬ÓÅ»¯µÄÖ¸ÄÏ¡£´Ó»ù´¡ÉèÖõ½¸ß¼¶µ÷ÓÅ£¬´ÓÇå¾²·À»¤µ½Ä£¿é¿ª·¢£¬ÎĵµÖж¼Ô̲Ø×Ÿ»ºñµÄ֪ʶ±¦²Ø¡£Ö»Òª×¨ÐÄ×êÑУ¬ÅäºÏʵ¼ù£¬±ãÄܳä·ÖÍÚ¾ònginxµÄDZÁ¦£¬ÈÃ×Ô¼ºµÄÍøÕ¾ÔÚÇ¿ÁҵĻ¥ÁªÍø¾ºÕùÖÐÎȾӲ»°ÜÖ®µØ¡£
´ÓÈëÃŵ½ÐÑÄ¿£ºÊ¹ÓÃnginxÎĵµÊµÏÖÍøÕ¾ÐÔÄÜ×î´ó»¯
ÔÚÃ÷È·ÁËnginxÎĵµµÄÖ÷ÒªÐԺ󣬽ÓÏÂÀ´¾ÍÊÇÔõÑùϵͳѧϰ²¢Ó¦ÓÃÕâЩ֪ʶ£¬´òÔì³ö¼È¿ìËÙÓÖÇå¾²µÄ¸ßÐÔÄÜÍøÕ¾¡£ÏÖʵÉÏ£¬´ó×ÚµÄÀֳɰ¸Àý¶¼Ö¤Êµ£ºÉîÈëÃ÷È·¹Ù·½Îĵµ¡¢Á¬ÏµÏÖʵ²Ù×÷£¬Ô¶±ÈäĿÉèÖøüÓÐÓᣱ¾ÎĽ«´Óʵ¼ù½Ç¶È³ö·¢£¬°ïÄãÖð²½ÕÆÎÕnginxµÄ¾«Ëè¡£
ÈëÃÅÆª£º´Ó¡°×°ÖÃÖ¸ÄÏ¡±ºÍ¡°»ù±¾ÉèÖá±×îÏÈ£¬Ã÷È·nginxµÄ»ù±¾¼Ü¹¹ºÍ½¹µãÖ¸Áî¡£½ø½×ƪ£ºÑ§Ï°¡°ÐéÄâÖ÷»úÉèÖᱡ¢¡°·´ÏòÊðÀí¡±ºÍ¡°¸ºÔØÆ½ºâ¡±£¬ÕÆÎÕ¶àÕ¾µãÍйܺÍÁ÷Á¿µ÷Àí¡£¸ß¼¶Æª£ºÑо¿¡°ÐÔÄÜÓÅ»¯¡±¡¢¡°»º´æÕ½ÂÔ¡±ÒÔ¼°¡°Çå¾²ÉèÖá±£¬½«ÍøÕ¾ÍÆÏò¸ßЧÇå¾²µÄ²ãÃæ¡£
Ä£¿é¿ª·¢£ºÈôÊǾ߱¸±à³Ì»ù´¡£¬ÉîÈëѧϰ¡°µÚÈý·½Ä£¿é¡±¡°×Ô½ç˵ģ¿é¡±¿ª·¢£¬Öª×ã¸öÐÔ»¯ÐèÇó¡£
¹Ù·½ÎĵµµÄÄÚÈݸ»ºñ£¬ÔÊÐíÄãÆ¾Ö¤ÏÖʵÐèÇóÖØ¸´ÑÐϰ£¬Öð²½ÉîÈë¡£nignxÉçÇøºÍÔÚÏ߽̳ÌÒ²ÊÇÃû¹óµÄѧϰ×ÊÔ´£¬ËüÃÇ»áÑa³ä¸üÏÖʵµÄ³¡¾°Ó¦Óü¼ÇÉ¡£
ÆðÔ´ÓÅ»¯£ºÏÞÖÆworkerprocesses¡¢workerconnections£¬È·±£Ó²¼þ×ÊÔ´»ñµÃ³ä·ÖʹÓá£ÐÔÄÜÔöÇ¿£º¿ªÆôgzipѹËõ¡¢ÉèÖûº´æ¡¢ÆôÓÃHTTP/2ÐÒ飬ÌáÉý´«ÊäЧÂÊ¡£¸ºÔØÆ½ºâ£ºÉèÖÃupstreamÄ£¿é£¬ÊµÏÖ¶ą̀ЧÀÍÆ÷¼äµÄºÏÀíµ÷Àí¡£
Ç徲ǿ»¯£ºÆôÓÃÇëÇóÏÞÖÆ¡¢Ê¹ÓÃSSL/TLS¡¢ÉèÖÃWAF¹æÔò¡£
ÿһ¸öÓÅ»¯µã¶¼Ó¦»ùÓÚÊý¾ÝºÍ¹Ù·½ÍƼöËã·¨£¬×èֹäĿ¸ú·ç£¬ÌáÉýÕûϵһÇеÄÎȹÌÐԺͿ¹Ñ¹ÄÜÁ¦¡£
¼ÙÉèÄãÔËÓªÒ»¸öµçÉÌÍøÕ¾£¬ÃæÁٸ߲¢·¢ºÍÇå¾²Îó²îÀ§ÈÅ¡£Äã¿ÉÒÔ´Ó¹Ù·½ÎĵµÖÐÕÒµ½£º
ÔõÑùÉèÖ÷´ÏòÊðÀí£¬ïÔ̺ó¶ËѹÁ¦¡£Ê¹Óûº´æÕ½ÂÔ£¬»º´æÈÈÃÅÉÌÆ·Ò³Ã棬Ëõ¶ÌÏìӦʱ¼ä¡£Ê¹ÓÃÏÞÖÆÇëÇóƵÂÊ£¬±ÜÃâÅÀ³æ»òÕß¶ñÒâ¹¥»÷¡£ÆôÓÃSSL£¬°ü¹ÜÓû§Êý¾ÝÇå¾²¡£¼à¿ØºÍµ÷ÓŲÎÊý£¬È·±£ÔÚ´ó´Ùʱ´úЧÀÍÎȹ̡£
ͨ¹ýÑÐò½¥½øµØ¶Á¶®¹Ù·½Îĵµ£¬²¢Á¬ÏµÕâЩ¡°ÊµÕ½ºìÉ«Ïß·¡±£¬ÄãµÄÕ¾µãÄÜÔÚ¶Ìʱ¼äÄÚ»ñµÃÏÔÖøÌáÉý¡£ÕâÕýÊÇnginx¹Ù·½ÎĵµµÄ×î´ó÷ÈÁ¦£ºÖ¸µ¼ÐÔÇ¿¡¢Êµ¼ùÐԸߡ£
ÕÆÎÕnginx£¬²»ÊÇÒ»õí¶ø¾Í£¬¶øÐèÒªÒ»Á¬µÄѧϰºÍʵ¼ù¡£³ýÁ˹ٷ½ÎĵµÍ⣬°´ÆÚ¹Ø×¢ÉçÇø¡¢ÊÖÒÕ²©¿ÍÒÔ¼°×îа汾Ðû²¼ÈÕÖ¾£¬ÓÐÖúÓÚÕÆÎÕÐÂÊÖÒÕ¶¯Ì¬¡£ÍƼöµÄѧϰҪÁ죺
ʵ¼ùÖÐÒ»Ö±ÓÅ»¯£¬Óöµ½ÎÊÌâ¾Í²éÔĹٷ½ÎĵµÑ°ÕÒ½â¾ö¼Æ»®¡£¼ÓÈëÏßÉÏÏßÏÂÊÖÒÕ½»Á÷£¬·ÖÏíÂÄÀú¡£¹Ø×¢nginxµÄÐÔÄܲâÊÔºÍѹÁ¦²âÊÔ¹¤¾ß£¬ÑéÖ¤×Ô¼ºµÄÉèÖá£Æð¾¢¼ÓÈëÄ£¿é¿ª·¢»òÕßТ˳´úÂ룬ÉîÈëÃ÷È·nginx¼Ü¹¹¡£
Ö»ÒªÏñ̽Ë÷ÃÜÂëÒ»Ñù̽Ë÷¹«Ê½ºÍÉèÖ㬽«nginx¹Ù·½Îĵµµ±×ö¡°ÃØóÅ¡±£¬Äã»áÖð²½Äð³É¡°ÍøÕ¾ÐÔÄܵÄħÊõʦ¡±¡£ÊÂʵ£¬ÔÚÕâ¸ö»¥ÁªÍø¸ßËÙÉú³¤µÄʱ´ú£¬ÐÑÄ¿nginxÒѳÉΪ¹¹½¨¸ßЧ¡¢Îȹ̡¢Çå¾²ÍøÕ¾µÄ½¹µã¾ºÕùÁ¦¡£
×îºó£º×¨ÐÄÔĶÁ£¬ÓÃʵ¼ùÑéÖ¤£¬·¿ªnginxµÄÎÞÏÞ¿ÉÄÜ
nginxµÄ¹Ù·½Îĵµ£¬ÊÇÒ»±¾ºñÖØµÄ¡°ÃØóÅ¡±£¬³ÐÔØ×ÅÎÞÊý¿ª·¢ÕßµÄÖǻۡ£Ã¿Ò»ÌõÉèÖá¢Ã¿Ò»¸öµ÷Óż¼ÇÉ£¬¶¼ÄܳÉΪÄãÍøÕ¾Éî¶ÈÓÅ»¯µÄÀûÆ÷¡£¼á³Öѧϰ¡¢Ò»Ö±Êµ¼ù£¬Î´À´Ä㶨ÄÜÕ¾ÔÚÁ÷Á¿ºÍÇå¾²µÄ×îÇ°ÑØ£¬¼ÝÔ¦nginx£¬Ã÷È·»¥ÁªÍøµÄ¾«²ÊÎÞÏÞ¡£