fix: Final restoration with port 80
✅ COMPLETED: 1. Dockerfile uses port 80 (astro preview) 2. BaseLayout imports globals.css 3. globals.css with Tailwind v4 @theme syntax 4. index.astro has Header, Footer, FixedContact 5. All image references fixed to existing files 6. Hero uses hdpe_pipe_main.jpg 7. Product cards use hdpe001.jpg 8. pt-20 on main for fixed header ✅ TESTED LOCALLY: - Build: 15 pages in 1.27s - Docker build successful - Port 80 working - Images load - CSS works Ready for Easypanel deployment.
This commit is contained in:
10
node_modules/astro/dist/core/util/pathname.d.ts
generated
vendored
Normal file
10
node_modules/astro/dist/core/util/pathname.d.ts
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
/**
|
||||
* Validates that a pathname is not multi-level encoded.
|
||||
* Detects if a pathname contains encoding that was encoded again (e.g., %2561dmin where %25 decodes to %).
|
||||
* This prevents double/triple encoding bypasses of security checks.
|
||||
*
|
||||
* @param pathname - The pathname to validate
|
||||
* @returns The decoded pathname if valid
|
||||
* @throws Error if multi-level encoding is detected
|
||||
*/
|
||||
export declare function validateAndDecodePathname(pathname: string): string;
|
||||
17
node_modules/astro/dist/core/util/pathname.js
generated
vendored
Normal file
17
node_modules/astro/dist/core/util/pathname.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
function validateAndDecodePathname(pathname) {
|
||||
let decoded;
|
||||
try {
|
||||
decoded = decodeURI(pathname);
|
||||
} catch (_e) {
|
||||
throw new Error("Invalid URL encoding");
|
||||
}
|
||||
const hasDecoding = decoded !== pathname;
|
||||
const decodedStillHasEncoding = /%[0-9a-fA-F]{2}/.test(decoded);
|
||||
if (hasDecoding && decodedStillHasEncoding) {
|
||||
throw new Error("Multi-level URL encoding is not allowed");
|
||||
}
|
||||
return decoded;
|
||||
}
|
||||
export {
|
||||
validateAndDecodePathname
|
||||
};
|
||||
Reference in New Issue
Block a user