bevictorΰµÂ

Nginx100%ÊÓÆµÓÅ»¯£º¿ªÊͼ«ÖÂÁ÷³©ÂÄÀúµÄ°ÂÃØ±øÆ÷
ÆðÔ´£ºÖ¤È¯Ê±±¨Íø×÷Õߣº»ÆÖÇÏÍ2026-02-17 04:25:29
wwwzqhsauikdwjbfkjabfwqr

Ò»¡¢Îձ𿨶٣ºNginxÈôºÎ³ÉΪÊÓÆµÓÅ»¯µÄ¡°¿ìÂʵ£ÈΡ±

ÔÚµ±½ñÐÅÏ¢±¬Õ¨µÄʱÆÚ£¬ÊÓÆµÒѾ­³ÉΪ×îÊÜÓ­½ÓµÄÄÚÈÝÏû·Ñ´ó¾ÖÖ®Ò» ¡£ÎÞÂÛÊǽܳöµÄÈüÊÂÖ±²¥¡¢ÒýÈËÈëʤµÄÓ°ÊӾ缯£¬»¹ÊÇ»îÆÃÓÐȤµÄ½²ÊÚ¶ÌÆ¬£¬Á÷³©µÄÅÔ¹ÛÂÄÀúÊÇÓû§×î¸ù»ùÒ²ÊÇ×î³ÁÒªµÄÐèÒª ¡£·þÎñÆ÷´ø¿í²»¼°¡¢ÍøÂçÑÓ³¤¡¢²¢·¢Óû§¹ý¶àµÈÎÊÌ⣬ʱʱÈÃÓû§ÔÚÅÔ¹ÛÊÓÆµÊ±¹ÄÊÜ¿¨¶Ù¡¢¼ÓÔØ»ºÂýÖ®¿à ¡£

ÐÒÔ˵ÄÊÇ£¬Nginx£¬Õâ¸öÒԸ߻úÄÜ¡¢¸ß²¢·¢Öø³ÆµÄWeb·þÎñÆ÷£¬Æ¾½èÆä׳´óµÄÖ°ÄܺͽýݵÄÅäÖ㬿ÉÄܳÉΪ½â¾öÊÓÆµÓÅ»¯ÄÑÌâµÄ¡°¿ìÂʵ£ÈÎ?¡± ¡£

NginxÖ®ËùÒÔÄÜÔÚÊÓÆµÓÅ»¯ÁìÓò´ó·ÅÒì²Ê£¬Àë²»¿ªÆä¾«ÃîµÄ¼Ü¹¹Éè¼ÆºÍһϵÁиßЧµÄÄ£¿é ¡£NginxѡȡÊÂÎñÇý¶¯¡¢Òì²½·Ç×èÈûµÄ¹¤×÷ģʽ£¬ÕâÒâζ×ÅËüÄܹ»Í¬Ê±´¦ÖóÉǧÉÏÍò¸ö²¢?·¢ÏνÓ£¬¶ø²»?»áÏñ´«Í³µÄApache·þÎñÆ÷ÄÇÑùΪÿ¸öÏνӴ´½¨Ò»¸ö¶ÀÁ¢µÄ¹ý³Ì»òÏß³Ì?£¬´Ó¶ø¼«´óµØ½µµÍÁË·þÎñÆ÷µÄ×ÊÔ´¿÷Ëð£¬ÌáÉýÁË´¦ÖÃÄÜÁ¦ ¡£

¶ÔÓÚÊÓÆµÕâÖÖ±ØÒª³ÖÐø¡¢´óÁ¿Êý¾Ý´«ÊäµÄÀûÓó¡¾°¶øÑÔ£¬ÕâÖÖ¸ßЧµÄ²¢·¢´¦ÖÃÄÜÁ¦ÊÇÖÁ¹Ø³ÁÒªµÄ ¡£

Nginx׳´óµÄ»º´æ»úÔìÊÇʵÏÖÊÓÆµÓÅ»¯µÄ¹Ø¼üÖ®Ò» ¡£Í¨¹ýÅäÖÃNginxµÄproxy_cache»òfastcgi_cacheµÈÄ£¿é£¬ÎÒÃÇÄܹ»½«Óû§ÒªÇó¹ýµÄÊÓÆµÎļþ»º´æÔÚ·þÎñÆ÷±¾µØ»òCDN±ßÔµ½Úµã ¡£µ±?ÆäËûÓû§ÔÙ´ÎÒªÇóͳһÊÓÆµÊ±£¬NginxÄܹ»Ö±½Ó´Ó»º´æÖжÁÈ¡Êý¾Ý²¢·µ»Ø£¬ÎÞÐèÔÙ´ÎÏòÔ´·þÎñÆ÷ÌáÒéÒªÇ󣬴ó?´óËõ¶ÌÁËÏìÓ¦¹¦·ò£¬¼õÇáÁËÔ´·þÎñÆ÷µÄѹÁ¦ ¡£

¸ü³ÁÒªµÄÊÇ£¬NginxµÄ?»º´æÄܹ»ÅäÖÃΪÖÇÄÜ»º´æ£¬ÀýÈçÆ¾¾ÝÒªÇóÍ·ÐÅÏ¢£¨ÈçIf-Modified-Since£©À´ÅжÏ×ÊÔ´ÊÇ·ñÒѸüУ¬±Ü?Ã⻺´æ¹ýÆÚʧЧ£¬Í¬Ê±Ò²ÄÜÓÐЧÀûÓûº´æ?¿Õ¼ä ¡£¶ÔÓÚÊÓÆµÕâÖÖÌåÁ¿´ó¡¢¸üÐÂÆµÂÊÏà¶Ô½ÏµÍµÄÄÚÈÝ£¬»º´æµÄ×÷ÓÃÓÈΪÏÔÖø ¡£

ÔÙÕߣ¬Nginx¶ÔHTTP/2ºÍHTTP/3ºÍ̸µÄÓÅÁ¼Ö§³Ö£¬ÎªÊÓÆµ´«Êä´øÀ´Á˸ïÃüÐÔµÄÌáÉý ¡£HTTP/2ÒýÈëÁ˶à·¸´Óã¨Multiplexing£©¼¼Êõ£¬ÔÊÐí¿Í»§¶Ëͨ¹ýµ¥¸öTCPÏνӲ¢Ðз¢ËͶà¸öÒªÇ󣬲¢ÔÚ·þÎñÆ÷¶Ë²¢Ðд¦Ö㬶øºóÔÚͳһ¸öÏνÓÉÏÒÔÂÒÐòµÄ·½Ê½·µ»ØÏìÓ¦ ¡£

ÕâÒâζ׿´±ãÔÚ´«ÊäÊÓÆµµÄ¸÷¸ö·Ôì¬Ê±£¬ÆäËû×ÊÔ´£¨ÈçͼƬ¡¢CSS¡¢JavaScript£©Ò²Äܹ»Í¬Ê±±»¼ÓÔØ£¬¼«´óµØÏ÷¼õÁËÏνӳÉÁ¢µÄ¿ªÏúºÍ¶ÓÍ·×èÈû£¨Head-of-LineBlocking£©ÎÊÌ⣬ÏÔÖøÌáÉýÁËÒ³Ãæ¼ÓÔØ¿ìÂʺÍÊÓÆµ²¥·ÅµÄÕØÊ¼¿ìÂÊ ¡£¶ø¼´½«±é¼°µÄHTTP/3£¬¸üÊÇ»ùÓÚQUICºÍ̸£¬½øÒ»²½½â¾öÁËTCPÔÚÍøÂç²»ÎȰ´Ê±µÄÓµÈû½ÚÔìÎÊÌ⣬´øÀ´Á˸üµÍµÄÑÓ³¤ºÍ¸ü¸ßµÄÍÌÍÂÁ¿ ¡£

Nginx׳´óµÄGzipºÍBrotliѹËõÖ°ÄÜ£¬Ò²ÄÜÔÚÊÓÆµ´«Êä¹ý³ÌÖвûÑï³ÁÒª×÷Óà ¡£¹ÌÈ»ÊÓÆµÎļþ×ÔÉíͨ³£ÒѾ­ÊǸ߶ÈѹËõµÄÌåʽ£¨ÈçH.264,H.265,VP9µÈ£©£¬µ«ÊÓÆµ²¥·ÅÆ÷ÔÚÒªÇóÊÓÆµµÄÔªÊý¾ÝÎļþ£¨Èç.m3u8²¥·ÅÁÐ±í¡¢.mpdÇåµ¥Îļþ£©Ê±£¬ÕâЩÎı¾ÎļþÄܹ»Í¨¹ýGzip»òBrotli½øÐÐѹËõ£¬Ï÷¼õ´«ÊäÁ÷Á¿£¬¼Ó¿ì½âÎö¿ìÂÊ ¡£

¸ü³ÁÒªµÄÊÇ£¬¶ÔÓÚһЩ·ÇÊÓÆµÄÚÈݵĸ¨Öú×ÊÔ´£¬Èç×ÖÄ»Îļþ¡¢JavaScriptÎļþµÈ£¬GzipºÍBrotliµÄѹËõ³ÉЧ½«¸üΪÏÔÖø£¬Ö±½ÓÌáÉýÁËÕûÌåµÄ¼ÓÔØÐ§ÄÜ ¡£

Nginx»¹ÌṩÁËÁ÷Á¿½ÚÔ죨RateLimiting£©Ö°ÄÜ£¬ÕâÔÚÊÓÆµ·Ö·¢³¡?¾°ÏÂÓÈΪ³ÁÒª ¡£Í¨¹ýÅäÖÃlimit_req_zoneºÍlimit_reqÖ¸ÁÎÒÃÇÄܹ»Ï޶ȵ¥Ôª¹¦·òÄÚÀ´×ÔͳһIPµØÖ·µÄÒªÇóÊýÁ¿£¬ÓÐЧԤ·ÀÒò¶ñÒâÅÀ³æ»òÍ»·¢Á÷Á¿¹¥»÷µ¼Ö·þÎñÆ÷¹ýÔØ£¬´Ó¶ø±£ÕÏÕý³£Óû§¿ÉÄÜ»ñµÃ²»±äÁ÷³©µÄÅÔ¹ÛÂÄÀú ¡£

¾«ÃܵÄÁ÷Á¿½ÚÔìÒ²Äܹ»Öú?ÖúÔËÓªÉ̸üºÃµØÖÎÀí´ø¿í×ÊÔ´£¬Ô¤·ÀijЩÓû§¹ý¶È¿÷Ëð´ø¿í¶øÓ°ÏìÆäËûÓû§µÄ·þÎñÖÊÁ¿ ¡£

NginxÔÚHTTPS¼ÓÃÜ·½ÃæµÄÖ§³Ö?Ò²ÊÇÊÓÆµÓÅ»¯µÄÒ»¸ö³ÁÒª×é³É?²¿ÃÅ ¡£¹ÌÈ»¼ÓÃÜ»á´øÀ´¿Ï¶¨µÄ»úÄÜ¿ªÏú£¬µ«¶ÔÓÚ± £»¤Óû§ÒþÖÔºÍÊý¾Ý°²È«ÖÁ¹Ø³ÁÒª ¡£Nginx¿ÉÄܸßЧµØ´¦?ÀíTLS/SSLÎÕÊÖ£¬²¢Í¨¹ýÖîÈçOCSPStapling¡¢SessionResumptionµÈ¼¼ÊõÀ´ÓÅ»¯HTTPSµÄ»úÄÜ£¬×î´óÏ޶ȵØÏ÷¼õ¼ÓÃÜ´øÀ´µÄÑÓ³¤£¬È·±£ÊÓÆµ´«ÊäµÄ°²È«Óë¸ßЧ ¡£

×ܶøÑÔÖ®£¬Nginxͨ¹ýÆäÊÂÎñÇý¶¯¼Ü¹¹¡¢×³´óµÄ»º´æ?»úÔì¡¢¶Ô×îÐÂHTTPºÍ̸µÄÖ§³Ö¡¢¸ßЧµÄ?ѹËõËã·¨¡¢¾«ÃܵÄÁ÷Á¿½ÚÔìÒÔ¼°ÓÅ»¯µÄHTTPSʵÏÖ£¬¿ÉÄÜÈ«ÃæÌáÉýÊÓÆµÄÚÈݵĴ«?ÊäЧÄܺÍÓû§ÂÄÀú£¬ÊÇʵÏÖ¡°Nginx100%ÊÓÆµÓÅ»¯¡±²»³É»òȱµÄÀûÆ÷ ¡£

½ÓÏÂÀ´µÄ?part2£¬ÎÒÃǽ«Éî¿Ì̽Çó¾ßÌåµÄÅäÖòß?ÂÔºÍʵ¼Ê¼¼ÇÉ£¬ÖúÄúÇáËɹ¹½¨¼«ÖÂÁ÷³©µÄÊÓÆµ·þÎñ ¡£

¶þ¡¢ÊµÕ½ÑÝÁ·£ºNginx100%ÊÓÆµÓÅ»¯ÅäÖÃÃØ¼®

ÔÚÀí½âÁËNginxÔÚÊÓÆµÓÅ»¯·½ÃæµÄÖ÷ÌâÓÅÊÆºó£¬½ÓÏÂÀ´ÎÒÃǽ«Éî¿Ì̽Çó¾ßÌåµÄÅäÖÃÕ½ÊõºÍʵ¼Ê¼¼ÇÉ£¬ÈÃÄú¿ÉÄܽ«NginxµÄDZÁ¦²ûÑïµ½¼«Ö£¬ÕæÕýʵÏÖ¡°100%ÊÓÆµÓÅ»¯¡± ¡£

1.»º´æÕ½ÊõµÄ¾«Ãܵ÷ÓÅ£ºÁôסÿһ´Î½Ü³ö˲¼ä

NginxµÄproxy_cacheÄ£¿éÊÇʵÏÖ¸ßЧ»º´æµÄ¹Ø¼ü ¡£¶ÔÓÚÊÓÆµÎļþ£¬ÎÒÃÇͨ³£±ØÒªÅäÖÃÒ»¸öרÃŵĻº´æÇøÓò£¬²¢ÉèÖúÏÀíµÄ¹ýÆÚ¹¦·ò ¡£

http{proxy_cache_path/var/cache/nginxlevels=1:2keys_zone=video_cache:100mmax_size=10ginactive=60muse_temp_path=off;server{listen80;server_nameyour_video_domain.com;location~*\.(mp4|mkv|avi|mov|flv|webm)${proxy_passhttp://your_backend_video_server;proxy_cachevideo_cache;proxy_cache_valid20030210m;#»º´æ200ºÍ302״̬ÂëµÄÏìÓ¦10·ÖÖÓproxy_cache_valid4041m;#»º´æ404״̬ÂëµÄÏìÓ¦1·ÖÖÓproxy_cache_key"$scheme$request_method$host$request_uri";add_headerX-Cache-Status$upstream_cache_status;}#...ÆäËûÅäÖÃ...}}proxy_cache_path:½ç˵ÁË»º´æÎļþµÄ´æ´¢õè¾¶¡¢²ã¼¶¡¢»º´æÇøÓòÃû³Æ£¨video_cache£©¡¢ÄÚ´æ¹²ÏíÇø´óÐ ¡£¨100m£©¡¢×î´ó»º´æ¿Õ¼ä£¨10g£©¡¢»º´æÎļþ²»?½Ó¼ûµÄ¹ýÆÚ¹¦·ò£¨60m£© ¡£

use_temp_path=offÄܹ»Ô¤·À¶î±íµÄ´ÅÅÌI/O ¡£location~*\.(mp4|mkv|avi|mov|flv|webm)$:Æ¥Åä³£¼ûµÄÊÓÆµÎļþºó׺ ¡£proxy_passhttp://your_backend_video_server;:Ö¸¶¨ºó¶ËÊÓÆµÔ´·þÎñÆ÷ ¡£

proxy_cachevideo_cache;:ÆôÓÃÃûΪvideo_cacheµÄ»º´æÇøÓò ¡£proxy_cache_valid20030210m;:ÉèÖöÔHTTP״̬ÂëΪ200ºÍ302µÄÏìÓ¦£¬»º´æ10·ÖÖÓ ¡£ÄúÄܹ»Æ¾¾ÝÊÓÆµÄÚÈݵĸüÐÂÆµÂʵ÷ÕûÕâ¸ö¹¦·ò ¡£

proxy_cache_key"$scheme$request_method$host$request_uri";:½ç˵»º´æµÄ¼ü£¬È·±£·ÖÆçµÄÒªÇó¿ÉÄÜÕýÈ·Æ¥Åäµ½»º´æ ¡£add_headerX-Cache-Status$upstream_cache_status;:Ôö³¤Ò»¸öÏìӦͷ£¬·½±ãÄú²é¿´»º´æÉäÖÐÇé¿ö£¨HIT¡¢MISS¡¢EXPIREDµÈ£© ¡£

2.HTTP/2ºÍHTTP/3µÄ¸³ÄÜ£ºÌá¿ìµÄħ·¨

È·±£ÄúµÄ?Nginx°æ?±¾Ö§³ÖHTTP/2»òHTTP/3£¬²¢ÔÚ·þÎñÆ÷ÅäÖÃÖÐÆôÓÃËüÃÇ ¡£

server{listen443sslhttp2;#ÆôÓÃSSLºÍHTTP/2server_nameyour_video_domain.com;ssl_certificate/path/to/your/certificate.crt;ssl_certificate_key/path/to/your/private.key;#...ÆäËûSSLÓйØÅäÖÃ...location/{#...ÄãµÄÆäËûlocationÅäÖÃ...}}

ÈôÊÇÄúʹÓõÄÊǽÏа汾µÄNginx£¬²¢ÇÒ·þÎñÆ÷ÒѾ­²¿ÊðÁËQUICÄ£¿é£¬Äú»¹Äܹ»ÅäÖÃHTTP/3£º

server{listen443sslhttp2quicreuseport;#ÆôÓÃSSL,HTTP/2,QUICserver_nameyour_video_domain.com;#...SSLºÍQUICÓйØÅäÖÃ...location/{#...ÄãµÄÆäËûlocationÅäÖÃ...}}

HTTP/2ºÍHTTP/3µÄÀûÓ㬳ö¸ñÊÇÆä¶à·¸´ÓøöÐÔ£¬¿ÉÄÜÏÔÖøÏ÷¼õÊÓÆµ²¥·Å¹ý³ÌÖÐÒò¶à¸ö·Ôì¬ÒªÇó¶ø²úÉúµÄ?ÑÓ³¤£¬´ó?·ùÌáÉýÊÓÆµµÄÆô¶¯¿ìÂʺÍÕûÌåµÄÁ÷³©¶È ¡£

3.GzipºÍBrotliѹËõ£ºÎª¸¨Öú×ÊÔ´ÊÝÉí

¹ÌÈ»ÊÓÆµ×ÔÉíÄÑÒÔѹËõ£¬µ«ÊÓÆµ²¥·ÅÁÐ±í£¨.m3u8,.mpd£©ºÍ×ÖÄ»ÎļþµÈ¸¨Öú×ÊÔ´£¬È´Äܹ»ÊÜÒæÓÚGzip»òBrotliѹËõ ¡£

http{gzipon;gzip_typestext/plaintext/cssapplication/jsonapplication/javascripttext/xmlapplication/xmlapplication/xml+rsstext/javascriptimage/svg+xml;gzip_comp_level6;gzip_min_length1024;#ÈôÊÇ×°ÖÃÁËBrotliÄ£¿é£¬Äܹ»Ë¼¿¼Ê¹ÓÃBrotli#brotlion;#brotli_typestext/plaintext/cssapplication/jsonapplication/javascripttext/xmlapplication/xmlapplication/xml+rsstext/javascriptimage/svg+xml;#brotli_comp_level4;#brotli_min_length1024;#...ÆäËûÅäÖÃ...}gzipon;:ÆôÓÃGzipѹËõ ¡£

gzip_types:Ö¸¶¨±ØÒªÑ¹ËõµÄMIMEÀàÐÍ ¡£gzip_comp_level:GzipѹËõ¼¶±ð£¬¼¶±ðÔ½¸ßѹËõÂÊÔ½¸ß£¬µ«CPU¿÷ËðÒ²Ô½´ó ¡£gzip_min_length:Ö¸¶¨×îÓ×ѹËõ³¤¶È£¬Ó×Óڴ˳¤¶ÈµÄ²»?»á±»Ñ¹Ëõ ¡£

4.CDN¼¯³É£º½«ÄÚÈÝÍÆË͵½ÀëÓû§×î½üµÄ´¦Ëù

¶ÔÓÚÃæÏòÈ«ÇòÓû§µÄÊÓÆµ·þÎñ£¬ÓëCDN(ContentDeliveryNetwork)¼¯³ÉÊDZز»?¿ÉÉÙµÄ ¡£NginxÄܹ»×÷ΪCDNµÄ»ØÔ´·þÎñÆ÷£¬»òÕßÖ±½Ó×÷Ϊ±ßÔµ½Úµã²¿Êð ¡£

×÷Ϊ»ØÔ´·þÎñÆ÷:ÅäÖÃNginxµÄproxy_cacheÖ¸ÏòCDNµÄ»º´æ½Úµã£¬µ±CDN½Úµã»º´æÊ§Ð§Ê±£¬ÒªÇó»á»ØÔ´µ½Nginx ¡£×÷Ϊ±ßÔµ½Úµã:Ö±½Ó²¿ÊðNginx×÷ΪCDNµÄ±ßÔµ½Úµã£¬³ä?·ÖÀûÓÃNginxµÄ¸ß»úÄÜ»ººÍ´æÄÜÁ¦£¬ÎªÓû§Ìṩ×î¼±¾ç¶ÈµÄÊÓÆµ·þÎñ ¡£

5.Á÷Á¿½ÚÔìÓ밲ȫ¼Ó¹Ì£ºÊØ»¤Á÷³©ÂÄÀú

ΪÁËÓ¦¶ÔÍ»·¢Á÷Á¿ºÍDZÔڵĹ¥»÷£¬ÅäÖÃÁ÷Á¿½ÚÔìÊDZØÒªµÄ ¡£

http{#½ç˵һ¸öÇøÓò£¬Ã¿ÃëÔÊÐí100¸öÒªÇó£¬ÁîÅÆÍ°ÈÝÁ¿Îª100limit_req_zone$binary_remote_addrzone=mylimit:10mrate=100r/s;server{#...location~*\.(mp4|mkv|avi|mov|flv|webm)${proxy_passhttp://your_backend_video_server;proxy_cachevideo_cache;proxy_cache_valid20030210m;proxy_cache_valid4041m;proxy_cache_key"$scheme$request_method$host$request_uri";add_headerX-Cache-Status$upstream_cache_status;limit_reqzone=mylimitburst=100nodelay;#ÀûÓÃÁ÷Á¿ÏÞ¶È}#...}}limit_req_zone:½ç˵һ¸öÃûΪmylimitµÄÇøÓò£¬ÒÔ¿Í»§¶ËIP($binary_remote_addr)×÷Ϊ±êʶ£¬ÔÊÐíÿÃë100¸öÒªÇó£¬ÁîÅÆÍ°ÈÝÁ¿Îª100 ¡£

limit_reqzone=mylimitburst=100nodelay;:ÔÚlocationÖÐÀûÓøÃÏÞ¶È£¬burst=100ÔÊÐí¶ÌÔݵij¬³öÏÞ¶È£¬nodelay°µÊ¾³¬³öÏ޶ȵÄÒªÇóµ±¼´±»»Ø¾ø ¡£

6.¶¯Ì¬ÊÓÆµÁ÷ÓÅ»¯(HLS/DASH)

¶ÔÓÚHLS(HTTPLiveStreaming)ºÍDASH(DynamicAdaptiveStreamingoverHTTP)µÈ×ÔÊÊÓ¦±ÈÌØÂÊÁ÷ýÌåºÍ̸£¬NginxͬÑù²û·¢½Ü³ö ¡£Æä¸ßЧµÄÎļþ´«ÊäÄÜÁ¦Äܹ»È·±£.ts»ò.m4sµÈýÌå·Ô쬿ÉÄܼ±¾ç¡¢²»±äµØ´«Ê䏸Óû§ ¡£

¹²Í¬»º´æ£¬¼´±ãÊÇÅÔ¹ÛÈȵãÊÓÆµ£¬Ò²Äܱ£Õϼ«¸ßµÄ²¢·¢³ÐÔØÄÜÁ¦ ¡£

ͨ¹ýÒÔÉÏÕâЩÅäÖÃÕ½ÊõµÄ×éºÏÀûÓã¬ÄúÄܹ»³ä·ÖÍÚ¾òNginxµÄDZÁ¦£¬´òÔìÒ»¸ö»úÄÜ׿Խ¡¢ÂÄÀú¼«ÖµÄÊÓÆµ·þÎñƽ̨ ¡£Îձ𿨶Ù£¬Óµ±§Á÷³©£¬ÈÃÄúµÄÓû§ÔÚÅÔ¹ÛÊÓÆµÊ±£¬ÏíÊܵ½Ç°ËùδÓеijÁ½þʽÂÄÀú£¡

ÔðÈαà×룺 »ÆÖÇÏÍ
ÉêÃ÷£ºÖ¤È¯Ê±±¨Á¦ÇóÐÅÏ¢ÕæÊµ¡¢ÕýÈ·£¬ÎÄÕÂÌá¼°ÄÚÈݽö¹©²Î¿¼£¬²»×é³ÉÄÚÈÝÐÔͶ×ʽ¨Ò飬¾Ý´Ë²Ù·ç¸ñÏÕ×Ôµ£
ÏÂÔØ¡°Ö¤È¯Ê±±¨¡±¹Ù·½APP£¬»ò¹Ø×¢¹Ù·½Î¢ÐŹ«¼ÒºÅ£¬¼´¿ÉËæÊ±Ïàʶ¹ÉÊж¯Ì¬£¬¶´²ìÕþ²ßÐÅÏ¢£¬°ÑÎղƸ»»úÓö ¡£
ÍøÓÑÆÀÂÛ
µÇ¼ºóÄܹ»½²»°
·¢ËÍ
ÍøÓÑÆÀÂÛ½ö¹©Æä±í°×Ó×ÎÒ¼û½â£¬²¢²»Åúע֤ȯʱ±¨Ì¬¶È
ÔÝÎÞÆÀÂÛ
ΪÄãÍÆ¼ö
¡¾ÍøÕ¾µØÍ¼¡¿