[ð ] GitHub Pagesããã°ã«èšªåè ã«ãŠã³ã¿ãŒãä»ãã
âš GPT-5.5ã®èŠçŽ ã
éçãªGitHub Pagesããã°ã«ç¡ææ ã®Cloudflare WorkerãšD1ãã€ãªããæ¢åã®GA环ç©å€ã掻ãããªããã仿¥ã®èšªåæ°ãšèšäºå¥ã®é²èЧæ°ã衚瀺ã§ããããã«ããèšé²ã
ããã°ã«èšªåè ã«ãŠã³ã¿ãŒãä»ããããªã£ãã
æ©èœãã®ãã®ããããããã§ã¯ãªãããããéã ãããŸãã«ãåœç¶ã®æ©èœã®ããã«æããã®ã«ãGitHub Pagesã§äœã£ãéçããã°ã«ã¯èªç¶ã«ã¯ä»ããŠããªãã£ãã
Google Analyticsã¯ãã§ã«å ¥ããŠãã£ããéå¶è ã§ããèªåã¯GAã«å ¥ãã°èšªåè æ°ãé²èЧæ°ãèŠããããããã©ããã¯ãããã°ã®äžã«èŠããæ°åã§ã¯ãªãã£ãã蚪åè ã¯ããã®ããã°ã仿¥ãèªãŸããŠããã®ããæè¿ã®èšäºãã©ããããèªãŸããŠããã®ããç¥ãããšãã§ããªãã
Naver Blogã®ããã«ã仿¥ã环èšãèšäºå¥é²èЧæ°ãå°ããèŠããæããæ¬²ããã£ããèŠæ ã®ããã®æ°åãšãããããããã°ãæ»ãã éçããŒãžã§ã¯ãªããä»ãèªãŸãç¶ããŠãããšããä¿¡å·ã«è¿ãã£ãã
ã ããåé¡ã¯åçŽã ã£ãã
ç¡æã®éçããã°ãšããå©ç¹ã¯ä¿ã£ããŸãŸã蚪åçµ±èšã ããæ¬åœã«å°ããåçã«ä»ããããªãã ãããïŒ
ãŸãæ¡ä»¶ã決ãã
蚪åè ã«ãŠã³ã¿ãŒãã²ãšã€ä»ããããã ãã«ãæ§é ã倧ãããªãã®ã¯å«ã ã£ãã
æåããããã€ãæ¡ä»¶ã決ããã
- GitHub PagesãšJekyllã§æžãæµãã¯ç¶æããã
- ææãµãŒããŒã¯äœ¿ããªãã
- Cloudflareã§ãFirebaseã§ããç¡ææ ã®äžã§è§£æ±ºããã
- ãããã£ãŒã«ä»è¿ã«å°ããä»ããã
- ã¢ãã€ã«ã§ãå€ã«é·ããªããªãããã«ããã
- ããã°å šäœã®çµ±èšã ãã§ãªããèšäºå¥ã®é²èЧæ°ãèŠããã
- æ¢åã®GA环ç©å€ãæšãŠãªãã
æåŸã®æ¡ä»¶ãç¹ã«éèŠã ã£ãã
æ°ããã«ãŠã³ã¿ãŒãä»ãããããšãã£ãŠãé²èЧæ°ã0ããå§ãŸããšãããããããã°ã¯ãã§ã«éå¶äžã§ãGAã«ã¯ä»¥åããç©ã¿äžãã£ãé²èЧæ°ããã£ãããšã¯ããGAã ããèªã¿ç¶ããã®ã¯ãèªåãæ¬²ããã£ãã«ãŠã³ã¿ãŒã®æèŠãšã¯è·é¢ããã£ãã
GAãèªãã ãã§çµãããšæã£ãŠãã
æåã¯Google Analytics APIãèªãã°ãããšæã£ãŠããã
GAã¯ãã§ã«ããŒã¿ãæã£ãŠããã®ã§ãCloudflare Workerã²ãšã€ãGA APIãåŒã³åºããŠæ°åãè¿ãã°ããããã ã£ããå®éã«ãµãŒãã¹ã¢ã«ãŠã³ããäœããGAããããã£ã«æš©éãä»ããAPIåŒã³åºããŸã§ã¯ã§ããã
ãšãããå®éã«ä»ããŠã¿ããšãèªåãæ¬²ããã£ããã®ãšã¯éã£ãŠããã
GAã¯åæããŒã«ã ãéå¶è
ãããšããæµããèŠãã«ã¯ããããããã°ç»é¢ã§ããåå¿ãã蚪åè
ã«ãŠã³ã¿ãŒãšããŠäœ¿ãã«ã¯åŸ®åŠã ã£ããç¹ã«ä»æ¥ã®æ°åãåé¡ã ã£ããèªåãä»å
¥ã£ãã°ãããªã®ã«ä»æ¥ã®å€ã0ã«èŠãããšã蚪åè
ããããã°ãã å£ããŠããããã«èŠããã
ãŸããææšåãçŽããããã£ããactive usersãšpage viewsã¯å¥ã®å€ã ã蚪åè æ°ãå³å¯ã«åãããšãããšæ°åãããªãæ§ããã«èŠããpage viewã䜿ããšäœæãšããŠã¯èªç¶ã ããååã«ã¯æ³šæãå¿ èŠã«ãªãã
çµå±ã倿ã¯åçŽã ã£ãã
GAã¯éå»ã®åºæºå€ãšããŠäœ¿ããããããå¢ããã«ãŠã³ãã¯èªåã§çŽæ¥åããã
baselineãšå¢åãåãã
æçµçãªæ§é ã¯ããããã
å
¬éé²èŠ§æ° = GA baseline + Cloudflare D1å¢å
GA baselineã¯ããã§ã«ç©ã¿äžãã£ãŠããæ°åã ãåºæºæ¥ã決ãããã®æç¹ãŸã§ã®å šäœé²èЧæ°ãšèšäºå¥é²èЧæ°ãä¿åããã
ãã®ããšããã¯Cloudflare WorkerãçŽæ¥ã«ãŠã³ãããã蚪åè ãããã°ã«å ¥ããšJavaScriptãWorkerãåŒã³åºããWorkerã¯D1ã«ä»æ¥/æ/å šäœ/page pathå¥ã®å¢åãèšé²ããã
æŽçãããšãããªãã
æ¢åã®çޝç©å€: Google Analytics baseline
æ°ããå¢å: Cloudflare Worker + D1
å
ŽAPI: Cloudflare Worker
ããã°è¡šç€º: Jekyll include + JavaScript
ãã®æ¹åŒãæ°ã«å ¥ã£ãçç±ã¯ãã©ã¡ããæšãŠãªãããã ã
GAã®æ¢åããŒã¿ã¯æŽ»ãããåæã«ãããããã®ã«ãŠã³ãã¯ããã°ç»é¢ã§ããåå¿ããããã«ããã
ãªãCloudflare WorkerãšD1ã ã£ãã®ã
Firebaseãåè£ã ã£ããããã©ãã®çšåºŠã®æ©èœã«ã¯ãCloudflareã®ã»ããåçŽã ã£ãã
GitHub Pagesã¯éçãµã€ããªã®ã§ããµãŒããŒã³ãŒãã眮ãå ŽæããªããWorkerã¯ãã®ç©ºçœãå°ããåããŠããããD1ã¯SQLiteããŒã¹ãªã®ã§ã蚪åè ã«ãŠã³ã¿ãŒã®ãããªåçŽãªæ°åã®ä¿åã«ã¯ååã ã£ãã
è²»çšæ¡ä»¶ã«ãåã£ãŠãããå人ããã°ã®èšªåè ã«ãŠã³ã¿ãŒçšåºŠãªãç¡ææ ã®äžã§åŠçã§ãããæ¥ã«ããããã®äººãæ¥ãã°ã«ãŠã³ããå€å°ã¶ããå¯èœæ§ã¯ããããèšäºãã®ãã®ãå£ããããã§ã¯ãªããããããããã¯æ±ºæžã·ã¹ãã ã§ãéèå°åž³ã§ããªãã
èªåãæ¬²ããã£ãã®ã¯æ£ç¢ºãªäŒèšã§ã¯ãªããããã°ãèªãŸããŠãããšããæµããèŠããããšã ã£ãã
botãšéè€èšªåã¯ã»ã©ã»ã©ã«é²ãã
å ¬éããŒãžã«ã«ãŠã³ã¿ãŒãä»ãããšãbotãæ°åãå¢ãããã
å®ç§ã«é²ãã®ã¯é£ããããããŠå³ãããããããšãããã£ãŠèªåãæ¬²ããã£ãã«ãŠã³ã¿ãŒã®æãããé ããããèªåã¯Naver Blogã®ããã«ãããçšåºŠãããã«æ°ããããã»ããæãã§ããã
ããã§Workerã§ã¯ããã€ãã ãåŠçããã
- æãããªbot user-agentã¯é€å€ããã
- åã蚪åè ãšåãããŒãžã®çµã¿åããã¯ãäžå®æéå ã«ã¯åã³æ°ããªãã
- èšäºå¥é²èЧæ°ãåãæ¹åŒã§ãpathåºæºã®å¢åãç©ã¿äžããã
ã€ãŸããå³å¯ãªåæããŒã«ã§ã¯ãªããå ¬éçšã®èšªåã«ãŠã³ã¿ãŒã«åãããã
ç»é¢ã«ã¯å°ããä»ãã
æåã¯çµ±èšãè€æ°ã®æ ã§èŠããããšãããããã©ãããã£ãŒã«æšªã«å ¥ãUIã¯å°ãããªããã°ãªããªãã£ããæ°åãå€ããªããšããããããã°ã®æåã®ç»é¢ãæ£ããã£ãã
ã ããæçµçã«æ®ããã®ã¯äžã€ã ã
仿¥ / æ / åèš
仿¥ã¯ä»ããã°ãèªãŸããŠããæããåºããæã¯æè¿ã®èŠæš¡æãèŠãããåèšã¯ããã°ãç©ã¿äžããŠããæéãèŠããã
èšäºäžèЧã«ã¯ãåèšäºããšã«é²èЧæ°ãä»ããã
é²èŠ§æ° 10å
ãã®å€ãå šäœçµ±èšãšåãæ§é ã ã
èšäºå¥é²èŠ§æ° = GAèšäºå¥baseline + Cloudflare D1èšäºå¥å¢å
ããšãã°ãããèšäºãGAåºæºã§9åé²èЧãããŠããç¶æ ã§ãæ°ããã«ãŠã³ã¿ãŒã«åãæ¿ããããšã«ãã1åèªãŸãããªããç»é¢ã«ã¯10åãšè¡šç€ºãããã
ããããã¡ã°ãèªç¶ã ã£ããéå»ã®é²èЧæ°ã¯æšãŠããããããã®é²èЧæ°ã¯ããç©ã¿äžããã
çµæ
çµæãšããŠãããã°ã®ãããã£ãŒã«ä»è¿ã«ã¯ããããæ°åãä»ããã
仿¥ 1 / æ 66 / åèš 4,944
ãããŠèšäºäžèЧã«ã¯ããããã圢ã§é²èЧæ°ãä»ãã
é²èŠ§æ° 10å
æ©èœã²ãšã€ã ããèŠããšå°ãããããã©ãã®äœæ¥ã¯ããªãæ°ã«å ¥ã£ãŠããã
åé¡ã¯æç¢ºã ã£ããGitHub Pagesããã°ã«ã¯èšªåè ã«ãŠã³ã¿ãŒããªãã£ããGAã¯ãã£ãããå ¬éç»é¢ã®ã«ãŠã³ã¿ãŒãšããŠã¯è¶³ããªãã£ãããšã¯ãããããã°ã²ãšã€ã®ããã«ãµãŒããŒã倧ããäœãããããªãã£ãã
ã ããæ¢åã®GAããŒã¿ã¯baselineãšããŠæŽ»ãããCloudflare WorkerãšD1ã§ãã以éã®å¢åã ããçŽæ¥æ°ããæ§é ãä»ããã
éçããã°ã®å©ç¹ã¯ãã®ãŸãŸæ®ãããMarkdownã§èšäºãæžããGitHub Pagesã§é ä¿¡ããç¶æè²»ã¯ã»ãŒ0åã«è¿ãããã®ä»£ãããæ¬åœã«è¶³ããªãéšåã«ã ãå°ããªãµãŒããŒã¬ã¹ã®éšåãèŒããã
ããšã§ãã®ããã°ãããŒããã©ãªãªã®ããã«èŠããæ©äŒãããã°ãããããäœæ¥ã®ã»ããããã説æããããæ°ãããã倧ãããªæ©èœã§ã¯ãªãããå®éã®äžäŸ¿ããåºçºããè²»çšãšè€éããå¶éããéçšã§ãã圢ãŸã§æåŸã«ä»ãåã£ãããã ã
ã³ã¡ã³ããã