NginxÔõÑùʵÏÖHTTPÊðÀíÉèÖÃ
NginxÊÇÒ»ÖÖ¸ßÐÔÄܵĿªÔ´WebЧÀÍÆ÷£¬Í¬Ê±Ò²¿ÉÒÔ×÷Ϊ·´ÏòÊðÀíЧÀÍÆ÷ºÍ¸ºÔØƽºâÆ÷¡£ËüµÄÎÞаÐÔºÍÇ¿Ê¢µÄ¹¦Ð§Ê¹µÃËü³ÉΪÁËÐí¶àÍøÕ¾ºÍÓ¦ÓóÌÐòµÄÊ×Ñ¡£¬Ò²Òò´Ë£¬¹ØÓÚÐí¶àЧÀÍÆ÷ÖÎÀíÔ±À´Ëµ£¬NginxµÄHTTPÊðÀíÉèÖÃÊÇÒ»¸öÖ÷ÒªµÄ֪ʶµã¡£
ÔÚNginxÖУ¬ÊµÏÖHTTPÊðÀíÉèÖÃÒ»Ñùƽ³£ÐèҪͨ¹ýÐÞ¸ÄNginxµÄÉèÖÃÎļþÀ´Íê³É¡£ÏÂÃæÎÒÃǾÍÀ´ÏêϸÏàʶһÏÂNginxÔõÑùʵÏÖHTTPÊðÀíÉèÖ㬲¢¸½ÉÏһЩ´úÂëʾÀý¡£
°ì·¨Ò»£º×°ÖÃNginx
Ê×ÏÈ£¬È·±£ÄãÒѾװÖÃÁËNginx¡£ÈôÊÇûÓÐ×°Ö㬿ÉÒÔͨ¹ý°ü¹ÜÀíÆ÷¾ÙÐÐ×°Öãº
# Ubuntu sudo apt-get install nginx # CentOS sudo yum install nginx
µÇ¼ºó¸´ÖÆ
°ì·¨¶þ£ºÌí¼ÓHTTPÊðÀíÉèÖÃ
·¿ªNginxµÄÉèÖÃÎļþ£¬Ò»Ñùƽ³£Î»ÓÚ/etc/nginx/nginx.conf»ò/etc/nginx/conf.d/default.conf£¬È»ºóÌí¼ÓÒÔÏÂÉèÖãº
server { listen 80; server_name your_domain.com; location / { proxy_pass http://your_backend_server; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
µÇ¼ºó¸´ÖÆ
ÔÚÕâ¸öÉèÖÃÖУ¬ÎÒÃÇʹÓÃlocationÖ¸Áî½ç˵ÁËHTTPÊðÀíµÄλÖã¬proxy_passÖ¸ÁîÖ¸¶¨ÁËÐèÒªÊðÀíµ½µÄºó¶ËЧÀÍÆ÷µØµã£¬proxy_set_headerÖ¸ÁîÉèÖÃÁËһЩHTTPÍ·ÐÅÏ¢£¬ÈçHost¡¢X-Real-IPºÍX-Forwarded-For¡£
°ì·¨Èý£ºÖØмÓÔØNginxÉèÖÃ
µ±Ìí¼Ó»òÐÞ¸ÄÁËHTTPÊðÀíÉèÖúó£¬ÐèÒªÖØмÓÔØNginxµÄÉèÖÃÎļþÒÔʹÉèÖÃÉúЧ£º
sudo nginx -s reload
µÇ¼ºó¸´ÖÆ
°ì·¨ËÄ£º²âÊÔHTTPÊðÀí
×îºó£¬Í¨¹ýä¯ÀÀÆ÷»òÕßcurlÏÂÁî²âÊÔHTTPÊðÀíÊÇ·ñÉúЧ£º
curl -i http://your_domain.com
µÇ¼ºó¸´ÖÆ
ÒÔÉÏÊÇÒ»¸ö¼òÆÓµÄNginx HTTPÊðÀíÉèÖÃʾÀý£¬ÐèҪƾ֤ÏÖÕæÏàÐÎÐÞ¸Ä server_name ºÍ proxy_pass ²¿·Ö¡£ËäÈ»£¬ÔÚÏÖʵӦÓÃÖУ¬¿ÉÄÜ»¹ÐèҪ˼Á¿¸ºÔØƽºâ¡¢»º´æ¡¢ÈÕÖ¾¼Í¼µÈ¸ü¶àµÄÉèÖÃϸ½Ú¡£×ܵÄÀ´Ëµ£¬NginxÌṩÁ˺ÜÊÇÎÞаºÍÇ¿Ê¢µÄHTTPÊðÀí¹¦Ð§£¬Äܹ»Öª×ã´ó´ó¶¼³¡¾°µÄÐèÇó¡£
ÒÔÉϾÍÊÇNginxÔõÑùʵÏÖHTTPÊðÀíÉèÖõÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡