Add static 404 page (#2199)

Signed-off-by: Daniel Gray <dngray@privacyguides.org>
Signed-off-by: mfwmyfacewhen <94880365+mfwmyfacewhen@users.noreply.github.com>
This commit is contained in:
jonah committed 2023-06-19 13:00:08 -05:00
1 parent 1487ad6dca
commit abf6d78944
5 files changed
+40 -27

No files matched your search

+2
View File
@@ -2,6 +2,8 @@ site
/i18n/
/includes/*
!/includes/*.en.*
/static/i18n/*
!/static/i18n/*.en.*
/theme/overrides/*
!/theme/overrides/*.en.*
# include Bagnard font in social card
+5
View File
@@ -35,3 +35,8 @@ files:
translation_replace:
"en.": ""
skip_untranslated_files: false
- source: "/static/i18n/*.en.*"
translation: "/static/i18n/%file_name%.%two_letters_code%.%file_extension%"
translation_replace:
"en.": ""
skip_untranslated_files: false
-18
View File
@@ -1,18 +0,0 @@
---
hide:
- feedback
meta:
- property: "robots"
content: "noindex, nofollow"
---
# 404 - Not Found
We couldn't find the page you were looking for! Maybe you were looking for one of these?
- [Introduction to Threat Modeling](basics/threat-modeling.md)
- [Recommended DNS Providers](dns.md)
- [Best Desktop Web Browsers](desktop-browsers.md)
- [Best VPN Providers](vpn.md)
- [Privacy Guides Forum](https://discuss.privacyguides.net)
- [Our Blog](https://blog.privacyguides.org)
+9 -9
View File
@@ -32,44 +32,44 @@
X-XSS-Protection = "0"
X-Content-Type-Options = "nosniff"
Strict-Transport-Security = "max-age=63072000; includeSubDomains; preload"
Content-Security-Policy = "default-src 'none'; script-src https://www.privacyguides.org https://api.privacyguides.net 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; font-src 'self'; img-src data: 'self'; connect-src https://api.github.com https://*.privacyguides.net 'self'; frame-src https://*.privacyguides.net; frame-ancestors 'none'"
Content-Security-Policy = "default-src 'none'; script-src https://www.privacyguides.org https://api.privacyguides.net 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; font-src 'self' data:; img-src data: 'self'; connect-src https://api.github.com https://*.privacyguides.net 'self'; frame-src https://*.privacyguides.net; frame-ancestors 'none'"
[[headers]]
for = "/:lang/about/donate/"
[headers.values]
Content-Security-Policy = "default-src 'none'; script-src https://opencollective.com https://www.privacyguides.org https://api.privacyguides.net 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; font-src 'self'; img-src https://opencollective.com data: 'self'; connect-src https://api.github.com https://*.privacyguides.net 'self'; frame-src https://opencollective.com; frame-ancestors 'none'"
Content-Security-Policy = "default-src 'none'; script-src https://opencollective.com https://www.privacyguides.org https://api.privacyguides.net 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; font-src 'self' data:; img-src https://opencollective.com data: 'self'; connect-src https://api.github.com https://*.privacyguides.net 'self'; frame-src https://opencollective.com; frame-ancestors 'none'"
[[headers]]
for = "/:lang/tor/"
[headers.values]
Content-Security-Policy = "default-src 'none'; script-src https://www.privacyguides.org https://api.privacyguides.net 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; font-src 'self'; img-src data: 'self'; connect-src https://api.github.com https://*.privacyguides.net 'self'; frame-src https://snowflake.torproject.org; frame-ancestors 'none'"
Content-Security-Policy = "default-src 'none'; script-src https://www.privacyguides.org https://api.privacyguides.net 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; font-src 'self' data:; img-src data: 'self'; connect-src https://api.github.com https://*.privacyguides.net 'self'; frame-src https://snowflake.torproject.org; frame-ancestors 'none'"
[[redirects]]
from = "/es/*"
to = "/es/404/index.html"
to = "/i18n/404.es.html"
status = 404
[[redirects]]
from = "/fr/*"
to = "/fr/404/index.html"
to = "/i18n/404.fr.html"
status = 404
[[redirects]]
from = "/he/*"
to = "/he/404/index.html"
to = "/i18n/404.he.html"
status = 404
[[redirects]]
from = "/it/*"
to = "/it/404/index.html"
to = "/i18n/404.it.html"
status = 404
[[redirects]]
from = "/nl/*"
to = "/nl/404/index.html"
to = "/i18n/404.nl.html"
status = 404
[[redirects]]
from = "/*"
to = "/en/404/index.html"
to = "/i18n/404.en.html"
status = 404
+24
View File
@@ -0,0 +1,24 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, viewport-fit=cover">
<title>404 Not Found</title>
<style type="text/css">@font-face{font-family:FSEX300;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAAKAIAAAwAgT1MvMlysuCIAAACsAAAAYGNtYXBnwSHmAAABDAAAAXpnbHlmFAN22gAAAogAAA3gaGVhZPkv95UAABBoAAAANmhoZWEA1AA0AAAQoAAAACRobXR4AcwBcgAAEMQAAACKbG9jYXk4deYAABFQAAAAim1heHAASAAmAAAR3AAAACBuYW1loxsDLAAAEfwAAAO6cG9zdAdqB1sAABW4AAAAqgAEAFABkAAFAAAAcABoAAAAFgBwAGgAAABMAAoAKAgKAgsGAAcHAgQCBOUQLv8QAAAAAALNHAAAAABQT09QAEAAIQB6AIL/4gAAAIIAHmARAf///wAAAEYAWgAAACAAAAAAAAMAAAADAAAAHAABAAAAAAB0AAMAAQAAABwABABYAAAAEgAQAAMAAgAhACkALAAuADkAWgB6/////wAAACEAKAAsAC4AMABBAGH//////+D/2v/Y/9f/1v/P/8kAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAIDAAAEAAUABgcICQoLDA0ODwAAAAAAAAAQERITFBUWFxgZGhscHR4fICEiIyQlJicoKQAAAAAAACorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAFAAAADwAWgALAA8AADcjFSM1IzUzNTMVMwcjNTM8ChQKChQKChQUMhQUHgoKUBQAAAABABT/7AA8AFoAEwAAFyM1IzUjNTM1MzUzFSMVIxUzFTM8FAoKCgoUCgoKChQKFDIUCgoUMhQAAAEAFP/sADwAWgATAAA3IxUjFSM1MzUzNSM1IzUzFTMVMzwKChQKCgoKFAoKChQKChQyFAoKFAAAAQAe/+wAPAAUAAkAABcjFSM1MzUjNTM8ChQKCh4KCgoKFAAAAQAeAAAAPAAUAAMAADcjNTM8Hh4AFAAAAgAUAAAAUABaAAsAFwAANyMVIzUjNTM1MxUzBzUjNTM1IxUzFSMVUAooCgooChQKChQKCgoKCkYKCkYoFAooFAoAAAABAAoAAAA8AFoACQAANyM1IzUzNTM1MzwUHhQKFAA8CgoKAAABAAoAAABGAFoAHQAANyM1MzUzNTM1MzUjFSM1MzUzFTMVIxUjFSMVIxUzRjwKCgoKFBQKKAoKCgoKKAAUCgoKHhQUCgoeCgoKCgAAAQAKAAAARgBaABsAADcjFSM1IzUzFTM1IzUzNSMVIzUzNTMVMxUjFTNGCigKFBQUFBQUCigKCgoKCgoUFB4KHhQUCgoeCgAAAQAKAAAAUABaABEAADcjFSM1IzUzNTMVIxUzNTMVM1AKFCgKFAoUFAoUFBQUMjIKKCgAAAEACgAAAEYAWgATAAA3IxUjFSM1MzUzNSM1MxUjFTMVM0YKCigeCig8KB4KFAoKCgoUMgoeCgAAAgAKAAAARgBaABMAFwAANyMVIzUjNTM1MzUzFSMVIxUzFTMHNSMVRgooCgoKHgoKFAoUFAoKCjIKFAoKCgooKCgAAAABAAoAAABGAFoAEQAANyMVIxUjFSM1MzUzNTM1IzUzRgoKChQKCgooPEYUFB4eFBQKCgAAAwAKAAAARgBaABMAGQAfAAA3IxUjNSM1MzUjNTM1MxUzFSMVMyc1IxUzFRc1IzUjFUYKKAoKCgooCgoKFBQKCgoKCgoKHgoeCgoeCgoeFAooFAoeAAAAAAIACgAAAEYAWgATABcAADcjFSMVIzUzNTM1IzUjNTM1MxUzBzUjFUYKCh4KChQKCigKFBQeChQKCgoKKAoKKCgoAAAAAgAKAAAARgBaAA8AEwAANyM1IxUjNTM1MzUzFTMVMwc1IxVGFBQUCgoUCgoUFAAeHkYKCgoKHh4eAAAAAwAKAAAARgBaAAsADwATAAA3IxUjNTMVMxUjFTMnNSMVFzUjFUYKMjIKCgoUFBQUCgpaCh4KCh4eKB4eAAAAAAEACgAAAEYAWgATAAA3IxUjNSM1MzUzFTMVIzUjFTM1M0YKKAoKKAoUFBQUCgoKRgoKFBRGFAAAAgAKAAAARgBaAAsAEwAANyMVIxUjNTMVMxUzBzUjNSMVMzVGCgooKAoKFAoKChQKCloKCjIyCkYKAAAAAQAKAAAARgBaAAsAADcjNTMVIxUzFSMVM0Y8PCgeHigAWgoeCh4AAAEACgAAAEYAWgAJAAA3IxUzFSMVIzUzRigeHhQ8UB4KKFoAAAEACgAAAEYAWgATAAA3IzUjNTM1MxUzFSM1IxUzNSM1M0YyCgooChQUFAoeAApGCgoUFEYUCgAAAQAKAAAARgBaAAsAADcjNSMVIzUzFTM1M0YUFBQUFBQAKChaKCgAAAEAFAAAADwAWgALAAA3IzUzNSM1MxUjFTM8KAoKKAoKAApGCgpGAAABAAoAAABGAFoACwAANyMVIzUjNTMVMzUzRgooChQUFAoKChQUUAAAAQAKAAAARgBaABcAADcjNSM1IxUjNTMVMzUzNTMVIxUjFTMVM0YUCgoUFAoKFAoKCgoAFBQoWigUFBQUChQAAAEACgAAAEYAWgAFAAA3IzUzFTNGPBQoAFpQAAABAAoAAABQAFoAEwAANyM1IxUjNSMVIzUzFTMVMzUzNTNQFAoKChQUCgoKFAA8Hh48WhQKChQAAAEACgAAAFAAWgATAAA3IzUjNSM1IxUjNTMVMxUzFTM1M1AUCgoKFBQKCgoUAB4KCjJaFAoKKAAAAgAKAAAARgBaAAsADwAANyMVIzUjNTM1MxUzBzUjFUYKKAoKKAoUFAoKCkYKCkZGRgAAAAIACgAAAEYAWgAJAA0AADcjFSMVIzUzFTMHNSMVRgoeFDIKFBQyCihaCh4eHgAAAAIACv/sAEYAWgARABUAABcjNSM1IzUjNTM1MxUzFSMVMyc1IxVGFAoUCgooCgoKFBQUCgoKRgoKRhQURkYAAAACAAoAAABGAFoADwATAAA3IzUjNSMVIzUzFTMVIxUzJzUjFUYUCgoUMgoKChQUAB4KKFoKHhQUHh4AAAABAAoAAABGAFoAIwAANyMVIzUjNTMVMzUjNSM1IzUjNTM1MxUzFSM1IxUzFTMVMxUzRgooChQUCgoKCgooChQUCgoKCgoKCgoKFAoKChQKCgoKFAoKCgAAAQAKAAAARgBaAAcAADcjFSM1IzUzRhQUFDxQUFAKAAABAAoAAABGAFoACwAANyMVIzUjNTMVMzUzRgooChQUFAoKClBQUAAAAQAKAAAARgBaAA8AADcjFSMVIzUjNSM1MxUzNTNGCgoUCgoUFBQUCgoKCkZGRgAAAQAKAAAAUABaABMAADcjFSM1IxUjNSM1MxUzNTMVMzUzUAoUChQKFAoKChQeHh4eHjw8Hh48AAABAAoAAABGAFoAHwAANyM1IzUjFSM1MzUzNSM1IzUzFTMVMzUzFSMVIxUzFTNGFAoKFAoKCgoUCgoUCgoKCgAeCigeChQKFBQKHhQKFAoAAAEACgAAAEYAWgAPAAA3IxUjFSM1IzUjNTMVMzUzRgoKFAoKFBQUMgooKAooKCgAAAEACgAAAEYAWgAXAAA3IzUzNTM1MzUzNSM1MxUjFSMVIxUjFTNGPAoKCgooPAoKCgooAB4KCgoUCh4KCgoUAAACAAoAAABGAEYADQARAAA3IzUjNTM1MzUjNTMVMwc1IxVGMgoKHh4oChQUAAoUChQKCjIUFAAAAAIACgAAAEYAWgAJAA0AADcjFSM1MxUzFTMHNSMVRgoyFB4KFBQKCloUCjIyMgAAAAEACgAAAEYARgATAAA3IxUjNSM1MzUzFTMVIzUjFTM1M0YKKAoKKAoUFBQUCgoKMgoKCgoyCgAAAgAKAAAARgBaAAkADQAANyM1IzUzNTM1Mwc1IxVGMgoKHhQUFAAKMgoUUDIyAAAAAgAKAAAARgBGAA0AEQAANyMVMxUjNSM1MzUzFTMHNSMVRigeKAoKKAoUFB4UCgoyCgoUFBQAAAABAAoAAABGAFoADwAANyMVIzUjNTM1MzUzFSMVM0YeFAoKCigeHigoKAoeCgoeAAACAAr/4gBGAEYADQARAAAXIxUjNTM1IzUjNTM1Mwc1IxVGCjIoHgoKMhQUFAoKFAoyCjwyMgAAAAEACgAAAEYAWgALAAA3IzUjFSM1MxUzFTNGFBQUFB4KADw8WhQKAAACAAoAAABGAGQAAwANAAA3IzUzFyM1MzUjNTMVMzIUFBQ8FBQoFFAUZAoyCjwAAAACAAr/4gA8AGQAAwANAAA3IzUzFSMVIzUzNSM1MzwUFAooHhQoUBR4CgpQCgAAAAABAAoAAABGAFoAFwAANyM1IzUjFSM1MxUzNTM1MxUjFSMVMxUzRhQKChQUCgoUCgoKCgAUCh5aMgoUFAoKCgAAAQAKAAAARgBaAAkAADcjNTM1IzUzFTNGPBQUKBQACkYKUAAAAQAKAAAAUABGAA0AADcjNSMVIzUjFSM1MxUzUBQKCgoUPAoAPDIyPEYKAAABAAoAAABGAEYACQAANyM1IxUjNTMVM0YUFBQyCgA8PEYKAAACAAoAAABGAEYACwAPAAA3IxUjNSM1MzUzFTMHNSMVRgooCgooChQUCgoKMgoKMjIyAAAAAgAK/+IARgBGAAkADQAANyMVIxUjNTMVMwc1IxVGCh4UMgoUFAoKHmQKMjIyLine truncated
<body onkeydown="window.location.href='https://www.privacyguides.org'">
<a href='https://www.privacyguides.org/'></a>
<div class="container">
<span class="title">404 Not Found!</span>
<p>
This means that your browser was able to communicate with your given server, but the server could not find
what was requested.<br><br>
* Make sure the url is correct.<br>
* Don't panic.
</p>
<div>Press any key to continue<span id="blink">_</span></div>
</div>
</body>
</html>