From ddf9640222b1101f1fc8ff5ec6a5cd3677f7dbd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=9Cmit=20Tun=C3=A7?= Date: Thu, 21 May 2026 22:00:58 +0300 Subject: [PATCH] feat: enhance security headers and optimize asset loading for improved performance and user experience --- app/Http/Middleware/EnsureSecurityHeaders.php | 5 +- .../img/photos/truncgil-mobile-app.webp | Bin 0 -> 35628 bytes resources/views/layouts/site.blade.php | 15 +++-- resources/views/partials/footer.blade.php | 20 +++---- .../partials/header-app-development.blade.php | 22 +++---- .../services/app-development.blade.php | 54 ++++++++++++------ 6 files changed, 70 insertions(+), 46 deletions(-) create mode 100644 public/assets/img/photos/truncgil-mobile-app.webp diff --git a/app/Http/Middleware/EnsureSecurityHeaders.php b/app/Http/Middleware/EnsureSecurityHeaders.php index bc770fc..59d5e3d 100644 --- a/app/Http/Middleware/EnsureSecurityHeaders.php +++ b/app/Http/Middleware/EnsureSecurityHeaders.php @@ -41,11 +41,14 @@ class EnsureSecurityHeaders // For general sites: geolocation=(), microphone=(), camera=() is often safe. $response->headers->set('Permissions-Policy', 'geolocation=(), microphone=(), camera=()'); + // Cross-Origin-Opener-Policy: isolate browsing context from cross-origin documents + $response->headers->set('Cross-Origin-Opener-Policy', 'same-origin'); + // Content-Security-Policy (CSP) - Start with upgrade-insecure-requests to force HTTPS assets // A full CSP can be tricky and break scripts. 'upgrade-insecure-requests' is safe and good for mixed content. // We can add 'frame-ancestors' here too if X-Frame-Options is ignored by some. // If the user wants A+, a basic CSP is often enough. - $csp = "upgrade-insecure-requests; block-all-mixed-content;"; + $csp = "upgrade-insecure-requests; block-all-mixed-content; frame-ancestors 'self';"; $response->headers->set('Content-Security-Policy', $csp); return $response; diff --git a/public/assets/img/photos/truncgil-mobile-app.webp b/public/assets/img/photos/truncgil-mobile-app.webp new file mode 100644 index 0000000000000000000000000000000000000000..fb9cc0e4e47fbaef72025737ab6d24569d9e4ee6 GIT binary patch literal 35628 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