AWS S3, CloudFront සහ Cloudflare එකතු කරලා ස්ථිර ලේඛන අඩවියක් හදනකොට, බොහෝ වෙලාවේ ලේඛන පත්රිකා වලට නොගැලපෙන ගැටළු හමුවෙයි. මේ ලිපියෙන් එවැනි ගැටළු හඳුනාගෙන, ඒවාට ක්රියාත්මක විසඳුම් ඉදිරිපත් කරමු.
ගැටළු 1 – බ්රවුසරයේ 301/ HSTS කෑෂ් : HTTPS සහ redirect වෙනස්කම් Incognito මෝඩ් එකේ හොඳට වැඩ කරනවා, නමුත් සාමාන්ය බ්රවුසරයෙන් පරණ redirect හෝ "Not Secure" අනතුරු ඇඟවීමක් දිස් වෙනවා. මෙයට හේතුව බ්රවුසරය 301 redirect සහ HSTS ප්රතිපත්ති අතිශය කෑෂ් කරගෙන ඉදිරියට යාමයි.
විසඳුම: chrome://net-internals/#hsts වෙත ගිසිලා HSTS කෑෂ් ඉවත් කර, Ctrl+Shift+R (හෝ Cmd+Shift+R) න් හාර්ඩ් රීලෝඩ් එකක් කරන්න. ඉන්පසු Incognito කවුළුවකින් තහවුරු කරගන්න.
ගැටළු 2 – S3 REST Endpoint හි Subdirectory Index නොපෙන්වීම : /iplusflow යන්න 403 error දෙයි, /iplusflow/ යන්න object එකක් බාගත කරයි, /iplusflow/index.html යන්න නියම HTML පිටුවක් දෙනවා. මෙය CloudFront හි Default Root Object එක root (/) පමණක් අදාළ වන බැවින් S3 REST API එක object lookup ලෙස ගනී.
විසඳුම: CloudFront තුළ URL rewrite එකක් සකස් කරන්න, හෝ S3 static website endpoint එක භාවිතා කර directory‑style routing ක්රියාත්මක කරන්න.
ගැටළු 3 – CloudFront Function Event තේරීම : Function එක Viewer Response event එකට සම්බන්ධ කළාම 503 error එකක් ලැබෙයි, request object එක අතුරුදහන් වේ. Viewer Response event එකට response object එකක් අවශ්යයි, URI rewrite එක Viewer Request event එකේ කල යුතුය.
විසඳුම: URL rewrite logic එක Viewer Request event එකට ඇලවී, වෙනස් කළ request object එකම return කරන්න.
ගැටළු 4 – Trailing Slash නොමැතිව Relative Asset ගැටළුව : /iplusflow/ හි CSS, JS සාර්ථකව ලෝඩ් වේ, නමුත් /iplusflow හි එම සම්පත් /styles.css ලෙස වැරදි මාර්ගයෙන් ඇසෙයි. බ්රවුසරය අවසන් segment එක file එකක් ලෙස ගණනාවට පත් කරයි.
විසඳුම: directory request එක trailing slash එකක් එක්කර redirect කරන්න, හෝ CloudFront Function එකෙන් index.html වෙත rewrite කර දෙන්න.
ශ්රී ලංකාවට ඇති වැදගත්කම
- සිසුන් – AWS හා CloudFront භාවිතයෙන් static site hosting කරන්නේ කෙසේදැයි පළපුරුදු වීම, ග්රැජුඇට් පද්ධතිවලට සූදානම් වීම.
- ඩෙවලපර්ලා – redirect caching, HSTS, URL rewrite වැනි නියමයන් තේරුම් ගනිමින්, ලෝක වෙබ් ප්රමිතීන්ට ගැළපෙන නිවැරදි ආකෘති නිර්මාණය කළ හැකිය.
- ව්යාපාර – CloudFront Function එකක් භාවිතා කරමින් වියදම් අඩු කර, අඩු latency සමඟ පාරිභෝගිකයින්ට වේගවත් අන්තර්ගතය ලබා දිය හැකිය.
මෙම තොරතුරු නිවැරදිව අවබෝධ කරගත් පසු, ශ්රී ලංකාවේ තාක්ෂණික ව්යාපාරිකයන්ට AWS පදනම්විත static site එකක් ඉතා කාර්යක්ෂමව, අඩු පිරිවැයෙන් ඉදිරිපත් කළ හැකිය.
අවසන් වශයෙන්, CloudFront Function එකක් (301 redirect + index.html rewrite) එක්කලොත් බොහෝ routing ගැටළු සම්පූර්ණයෙන්ම නිරාකරණය වේ. ඔබේ static වෙබ් අඩවිය S3 හරහා හොස්ට් කිරීමට අදම මේ ක්රමය අත්හදා බලන්න.