µÇ¼-FHÖÁ×ð

nginx²¥·ÅÊÓÆµ_07
À´Ô´£ºÖ¤È¯Ê±±¨Íø×÷ÕߣºÁõ¿¡Ó¢2026-03-05 08:36:25
wwwzqhsauikdwjbfkjabfwqr

ÒÔHLSΪÀý£¬Ê¹ÓÃnginx-vod-moduleµÄÅäÖÿÉÄÜÈçÏÂËùʾ£º

http{#...ÆäËûÅäÖÃ...vodon;#ÆôÓÃVODÄ£¿évod_root/path/to/your/vod/files;#´æ·ÅÔ´ÊÓÆµÎļþµÄĿ¼vod_manifest_path/path/to/your/vod/manifests;#Éú³ÉµÄm3u8Îļþ´æ·ÅĿ¼server{listen80;server_nameexample.com;location/vod/{alias/path/to/your/vod/files/;autoindexon;types{application/vnd.apple.mpegurlm3u8;video/mp2tts;}expires30d;}#VODÄ£¿éµÄ½Ó¿Ú£¬ÓÃÓÚÉú³Ém3u8Îļþlocation/vod.m3u8{vod_generate_m3u8;}}}

ÔÚÕâ¸öÅäÖÃÖУ¬vodon;ÆôÓÃÁËVODÄ£¿é¡£vod_rootÖ¸¶¨Á˴洢ԭʼÊÓÆµÎļþµÄλÖá£/vod.m3u8Õâ¸ölocationÊÇVODÄ£¿éÌṩµÄ½Ó¿Ú£¬µ±¿Í»§¶ËÇëÇó/vod.m3u8?file=your_video.mp4ʱ£¬VODÄ£¿é¾Í»á¸ù¾Ýyour_video.mp4Éú³ÉÏàÓ¦µÄHLS²¥·ÅÁбí¡£

CDN¼ÓËÙ£ºÈÃÈ«ÇòÓû§¶¼Äܳ©Ïí¸ßÇå

¶ÔÓÚÃæÏòÈ«ÇòÓû§µÄÊÓÆµÆ½Ì¨¶øÑÔ£¬½«ÊÓÆµÄÚÈݲ¿ÊðÔÚÀëÓû§×î½üµÄ·þÎñÆ÷ÉÏÊÇÌáÉý²¥·ÅÌåÑéµÄ¹Ø¼ü¡£Õâ¾ÍÐèÒª½èÖúCDN(ContentDeliveryNetwork)¼¼Êõ¡£Nginx±¾Éí¾ÍÊÇÒ»¸ö·Ç³£ÓÅÐãµÄCDNÔ´Õ¾·þÎñÆ÷¡£Í¨¹ý½«Nginx·þÎñÆ÷²¿ÊðÔÚÊÓÆµÄÚÈݵÄÔ´Í·£¬²¢ÅäÖÃÏàÓ¦µÄ»º´æ²ßÂÔ£¬CDN½Úµã¾Í¿ÉÒÔ´Ó?NginxÔ´Õ¾»ñÈ¡ÊÓÆµÄÚÈÝ£¬²¢½«Æä»º´æµ½Àë×îÖÕÓû§¸ü½üµÄ½ÚµãÉÏ¡£

NginxÔÚCDNÖеÄ×÷ÓÃÖ÷ÒªÌåÏÖÔÚÒÔϼ¸¸ö·½Ã棺

¸ßÐÔÄÜÔ´Õ¾£ºNginxÄܹ»¸ßЧµØ´¦ÀíCDN½Úµã·¢ÆðµÄÇëÇ󣬱£Ö¤ÊÓÆµÄÚÈݵĿìËÙ»ñÈ¡¡£»º´æÓÅ»¯£ºÍ¨¹ý¾«Ï¸µÄexpires¡¢proxy_cacheµÈÅäÖã¬Nginx¿ÉÒÔÓÐЧµØ¹ÜÀíÊÓÆµÄÚÈݵĻº´æ£¬¼õÉÙÔ´Õ¾µÄѹÁ¦£¬²¢¼ÓËÙCDN½ÚµãµÄ¸üС£

ЭÒéÖ§³Ö£ºNginx¶ÔHTTP/2¡¢TLS/SSLµÈЭÒéµÄÖ§³Ö£¬Äܹ»ÎªCDN´«ÊäÌṩ¸ü¿ìµÄËٶȺ͸ü°²È«µÄ±£ÕÏ¡£½¡¿µ¼ì²éÓë¸ºÔØ¾ùºâ£ºNginxÒ²¿ÉÒÔ×÷ΪCDNÄÚ²¿?µÄ¸ºÔؾùºâÆ÷£¬½«ÇëÇó·Ö·¢µ½¶à¸öNginxºó¶Ë·þÎñÆ÷£¬Ìá¸ßÕûÌåµÄ¿ÉÓÃÐÔ¡£

×ܽá

NginxÔÚÊÓÆµ²¥·ÅÁìÓòµÄÓ¦Óã¬ÒѾ­´ÓÒ»¸ö¼òµ¥µÄÎļþ·þÎñÆ÷£¬Ñݱä³ÉÁËÒ»¸ö¹¦ÄÜÇ¿´ó¡¢ÐÔÄÜ׿ԽµÄÁ÷ýÌå½â¾ö·½°¸¡£Í¨¹ý¶ÔRTMP¡¢HLS¡¢DASHµÈЭÒéµÄÖ§³Ö£¬ÒÔ¼°ÓëCDN¡¢ÊÓÆµÓÅ»¯¼¼ÊõµÄ½áºÏ£¬NginxÄܹ»°ïÖú¿ª·¢ÕßÇáËɴÆðÄܹ»Âú×ã¸÷ÖÖ³¡¾°ÐèÇóµÄÊÓÆµ²¥·Åƽ̨¡£

ÎÞÂÛÊǸöÈ˲©¿ÍÉϵÄ?ÊÓÆµ·ÖÏí£¬»¹ÊÇ´óÐÍÊÓÆµÍøÕ¾µÄÖ±²¥ÍÆÁ÷£¬Nginx¶¼Äܹ»ÌṩÎȶ¨¡¢¸ßЧ¡¢Á÷³©µÄÊÓÆµ²¥·ÅÌåÑ飬ÈÃÿһ´Î¹Û¿´¶¼³ÉΪһ´ÎÓäÔõÄÓ°ÒôÏíÊÜ¡£ÕÆÎÕNginxµÄÊÓÆµ²¥·ÅÖ®µÀ£¬¾ÍÊÇÕÆÎÕÁËÁ¬½ÓÄÚÈÝÓëÓû§µÄ¹Ø¼ü¼¼Êõ£¬ÎªÓû§´øÀ´ÎÞÓëÂױȵÄÊý×ÖÓéÀÖÌåÑé¡£

RTMPЭÒ飺ֱ²¥µÄÇ¿´óÇý¶¯Á¦

¶ÔÓÚʵʱֱ²¥³¡¾°£¬RTMP(Real-TimeMessagingProtocol)ÊÇĿǰӦÓÃ×î¹ã·ºµÄЭÒéÖ®Ò»¡£Nginx±¾Éí²¢²»Ö±½ÓÖ§³ÖRTMP£¬µ«¿ÉÒÔͨ¹ýÇ¿´óµÄnginx-rtmp-moduleÄ£¿éÀ´ÊµÏÖRTMPÁ÷ýÌå·þÎñÆ÷µÄ¹¦ÄÜ¡£

¸ÃÄ£¿é½«Nginxת»¯ÎªÒ»¸ö¹¦ÄÜÍ걸µÄRTMP·þÎñÆ÷£¬Äܹ»½ÓÊÕÖ±²¥ÍÆÁ÷£¬²¢½«Á÷ýÌå·Ö·¢¸ø¹ÛÖÚ¡£

ÒªÆôÓÃnginx-rtmp-module£¬Í¨³£ÐèÒªÔÚ±àÒëNginxʱ½«Æä×÷ΪµÚÈý·½Ä£¿é¼ÓÈë¡£Ò»µ©°²×°³É¹¦£¬¾Í¿ÉÒÔÔÚnginx.confÖÐÌí¼ÓRTMPÏà¹ØµÄÅäÖãº

rtmp{server{listen1935;#RTMPĬÈ϶˿Úchunk_size4096;applicationlive{liveon;recordoff;#Èç¹û²»ÐèÒªÂ¼ÖÆÖ±²¥Á÷£¬¿ÉÒÔÉèÖÃΪoffallowpublish127.0.0.1;#ÔÊÐí±¾µØÍÆÁ÷allowplayall;#ÔÊÐíËùÓÐÈ˲¥·Å}}}http{#...Ç°ÃæÌáµ½µÄHTTPÅäÖÃ...#ÕûºÏRTMPÖ±²¥Á÷µ½HTTPlocation/hls{types{application/vnd.apple.mpegurlm3u8;video/mp2tts;}root/tmp;#HLS·ÖƬ´æ·ÅĿ¼add_headerCache-Controlno-cache;add_headerAccess-Control-Allow-Origin*;#ÅäºÏnginx-rtmp-moduleµÄHLSÅäÖÃhlson;hls_path/tmp/hls;#HLS·ÖƬÊä³ö·¾¶hls_fragment5s;#HLS·ÖƬʱ³¤}}

ÔÚǰһ²¿·Ö£¬ÎÒÃÇ̽ÌÖÁËNginxÔÚÊÓÆµ²¥·Å·½ÃæµÄ»ù´¡ÅäÖúͶÔRTMP¡¢HLSЭÒéµÄÖ§³Ö¡£Ëæ×ÅÓû§¶ÔÊÓÆµÖÊÁ¿ÒªÇóµÄ²»¶ÏÌá¸ß£¬ÒÔ¼°Á÷ýÌåÓ¦Óó¡¾°µÄÈÕÒæ¸´ÔÓ£¬½ö½öÒÀ¿¿»ù´¡ÅäÖÃÊÇÔ¶Ô¶²»¹»µÄ¡£ÎÒÃÇÐèÒª½øÒ»²½ÉîÈëNginxµÄ?¸÷Ïî¸ß¼¶¹¦ÄÜ£¬²¢½áºÏʵ¼ÊµÄÁ÷ýÌå¼¼Êõ£¬À´¹¹½¨Ò»¸öÄܹ»Ìṩ¼«Ö¹ÛÓ°ÌåÑéµÄÊÓÆµ²¥?·Åƽ̨¡£

×ÔÊÊÓ¦±ÈÌØÂÊÁ÷(AdaptiveBitrateStreaming)£ºÓ¦¶Ô²»Í¬ÍøÂç»·¾³µÄ¹Ø¼ü

ÔÚÍøÂç»·¾³¶à±äµÄ½ñÌ죬Óû§¿ÉÄÜÉí´¦¸ßËÙWi-Fi¡¢4GÍøÂ磬ÉõÖÁÐźŲ»¼ÑµÄÒÆ¶¯ÍøÂ硣ΪÁËÈ·±£²¥·ÅµÄÁ÷³©ÐÔ£¬×ÔÊÊÓ¦±ÈÌØÂÊÁ÷¼¼ÊõÓ¦Ô˶øÉú¡£HLSºÍDASHÊǵ±Ç°×îÖ÷Á÷µÄÁ½ÖÖ×ÔÊÊÓ¦±ÈÌØÂÊÁ÷ýÌåЭÒ飬ËüÃÇͨ¹ý½«ÊÓÆµ·Ö¸î³É²»Í¬·Ö±æÂʺÍÂëÂʵÄСƬ¶Î£¬²¢Éú³ÉÒ»¸öË÷ÒýÎļþ£¨Èç.m3u8»ò.mpd£©£¬¿Í»§¶Ë²¥·ÅÆ÷»á¸ù¾Ýµ±Ç°ÍøÂç×´¿ö¶¯Ì¬µØÑ¡Ôñ×îÊʺϵÄÊÓÆµÆ¬¶Î½øÐв¥?·Å£¬´Ó¶øÊµÏÖ¡°¿¨¶Ù¡±µÄ×îС»¯¡£

Nginx£¬ÌرðÊÇͨ¹ýnginx-rtmp-moduleºÍnginx-vod-moduleµÈÄ£¿é£¬Äܹ»ÓÐЧµØÖ§³ÖHLSºÍDASH¡£ÈçǰËùÊö£¬nginx-rtmp-module¿ÉÒÔ½«RTMPÁ÷ʵʱתÂë²¢Éú³ÉHLSÁ÷¡£¶ønginx-vod-moduleÔò¸üרעÓڵ㲥³¡¾°£¬Ëü¿ÉÒÔ¶ÔMP4µÈ?ÊÓÆµÎļþ½øÐж¯Ì¬ÇÐÆ¬£¬Éú³ÉHLSºÍDASH¸ñʽµÄ²¥·ÅÁбí¡£

»ù´¡ÅäÖãºÎªÊÓÆµ²¥·Åµì¶¨»ùʯ

ÒªÀûÓÃNginx½øÐÐÊÓÆµ²¥·Å£¬Ê×ÏÈÐèҪȷ±£NginxÒѾ­°²×°²¢¾ß±¸Á˱ØÒªµÄÄ£¿é¡£¶ÔÓÚ³£¼ûµÄÊÓÆµÁ÷ýÌåЭÒ飬Nginxͨ³£ÐèÒª°²×°ngx_http_flv_module(ÓÃÓÚ²¥·ÅFLV¸ñʽµÄÊÓÆµ)ºÍngx_http_mp4_module(ÓÃÓÚ´¦ÀíMP4¸ñʽµÄÊÓÆµ)¡£

¸ü½øÒ»²½£¬ÈôÒªÖ§³ÖHLS(HTTPLiveStreaming)ºÍDASH(DynamicAdaptiveStreamingoverHTTP)µÈÖ÷Á÷µÄ×ÔÊÊÓ¦±ÈÌØÂÊÁ÷ýÌåЭÒ飬»¹ÐèÒª¶îÍâµÄµÚÈý·½Ä£¿é£¬ÀýÈçnginx-vod-module»ònginx-rtmp-module¡£

ÔÚnginx.confÅäÖÃÎļþÖУ¬ÎÒÃÇ¿ÉÒÔΪÊÓÆµ²¥·Å³¡¾°½øÐÐרÃŵÄÅäÖá£ÀýÈ磬´´½¨Ò»¸ölocation¿éÀ´´¦ÀíÊÓÆµÎļþµÄÇëÇó£º

http{#...ÆäËûÅäÖÃ...server{listen80;server_nameexample.com;location/videos/{alias/path/to/your/video/files/;#Ö¸¶¨ÊÓÆµÎļþ´æ·ÅĿ¼autoindexon;#¿ÉÑ¡£¬ÓÃÓÚ·½±ãä¯ÀÀÊÓÆµÁбí?add_header'Access-Control-Allow-Origin''*';#ÔÊÐí¿çÓò·ÃÎÊ#Õë¶ÔÊÓÆµÎļþµÄһЩÓÅ»¯ÅäÖÃsendfileon;tcp_nopushon;tcp_nodelayon;keepalive_timeout65;types{video/mp4mp4;video/x-flvflv;}#»º´æÅäÖã¬Ìá¸ß·ÃÎÊËÙ¶Èexpires30d;}}}

NginxºÎÒÔʤÈÎÊÓÆµ²¥·ÅÖØÈΣ¿

NginxµÄºËÐÄÓÅÊÆÔÚÓÚÆäʼþÇý¶¯¡¢Òì²½·Ç×èÈûµÄÍøÂçI/OÄ£ÐÍ¡£ÕâÒâζ×ÅËüÄܹ»ÒÔ¼«µÍµÄ×ÊÔ´ÏûºÄ´¦Àíº£Á¿²¢·¢Á¬½Ó£¬Õâ¶ÔÓÚÐèҪͬʱ·þÎñ´óÁ¿Óû§µÄÊÓÆµÁ÷ýÌåÓ¦ÓÃÀ´ËµÖÁ¹ØÖØÒª¡£´«Í³µÄ×èÈûʽI/OÄ£ÐÍÔÚ´¦ÀíÊÓÆµÁ÷ÕâÖÖ³¤Ê±¼ä¡¢´óÁ÷Á¿µÄÁ¬½Óʱ£¬ÈÝÒ×Ôì³É×ÊÔ´À˷ѺÍÐÔÄÜÆ¿¾±£¬¶øNginxµÄÉè¼ÆÔòÍêÃÀ¹æ±ÜÁËÕâÒ»ÎÊÌâ¡£

NginxÄ£¿é»¯µÄ¼Ü¹¹Ò²ÎªÆäÔÚÊÓÆµ²¥·ÅÁìÓòµÄÓ¦ÓÃÌṩÁ˼«´óµÄÁé»îÐÔ¡£Í¨¹ý¼ÓÔØ²»Í¬µÄÄ£¿é£¬Nginx¿ÉÒÔÖ§³Ö¶àÖÖÁ÷ýÌåЭÒ飬²¢ÊµÏַḻµÄ?¹¦ÄÜ¡£ÕâʹµÃ¿ª·¢Õß¿ÉÒÔ¸ù¾Ý¾ßÌåÐèÇ󣬶¨ÖÆ»¯µØ¹¹½¨ÊÓÆµ²¥·Å½â¾ö·½°¸£¬¶øÎÞÐèÊÜÏÞÓÚµ¥Ò»µÄ¼¼ÊõÕ»¡£

ÊÓÆµÓÅ»¯£ºÌáÉý»­ÖÊÓë¼õСÌå»ý

³ýÁË·þÎñÆ÷¶ËµÄÅäÖã¬ÊÓÆµÄÚÈݵÄÓÅ»¯±¾ÉíÒ²¶Ô²¥·ÅÌåÑéÖÁ¹ØÖØÒª¡£NginxËäÈ»²»ÊÇÒ»¸öÊÓÆµ×ªÂ빤¾ß£¬µ«Ëü¿ÉÒÔÅäºÏһЩµÚÈý·½·þÎñ»ò¹¤¾ß£¬ÊµÏÖÊÓÆµÄÚÈݵÄÔ¤´¦ÀíºÍÓÅ»¯¡£

ÂëÂÊ¿ØÖÆ£ºÔÚÊÓÆµ±àÂë½×¶Î£¬ºÏÀíÉèÖÃÊÓÆµµÄÂëÂÊÊÇÆ½ºâ»­ÖʺÍÎļþ´óСµÄ¹Ø¼ü¡£¶ÔÓÚHLSºÍDASH£¬¸üÊÇÐèÒªÌṩ¶àÖÖÂëÂʵÄÊÓÆµÁ÷¡£¹Ø¼üÖ¡ÓÅ»¯£ºÊÓÆµ²¥·ÅµÄseek£¨¿ì½ø/¿ìÍË£©²Ù×÷£¬ÐèÒªÒÀÀµÓڹؼüÖ¡¡£NginxÔÚ´¦ÀíHLS/DASHʱ£¬Æä²¥·ÅÆ÷¿ÉÒÔ¸ù¾ÝË÷ÒýÎļþºÍÊÓÆµÆ¬¶Î¿ìËÙ¶¨Î»µ½²¥·Åµã¡£

MP4/FLVÓÅ»¯£º¶ÔÓÚÖ±½Óͨ¹ýHTTP²¥·ÅµÄMP4»òFLVÎļþ£¬Nginx¿ÉÒÔͨ¹ýngx_http_mp4_moduleµÈÄ£¿é£¬ÓÅ»¯Îļþ½á¹¹£¬Ê¹Æä¸üÊʺÏÁ÷ʽ´«Ê䣬ÀýÈ罫moovatom·Åµ½ÎļþÍ·²¿£¬ÕâÑù²¥·ÅÆ÷ÎÞÐèÏÂÔØÕû¸öÎļþ¼´¿É¿ªÊ¼²¥·Å¡£

°²È«Óë¼à¿Ø£º±£ÕÏÊÓÆµ·þÎñµÄÎȶ¨ÔËÐÐ

Ëæ×ÅÊÓÆµ·þÎñµÄÆÕ¼°£¬°²È«ÎÊÌâÒ²ÈÕÒæÍ¹ÏÔ¡£NginxÌṩÁ˶àÖÖ°²È«»úÖÆÀ´±£»¤ÊÓÆµÁ÷£º

·ÃÎÊ¿ØÖÆ£ºÍ¨¹ýallowºÍdenyÖ¸Á¿ÉÒÔÏÞÖÆÌØ¶¨IPµØÖ·»òÍøÂçµÄ·ÃÎÊ¡£Ç©ÃûURL£º¶ÔÓÚÃô¸Ð»ò¸¶·ÑÊÓÆµ£¬¿ÉÒÔÀûÓÃNginxµÄµÚÈý·½Ä£¿é£¨Èçngx_http_secure_link_module£©Éú³É?ÓÐʱЧÐÔµÄÇ©ÃûURL£¬·ÀÖ¹·Ç·¨·ÖÏí¡£

TLS/SSL¼ÓÃÜ£ºÊ¹ÓÃHTTPSЭÒé¶ÔÊÓÆµÁ÷½øÐмÓÃÜ£¬±£»¤´«Êä¹ý³ÌÖеÄÊý¾Ý°²È«¡£

¶ÔNginxÊÓÆµ·þÎñÆ÷½øÐÐÓÐЧµÄ¼à¿ØÒ²ÊDZز»¿ÉÉٵġ£Í¨¹ýNginxµÄ?stub_statusÄ£¿é£¬¿ÉÒÔʵʱ²é?¿´·þÎñÆ÷µÄÁ¬½ÓÊý¡¢ÇëÇóÊýµÈ¹Ø¼üÖ¸±ê¡£½áºÏPrometheus¡¢GrafanaµÈ¼à¿Ø¹¤¾ß£¬¿ÉÒÔ¹¹½¨ÍêÕûµÄÊÓÆµ·þÎñ¼à¿ØÌåϵ£¬¼°Ê±·¢Ïֺͽâ¾öDZÔÚÎÊÌâ¡£

ÔÚÕâ¸öÅäÖÃÖУ¬rtmp¿é¶¨ÒåÁËÒ»¸öRTMP·þÎñÆ÷£¬¼àÌý1935¶Ë¿Ú¡£applicationlive²¿·Ö¶¨ÒåÁËÒ»¸öÃûΪliveµÄÖ±²¥Ó¦Óã¬liveon;¿ªÆôÁËÖ±²¥¹¦ÄÜ¡£allowpublishºÍallowplay¿ØÖÆÁËÍÆÁ÷ºÍ²¥·ÅµÄȨÏÞ¡£

¸üÖØÒªµÄ?ÊÇ£¬nginx-rtmp-module»¹Ö§³Ö½«RTMPÁ÷ת»»ÎªHLS¸ñʽ¡£ÔÚhttp¿éÖеÄ/hlslocation£¬Í¨¹ýhlson;¡¢hls_pathºÍhls_fragmentµÈÖ¸Á¿ÉÒÔ½«RTMPÖ±²¥Á÷ʵʱµØ·Ö¸î³ÉHLSµÄ.m3u8Ë÷ÒýÎļþºÍ.tsÒôÊÓÆµÆ¬¶Î£¬·½±ãʹÓñê×¼µÄHTTPЭÒé½øÐв¥·Å¡£

Õ⼫´óµØ¼ò»¯ÁËÖ±²¥Á÷µÄ·Ö·¢£¬ÒòΪ¼¸ºõËùÓÐÉ豸ºÍä¯ÀÀÆ÷¶¼Ö§³ÖHTTPЭÒé¡£

ÖÁ´Ë£¬ÎÒÃÇÒѾ­³õ²½Á˽âÁËNginxÔÚÊÓÆµ²¥·Å³¡¾°ÏµĻù´¡ÄÜÁ¦£¬°üÀ¨Í¨¹ýHTTPÖ±½Ó²¥·Åµã²¥ÊÓÆµ£¬ÒÔ¼°ÀûÓÃnginx-rtmp-moduleʵÏÖRTMPÖ±²¥ºÍHLSÁ÷ýÌåµÄÉú³É¡£ÒªÕæÕý´òÔìÒ»¸ö¸ßÐÔÄÜ¡¢¸ß¿ÉÓá¢Óû§ÌåÑé׿ԽµÄÊÓÆµ²¥·Åƽ̨£¬»¹ÐèÒª¸üÉîÈëµÄÓÅ»¯ºÍ¸ü¸ß¼¶µÄ¹¦ÄÜ¡£

NginxÊÓÆµ²¥·Å¸ß¼¶ÓÅ»¯Óëʵ¼ù£ºÊµÏÖ¼«ÖµÄÁ÷ýÌåÌåÑé

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