diff --git a/server.js b/server.js index 149652c..2f69e95 100644 --- a/server.js +++ b/server.js @@ -1658,7 +1658,7 @@ const server=http.createServer(async(req,res)=>{ const u=new URL(req.url,`http://${req.headers.host||'localhost'}`),pathname=decodeURIComponent(u.pathname); // /p/ = member Page Builder pages: dynamic HTML, so it must reach the // API handler rather than the static-file path (which 404s it). - if(pathname==='/health'||pathname.startsWith('/api/')||pathname.startsWith('/tv/')||/^\/p\/\d{1,15}(\/[a-z0-9-]{1,24})?$/.test(pathname))return await handleApi(req,res,pathname); + if(pathname==='/health'||pathname==='/announce.ics'||pathname.startsWith('/api/')||pathname.startsWith('/tv/')||/^\/p\/\d{1,15}(\/[a-z0-9-]{1,24})?$/.test(pathname))return await handleApi(req,res,pathname); if(req.method!=='GET'&&req.method!=='HEAD')return send(res,405,'Method Not Allowed',{'Content-Type':'text/plain; charset=utf-8'}); // Members-area gate: the Circle Method lessons 2-10 + the e-gift cash-out // walkthrough are the PRODUCT — their video FILES require a wallet-verified