From 10f2863aa444dd421b1ba80ea31fcc71a368d2ba Mon Sep 17 00:00:00 2001 From: xadyz1 Date: Sun, 26 Jul 2026 22:47:19 +0100 Subject: [PATCH] fix: aggressively run fix-htaccess.js in all build lifecycles and add comment bypass to trick hostinger --- package.json | 2 +- scripts/fix-htaccess.js | 7 ++++++- server/package.json | 3 ++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index f0a0494..d3636ef 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "Cross-cutting tooling for ScreenTinker shared assets (transition shader library, etc.)", "license": "MIT", "scripts": { - "build": "npm install --prefix server", + "build": "npm install --prefix server && node scripts/fix-htaccess.js", "postinstall": "node scripts/fix-htaccess.js", "build:manifest": "node shared/Transitions/generate-manifest.js", "test:shaders": "node shared/Transitions/compile-test.js" diff --git a/scripts/fix-htaccess.js b/scripts/fix-htaccess.js index e3c3fbd..1b1cf6a 100644 --- a/scripts/fix-htaccess.js +++ b/scripts/fix-htaccess.js @@ -22,7 +22,12 @@ for (const htaccessPath of possiblePaths) { // Remove the offending line completely content = content.replace(/^.*SetEnv NODE_OPTIONS.*$/gm, ''); - fs.writeFileSync(htaccessPath, content.trim() + '\n', 'utf8'); + // Add a commented-out version to trick Hostinger's auto-injector into thinking it's already there + if (!content.includes('# SetEnv NODE_OPTIONS --use-openssl-ca')) { + content = content.trim() + '\n# SetEnv NODE_OPTIONS --use-openssl-ca\n'; + } + + fs.writeFileSync(htaccessPath, content, 'utf8'); console.log(`[fix-htaccess] Successfully removed SetEnv NODE_OPTIONS!`); fixed = true; } diff --git a/server/package.json b/server/package.json index 76fb8d5..01f8d17 100644 --- a/server/package.json +++ b/server/package.json @@ -6,7 +6,8 @@ "scripts": { "start": "node --env-file-if-exists=.env server.js", "dev": "node --watch --env-file-if-exists=.env server.js", - "test": "node --test --test-concurrency=2" + "test": "node --test --test-concurrency=2", + "postinstall": "node ../scripts/fix-htaccess.js || true" }, "dependencies": { "@azure/msal-node": "^5.2.1",