Michael Bleigh
ã¨ã³ã¸ãã¢
ãããããã¨ã«、æ¬æ¥(*åæå
¬é彿)㯠Firebase Hosting ã§ HTTP/2 ãå©ç¨ã§ããããã«ãªã£ããã¨ããç¥ããã§ãã¾ã。HTTP/2 㯠HTTP ãããã³ã«ã®æ°çã§ã。æ¢ã«ä¸çã®
77% ã®ãã©ã¦ã¶ ã§ãµãã¼ãããã¦ãã、ã¦ã§ã ãããããã¼ã«ããã¸ãé
åçãªã¡ãªãããæä¾ãã¦ãã¾ã。
1 åã®æ¥ç¶ã§è¤æ°ã®ãªã¯ã¨ã¹ããéä¿¡ã§ãã¾ã。HTTP/2 ã§ã¯、ãªã½ã¼ã¹ãéç´ããå¿
è¦æ§ãå°ãªããªãã¾ã。
ãã¤ã㪠ãããã³ã«ã§ãããã、ãããã¼ãå§ç¸®ãã¦ãã¼ã¿ãå¹ççã«éä¿¡ãããã¨ãã§ãã¾ã。
ãµã¼ãã¼ããã¯ã©ã¤ã¢ã³ãã«äºåã«ã³ã³ãã³ãã「ããã·ã¥」ãããã¨ãã§ãã¾ã。
ããããåããã¦èããã¨、大å¹
ãªããã©ã¼ãã³ã¹ã®åä¸ã¨ããã¡ãªããã¨、æ¥ç¶ã®é
ãã¢ãã¤ã«ç«¯æ«ã§ãã¦ã§ãã¢ããªãæ©ãèªã¿è¾¼ããå¯è½æ§ãå¢å ãã¾ã。
ç¾å¨、HTTP/2 ã¯ãã¹ã¦ã®
*.firebaseapp.com ã®ãã©ãã£ãã¯ã¨æ°ãããããã¸ã§ãã³ã°ãããã«ã¹ã¿ã ãã¡ã¤ã³ã®ãã©ãã£ãã¯ã§æå¹ã«ãªã£ã¦ãã¾ã。ãã§ã« Firebase ã®ã«ã¹ã¿ã ãã¡ã¤ã³ããæã¡ã®æ¹ã¯、å¾è¿°ã®
ã«ã¹ã¿ã ãã¡ã¤ã³ã®ç§»è¡ ãã覧ãã ãã。
Firebase Hosting ã§ã® HTTP/2 ã®å©ç¨
Firebase Hosting ã§ HTTP/2 ãå©ç¨ããããã«å¿
è¦ãªãã¨ã¯ä½ãããã¾ãã。 ã¦ã¼ã¶ã¼ã®ãã©ã¦ã¶ããµãã¼ããã¦ããã°、èªåçã« HTTP/2 ã§ã³ã³ãã³ããæä¾ããã¾ã。ãã ã、HTTP/2 åãã«æé©åãè¡ãããå ´å、è¦ãã¦ããã¹ãããã¤ãã®ãã¹ã ãã©ã¯ãã£ã¹ãããã¾ã。
1 åã®æ¥ç¶ã§è¤æ°ã®åæãªã¯ã¨ã¹ããè¡ããããã、å¤ãã®ãªã½ã¼ã¹ãéç´ããã¡ãªããã¯ãªããªãã¾ã。å®éã¯、ãã©ã¦ã¶ã¯é©åã«ãªã½ã¼ã¹ããã£ãã·ã¥ãããã、ãã¾ã夿´ã®ãªããã¡ã¤ã«ãããããæä¾ããæ¹ãå¹ççã§ã。ãã ã、ããã§ããããã®ãã¡ã¤ã«ã¨ããã®ã¯æ°ååã®ãã¡ã¤ã«ã§ãã、æ°ç¾åã®ãã¡ã¤ã«ã«ãªãã¨ä¾ç¶ã¨ãã¦å¤§ããªãªã¼ãã¼ããããçãã ãã¨ã«æ³¨æãã¦ãã ãã。
ã¢ã»ãããè¤æ°ã®ãã¡ã¤ã³ã«「åå²」ããå¿
è¦ã¯ãªããªã、ãã®æ¹æ³ã¯å¥½ã¾ãããã®ã§ããªããªãã¾ãã。Firebase Hosting ã¯æ¢ã«é«é㪠CDN çµç±ã§æä¾ããã¦ãã、HTTP/2 ã«ãã£ã¦åããã¡ã¤ã³ãããã¹ã¦ã®ãã¡ã¤ã«ãæä¾ããæ¹ãæå©ã«ãªã£ã¦ãã¾ã。
å¿
è¦ãªã¢ã»ããã®ã¿èªã¿è¾¼ãããã«ãã¦ãã ãã。éä¿¡ã®å¾å¾©ãå°ãªãã、App Shell ãèµ·åããããã«å¿
è¦ãªãã¡ã¤ã«ã®ã¿ãèªã¿è¾¼ããã、ãµã¤ããæé©åãã¾ã。ãã®ä»ã®ãªã½ã¼ã¹ã¯、ã¦ã¼ã¶ã¼ã®ã¤ã³ã¿ã©ã¯ã·ã§ã³ã«å¿ãã¦ãªã³ããã³ãã§èªã¿è¾¼ã¿ã¾ã。
以ä¸ã®ã¬ã¤ãã©ã¤ã³ã¯çµ¶å¯¾ã®æ±ºã¾ããã¨ã§ã¯ããã¾ãã。ãã¹ã¦ã®ããã©ã¼ãã³ã¹ã®æé©åã«è¨ãããã¨ã§ãã、ãã¾ãã¾ãªæé©åã®çµã¿åãããå®é¨ã、ã©ããã¢ããªåºæã®ãã¼ãºã«é©ããæé©ãªçµæãããããããè¦æ¥µããå¿
è¦ãããã¾ã。
ãµã¼ãã¼ ããã·ã¥ã®å®é¨
Firebase Hosting ã¯、
Link ãããã¼ ãç¨ãã HTTP/2 ãµã¼ãã¼ ããã·ã¥ã試é¨éç¨çã¨ãã¦ãµãã¼ããã¦ãã¾ã。ãµã¼ãã¼ ããã·ã¥ã«ãã£ã¦、æåã®ãªã¯ã¨ã¹ããè¡ãããéã«、ãµã¼ãã¼ã¯èªåçã«è¿½å ãªã½ã¼ã¹ç¨ã®ã³ã³ãã³ããéä¿¡ã§ããããã«ãªãã¾ã。ãµã¼ãã¼ ããã·ã¥ã®æãä¸è¬çãªå©ç¨æ¹æ³ã¯、ãã¼ã¸ãèªã¿è¾¼ã¾ããéã«é¢é£ã¢ã»ãã(JavaScript ã CSS ãã¡ã¤ã«ãªã©)ãéä¿¡ãããã¨ã§ã。
Firebase Hosting ã§ãµã¼ãã¼ ããã·ã¥ãè¨å®ããã«ã¯、次ã®ä¾ã®ããã«
firebase.json ã®è¨å®ã« Link ãããã¼ã追å ãã¾ã。
{
"hosting": {
"headers": [
{
"source": "/",
"headers": [{"key": "Link", "value": "</js/app.js>;rel=preload;as=script,</css/app.css>;rel=preload;as=style"}]
},
{
"source": "/users/*",
"headers": [{"key": "Link", "value": "</js/app.js>;rel=preload;as=script,</css/app.css>;rel=preload;as=style;nopush,</css/users.css>;rel=preload;as=style"}]
}
]
}
}
ããã§ã¯、ãµã¼ãã¼ ããã·ã¥ã使ã£ã¦ã«ã¼ããã¹ä¸ã«ãã
/js/app.js ã¨
/css/app.css、ããã«
/users/* ã«ãããããä»»æã®ãã¹ã®
/css/users.css ãããªãã¼ããã¦ãã¾ã。æ¢ã«ãã©ã¦ã¶ã®ãã£ãã·ã¥ã«ä¿åããã¦ããå¯è½æ§ãé«ããã¡ã¤ã«ã«ã¤ãã¦ã¯、nopush ãã£ã¬ã¯ãã£ã(2 çªç®ã®ä¾ã®
app.css ãªã©)ã使ç¨ã㦠HTTP/2 ããã·ã¥ã使ããã«ã¢ã»ãããããªãã¼ããããã¨ãã§ãã¾ã。
ãµã¼ãã¼ ããã·ã¥ã¯ã¾ã æ¥ãæµ
ããã、ããã¤ãã®çæãã¹ãç¹ãããã¾ã。
Link ãããã¼ã®ã¯ã¤ã«ãã«ã¼ãã«ã¯æ³¨æãã¦ãã ãã。èªåèªèº«ãããªãã¼ãããããã«ãªã½ã¼ã¹ãè¨å®ãã¦ã¯ããã¾ãã。
ãµã¼ãã¼ ããã·ã¥ã¯、ããã©ã¼ãã³ã¹ã¨ä½¿ç¨ãã帯åå¹
ã®ãã¬ã¼ããªãã§ã。æ¢ã«ãã©ã¦ã¶ããã£ãã·ã¥ãã¦ããã¢ã»ãããããã·ã¥ããã¨、ä½è¨ãªãã¼ã¿ãéä¿¡ãããã¨ã«ãªãã¾ã。ããã·ã¥ããã¢ã»ããã¯ããã©ã¼ãã³ã¹ã«å¤§ããå½±é¿ããæä½éã®ãã®ã«ã¨ã©ãã¾ã。ã¦ã¼ã¶ã¼ãã¢ãã¤ã«ç«¯æ«ã«éãããä½åãªãã¼ã¿ã®æéãè² æ
ãããã¨ã«ãªãå¯è½æ§ãèæ
®ãã¦ãã ãã。
ããã·ã¥ããªãã¦ã、ããªãã¼ãããã ãã§ããã©ã¼ãã³ã¹ã«ååè²¢ç®ãã¾ã。ããªãã¼ã Link ãããã¼ã« ;nopush ã追å ããã°、ãµã¼ãã¼ ããã·ã¥ã使ããã«ããªãã¼ããããããã©ã¦ã¶ã«æç¤ºã§ãã¾ã。ããã¯、æ¢ã«ãã©ã¦ã¶ããã£ãã·ã¥ãã¦ããå¯è½æ§ãããã¢ã»ããã«ã¯éå¸¸ã«æå¹ã§ã。
ç§ãã¡ã¯、HTTP/2 ã使ã£ã¦èªã¿è¾¼ã¿ãé«éåã§ããå¯è½æ§ã«æå¾
ãã¦ãã、çæ§ã®ãµã¤ãã§ãµã¼ãã¼ ããã·ã¥ãããã«ã·ã³ãã«ã§ä¿¡é ¼æ§ãé«ã、广çãªãã®ã«ããæ¹æ³ã模索ãã¦ãã¾ã。
ã«ã¹ã¿ã ãã¡ã¤ã³ã®ç§»è¡
HTTP/2 ã¸ã®ç§»è¡ã«ä¼´ã、SSL è¨¼ææ¸ã® Server Name Indication(SNI)ã«ã対å¿ãã¦ãã¾ã。SNI ã«ãã£ã¦ä¿¡é ¼æ§ãé«ãã¤ã³ãã©ãç¶ç¶çã«æ¡å¼µã§ããããã«ãªãã¾ã。SNI ã¯、
ä¸çã® 98% è¿ãã®ãã©ã¦ã¶ ããµãã¼ããã¦ãã¾ã。ãã®å¤æ´ã¯ã¦ã¼ã¶ã¼ ãã©ãã£ãã¯ã«å½±é¿ããå¯è½æ§ããããã、æ¢åã®ã«ã¹ã¿ã ãã¡ã¤ã³ã¯ 2016 å¹´ 12 æã¾ã§èªååãæ¿ããè¡ãã¾ãã。
2016 å¹´ 8 æ 11 æ¥ä»¥åã« Firebase Hosting ã®ã«ã¹ã¿ã ãã¡ã¤ã³ã使ããæ¹ã¯、HTTP/2 ã®ã¡ãªãããåããããã« DNS ã¬ã³ã¼ãã®æ´æ°ãå¿
è¦ã«ãªãã¾ã。
dig <your-site>.firebaseapp.com ãå®è¡ããã¨、æ¢ã«ãµã¤ãã SNI ã«ãªã£ã¦ãããã©ããã確èªã§ãã¾ã。çµæã«
s-sni.firebaseapp.com ã¨è¡¨ç¤ºãããå ´å、ãµã¤ãã¯æ¢ã«ç§»è¡ããã¦ãã¾ã。
CNAME ã使ã£ã¦ããå ´å、DNS ã
s-sni.firebaseapp.com ã«åããããæ´æ°ããã¨ç§»è¡ã§ãã¾ã。A ã¬ã³ã¼ãã使ã£ã¦ããå ´å、次ã®ããã«æ´æ°ãã¦ãã ãã。
151.101.1.195
151.101.65.195
DNS ã夿´ãã¦ãããåæ ãããã¨、ãµã¤ãã HTTP/2 ã§åä½ããããã«ãªãã¾ã。å¹´æ«ã¾ã§ã«、ãã¹ã¦ã® Firebase Hosting ã®ãã©ãã£ãã¯ã HTTP/2 㨠SNI ã«ç§»è¡ãããäºå®ã§ã。ãã®ãã、SNI ã«ãã£ã¦ã¦ã¼ã¶ã¼ã«ã©ã®ãããªå½±é¿ãåºããå¿é
ãªæ¹ã¯、
ãµãã¼ãã¾ã§ãé£çµ¡ ãã ãã。
Firebase Hosting ãç®æãã¦ããã®ã¯、ããã°ã¬ãã·ã ã¦ã§ãã¢ããªéçºã®ãã¹ã ãã©ã¯ãã£ã¹ã誰ããå©ç¨ã§ããããã«ãããã¨ã§ã。HTTP/2 ã¯ããã«åãã䏿©ã§ã。ã¿ãªããã使ããã³ã³ãã³ããè¦ãã®ã楽ãã¿ã«ãã¦ãã¾ã。
Posted by
Khanh LeViet - Developer Relations Team
ãã®è¨äºã¯ Michael Bleigh ã«ãã The Firebase Blog ã®è¨äº "The Firebase Blog: HTTP/2 comes to Firebase Hosting " ãå
ã«ç¿»è¨³・å çãããã®ã§ã。詳ããã¯å
è¨äºãã覧ãã ãã。
Michael Bleigh
ã¨ã³ã¸ãã¢
ãããããã¨ã«、æ¬æ¥(*åæå
¬é彿)㯠Firebase Hosting ã§ HTTP/2 ãå©ç¨ã§ããããã«ãªã£ããã¨ããç¥ããã§ãã¾ã。HTTP/2 㯠HTTP ãããã³ã«ã®æ°çã§ã。æ¢ã«ä¸çã® 77% ã®ãã©ã¦ã¶ ã§ãµãã¼ãããã¦ãã、ã¦ã§ã ãããããã¼ã«ããã¸ãé
åçãªã¡ãªãããæä¾ãã¦ãã¾ã。
1 åã®æ¥ç¶ã§è¤æ°ã®ãªã¯ã¨ã¹ããéä¿¡ã§ãã¾ã。HTTP/2 ã§ã¯、ãªã½ã¼ã¹ãéç´ããå¿
è¦æ§ãå°ãªããªãã¾ã。
ãã¤ã㪠ãããã³ã«ã§ãããã、ãããã¼ãå§ç¸®ãã¦ãã¼ã¿ãå¹ççã«éä¿¡ãããã¨ãã§ãã¾ã。
ãµã¼ãã¼ããã¯ã©ã¤ã¢ã³ãã«äºåã«ã³ã³ãã³ãã「ããã·ã¥」ãããã¨ãã§ãã¾ã。
ããããåããã¦èããã¨、大å¹
ãªããã©ã¼ãã³ã¹ã®åä¸ã¨ããã¡ãªããã¨、æ¥ç¶ã®é
ãã¢ãã¤ã«ç«¯æ«ã§ãã¦ã§ãã¢ããªãæ©ãèªã¿è¾¼ããå¯è½æ§ãå¢å ãã¾ã。
ç¾å¨、HTTP/2 ã¯ãã¹ã¦ã® *.firebaseapp.com ã®ãã©ãã£ãã¯ã¨æ°ãããããã¸ã§ãã³ã°ãããã«ã¹ã¿ã ãã¡ã¤ã³ã®ãã©ãã£ãã¯ã§æå¹ã«ãªã£ã¦ãã¾ã。ãã§ã« Firebase ã®ã«ã¹ã¿ã ãã¡ã¤ã³ããæã¡ã®æ¹ã¯、å¾è¿°ã®ã«ã¹ã¿ã ãã¡ã¤ã³ã®ç§»è¡ ãã覧ãã ãã。
Firebase Hosting ã§ã® HTTP/2 ã®å©ç¨
Firebase Hosting ã§ HTTP/2 ãå©ç¨ããããã«å¿
è¦ãªãã¨ã¯ä½ãããã¾ãã。 ã¦ã¼ã¶ã¼ã®ãã©ã¦ã¶ããµãã¼ããã¦ããã°、èªåçã« HTTP/2 ã§ã³ã³ãã³ããæä¾ããã¾ã。ãã ã、HTTP/2 åãã«æé©åãè¡ãããå ´å、è¦ãã¦ããã¹ãããã¤ãã®ãã¹ã ãã©ã¯ãã£ã¹ãããã¾ã。
1 åã®æ¥ç¶ã§è¤æ°ã®åæãªã¯ã¨ã¹ããè¡ããããã、å¤ãã®ãªã½ã¼ã¹ãéç´ããã¡ãªããã¯ãªããªãã¾ã。å®éã¯、ãã©ã¦ã¶ã¯é©åã«ãªã½ã¼ã¹ããã£ãã·ã¥ãããã、ãã¾ã夿´ã®ãªããã¡ã¤ã«ãããããæä¾ããæ¹ãå¹ççã§ã。ãã ã、ããã§ããããã®ãã¡ã¤ã«ã¨ããã®ã¯æ°ååã®ãã¡ã¤ã«ã§ãã、æ°ç¾åã®ãã¡ã¤ã«ã«ãªãã¨ä¾ç¶ã¨ãã¦å¤§ããªãªã¼ãã¼ããããçãã ãã¨ã«æ³¨æãã¦ãã ãã。
ã¢ã»ãããè¤æ°ã®ãã¡ã¤ã³ã«「åå²」ããå¿
è¦ã¯ãªããªã、ãã®æ¹æ³ã¯å¥½ã¾ãããã®ã§ããªããªãã¾ãã。Firebase Hosting ã¯æ¢ã«é«é㪠CDN çµç±ã§æä¾ããã¦ãã、HTTP/2 ã«ãã£ã¦åããã¡ã¤ã³ãããã¹ã¦ã®ãã¡ã¤ã«ãæä¾ããæ¹ãæå©ã«ãªã£ã¦ãã¾ã。
å¿
è¦ãªã¢ã»ããã®ã¿èªã¿è¾¼ãããã«ãã¦ãã ãã。éä¿¡ã®å¾å¾©ãå°ãªãã、App Shell ãèµ·åããããã«å¿
è¦ãªãã¡ã¤ã«ã®ã¿ãèªã¿è¾¼ããã、ãµã¤ããæé©åãã¾ã。ãã®ä»ã®ãªã½ã¼ã¹ã¯、ã¦ã¼ã¶ã¼ã®ã¤ã³ã¿ã©ã¯ã·ã§ã³ã«å¿ãã¦ãªã³ããã³ãã§èªã¿è¾¼ã¿ã¾ã。
以ä¸ã®ã¬ã¤ãã©ã¤ã³ã¯çµ¶å¯¾ã®æ±ºã¾ããã¨ã§ã¯ããã¾ãã。ãã¹ã¦ã®ããã©ã¼ãã³ã¹ã®æé©åã«è¨ãããã¨ã§ãã、ãã¾ãã¾ãªæé©åã®çµã¿åãããå®é¨ã、ã©ããã¢ããªåºæã®ãã¼ãºã«é©ããæé©ãªçµæãããããããè¦æ¥µããå¿
è¦ãããã¾ã。
ãµã¼ãã¼ ããã·ã¥ã®å®é¨
Firebase Hosting ã¯、Link ãããã¼ ãç¨ãã HTTP/2 ãµã¼ãã¼ ããã·ã¥ã試é¨éç¨çã¨ãã¦ãµãã¼ããã¦ãã¾ã。ãµã¼ãã¼ ããã·ã¥ã«ãã£ã¦、æåã®ãªã¯ã¨ã¹ããè¡ãããéã«、ãµã¼ãã¼ã¯èªåçã«è¿½å ãªã½ã¼ã¹ç¨ã®ã³ã³ãã³ããéä¿¡ã§ããããã«ãªãã¾ã。ãµã¼ãã¼ ããã·ã¥ã®æãä¸è¬çãªå©ç¨æ¹æ³ã¯、ãã¼ã¸ãèªã¿è¾¼ã¾ããéã«é¢é£ã¢ã»ãã(JavaScript ã CSS ãã¡ã¤ã«ãªã©)ãéä¿¡ãããã¨ã§ã。
Firebase Hosting ã§ãµã¼ãã¼ ããã·ã¥ãè¨å®ããã«ã¯、次ã®ä¾ã®ããã« firebase.json ã®è¨å®ã« Link ãããã¼ã追å ãã¾ã。
{
"hosting": {
"headers": [
{
"source": "/",
"headers": [{"key": "Link", "value": "</js/app.js>;rel=preload;as=script,</css/app.css>;rel=preload;as=style"}]
},
{
"source": "/users/*",
"headers": [{"key": "Link", "value": "</js/app.js>;rel=preload;as=script,</css/app.css>;rel=preload;as=style;nopush,</css/users.css>;rel=preload;as=style"}]
}
]
}
}
ããã§ã¯、ãµã¼ãã¼ ããã·ã¥ã使ã£ã¦ã«ã¼ããã¹ä¸ã«ãã /js/app.js 㨠/css/app.css、ããã« /users/* ã«ãããããä»»æã®ãã¹ã® /css/users.css ãããªãã¼ããã¦ãã¾ã。æ¢ã«ãã©ã¦ã¶ã®ãã£ãã·ã¥ã«ä¿åããã¦ããå¯è½æ§ãé«ããã¡ã¤ã«ã«ã¤ãã¦ã¯、nopush ãã£ã¬ã¯ãã£ã(2 çªç®ã®ä¾ã® app.css ãªã©)ã使ç¨ã㦠HTTP/2 ããã·ã¥ã使ããã«ã¢ã»ãããããªãã¼ããããã¨ãã§ãã¾ã。
ãµã¼ãã¼ ããã·ã¥ã¯ã¾ã æ¥ãæµ
ããã、ããã¤ãã®çæãã¹ãç¹ãããã¾ã。
Link ãããã¼ã®ã¯ã¤ã«ãã«ã¼ãã«ã¯æ³¨æãã¦ãã ãã。èªåèªèº«ãããªãã¼ãããããã«ãªã½ã¼ã¹ãè¨å®ãã¦ã¯ããã¾ãã。
ãµã¼ãã¼ ããã·ã¥ã¯、ããã©ã¼ãã³ã¹ã¨ä½¿ç¨ãã帯åå¹
ã®ãã¬ã¼ããªãã§ã。æ¢ã«ãã©ã¦ã¶ããã£ãã·ã¥ãã¦ããã¢ã»ãããããã·ã¥ããã¨、ä½è¨ãªãã¼ã¿ãéä¿¡ãããã¨ã«ãªãã¾ã。ããã·ã¥ããã¢ã»ããã¯ããã©ã¼ãã³ã¹ã«å¤§ããå½±é¿ããæä½éã®ãã®ã«ã¨ã©ãã¾ã。ã¦ã¼ã¶ã¼ãã¢ãã¤ã«ç«¯æ«ã«éãããä½åãªãã¼ã¿ã®æéãè² æ
ãããã¨ã«ãªãå¯è½æ§ãèæ
®ãã¦ãã ãã。
ããã·ã¥ããªãã¦ã、ããªãã¼ãããã ãã§ããã©ã¼ãã³ã¹ã«ååè²¢ç®ãã¾ã。ããªãã¼ã Link ãããã¼ã« ;nopush ã追å ããã°、ãµã¼ãã¼ ããã·ã¥ã使ããã«ããªãã¼ããããããã©ã¦ã¶ã«æç¤ºã§ãã¾ã。ããã¯、æ¢ã«ãã©ã¦ã¶ããã£ãã·ã¥ãã¦ããå¯è½æ§ãããã¢ã»ããã«ã¯éå¸¸ã«æå¹ã§ã。
ç§ãã¡ã¯、HTTP/2 ã使ã£ã¦èªã¿è¾¼ã¿ãé«éåã§ããå¯è½æ§ã«æå¾
ãã¦ãã、çæ§ã®ãµã¤ãã§ãµã¼ãã¼ ããã·ã¥ãããã«ã·ã³ãã«ã§ä¿¡é ¼æ§ãé«ã、广çãªãã®ã«ããæ¹æ³ã模索ãã¦ãã¾ã。
ã«ã¹ã¿ã ãã¡ã¤ã³ã®ç§»è¡
HTTP/2 ã¸ã®ç§»è¡ã«ä¼´ã、SSL è¨¼ææ¸ã® Server Name Indication(SNI)ã«ã対å¿ãã¦ãã¾ã。SNI ã«ãã£ã¦ä¿¡é ¼æ§ãé«ãã¤ã³ãã©ãç¶ç¶çã«æ¡å¼µã§ããããã«ãªãã¾ã。SNI ã¯、ä¸çã® 98% è¿ãã®ãã©ã¦ã¶ ããµãã¼ããã¦ãã¾ã。ãã®å¤æ´ã¯ã¦ã¼ã¶ã¼ ãã©ãã£ãã¯ã«å½±é¿ããå¯è½æ§ããããã、æ¢åã®ã«ã¹ã¿ã ãã¡ã¤ã³ã¯ 2016 å¹´ 12 æã¾ã§èªååãæ¿ããè¡ãã¾ãã。
2016 å¹´ 8 æ 11 æ¥ä»¥åã« Firebase Hosting ã®ã«ã¹ã¿ã ãã¡ã¤ã³ã使ããæ¹ã¯、HTTP/2 ã®ã¡ãªãããåããããã« DNS ã¬ã³ã¼ãã®æ´æ°ãå¿
è¦ã«ãªãã¾ã。dig <your-site>.firebaseapp.com ãå®è¡ããã¨、æ¢ã«ãµã¤ãã SNI ã«ãªã£ã¦ãããã©ããã確èªã§ãã¾ã。çµæã« s-sni.firebaseapp.com ã¨è¡¨ç¤ºãããå ´å、ãµã¤ãã¯æ¢ã«ç§»è¡ããã¦ãã¾ã。
CNAME ã使ã£ã¦ããå ´å、DNS ã s-sni.firebaseapp.com ã«åããããæ´æ°ããã¨ç§»è¡ã§ãã¾ã。A ã¬ã³ã¼ãã使ã£ã¦ããå ´å、次ã®ããã«æ´æ°ãã¦ãã ãã。
151.101.1.195
151.101.65.195
DNS ã夿´ãã¦ãããåæ ãããã¨、ãµã¤ãã HTTP/2 ã§åä½ããããã«ãªãã¾ã。å¹´æ«ã¾ã§ã«、ãã¹ã¦ã® Firebase Hosting ã®ãã©ãã£ãã¯ã HTTP/2 㨠SNI ã«ç§»è¡ãããäºå®ã§ã。ãã®ãã、SNI ã«ãã£ã¦ã¦ã¼ã¶ã¼ã«ã©ã®ãããªå½±é¿ãåºããå¿é
ãªæ¹ã¯、ãµãã¼ãã¾ã§ãé£çµ¡ ãã ãã。
Firebase Hosting ãç®æãã¦ããã®ã¯、ããã°ã¬ãã·ã ã¦ã§ãã¢ããªéçºã®ãã¹ã ãã©ã¯ãã£ã¹ã誰ããå©ç¨ã§ããããã«ãããã¨ã§ã。HTTP/2 ã¯ããã«åãã䏿©ã§ã。ã¿ãªããã使ããã³ã³ãã³ããè¦ãã®ã楽ãã¿ã«ãã¦ãã¾ã。
Posted by Khanh LeViet - Developer Relations Team