Added new default page

This commit is contained in:
Nik Afiq 2025-11-20 23:54:51 +09:00
parent edb60952c7
commit 608eb7b7ae
4 changed files with 216 additions and 1 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.DS_Store

98
http/index.html Normal file
View File

@ -0,0 +1,98 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>nik4nao | Home Network</title>
<style>
:root { color-scheme: dark; }
* { box-sizing: border-box; }
body {
margin: 0;
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
background: radial-gradient(circle at top, #111827, #020617 60%, #000 100%);
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
color: #e5e7eb;
}
.card {
padding: 2.4rem 2.8rem;
border-radius: 1.4rem;
background: rgba(15, 23, 42, 0.95);
box-shadow:
0 0 40px rgba(0,0,0,0.9),
0 0 80px rgba(59,130,246,0.35);
max-width: 540px;
width: 90%;
backdrop-filter: blur(10px);
}
.title {
font-size: 1.6rem;
letter-spacing: 0.12em;
text-transform: uppercase;
opacity: 0.9;
}
.subtitle {
margin-top: 0.4rem;
font-size: 0.95rem;
opacity: 0.7;
}
.badge {
display: inline-block;
margin-top: 1.2rem;
padding: 0.25rem 0.7rem;
font-size: 0.7rem;
border-radius: 999px;
text-transform: uppercase;
letter-spacing: 0.14em;
border: 1px solid rgba(148,163,184,0.7);
opacity: 0.8;
}
.list {
margin-top: 1.4rem;
font-size: 0.9rem;
opacity: 0.9;
line-height: 1.6;
}
.list dt {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New";
font-size: 0.75rem;
text-transform: uppercase;
letter-spacing: 0.16em;
opacity: 0.7;
}
.list dd {
margin: 0 0 0.7rem 0;
}
.hint {
margin-top: 1.2rem;
font-size: 0.8rem;
opacity: 0.55;
}
</style>
</head>
<body>
<main class="card">
<div class="title">nik4nao home node</div>
<div class="subtitle">
This is a private entrypoint. Nothing interesting should be exposed here. 🙂
</div>
<div class="badge">Default nginx vhost</div>
<dl class="list">
<dt>Domain</dt>
<dd>nik4nao.xyz (HTTPS handled by separate vhost)</dd>
<dt>Status</dt>
<dd>Default HTTP site for IP / unknown hostnames.</dd>
</dl>
<div class="hint">
If you reached this page from the public internet, theres probably nothing
else you should be looking at.
</div>
</main>
</body>
</html>

View File

@ -0,0 +1,113 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>nik4nao | Watch Party</title>
<!-- Redirect to /watch-party/ after 5 seconds -->
<meta http-equiv="refresh" content="10;url=/watch-party/">
<style>
:root { color-scheme: dark; }
* { box-sizing: border-box; }
body {
margin: 0;
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
background: radial-gradient(circle at top, #111827, #020617 60%, #000 100%);
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
color: #e5e7eb;
}
.card {
padding: 2.4rem 2.8rem;
border-radius: 1.4rem;
background: rgba(15, 23, 42, 0.95);
box-shadow:
0 0 40px rgba(0,0,0,0.9),
0 0 80px rgba(59,130,246,0.35);
max-width: 540px;
width: 90%;
backdrop-filter: blur(10px);
text-align: left;
}
.title {
font-size: 1.6rem;
letter-spacing: 0.12em;
text-transform: uppercase;
opacity: 0.9;
}
.subtitle {
margin-top: 0.4rem;
font-size: 0.95rem;
opacity: 0.7;
}
.badge {
display: inline-block;
margin-top: 1.2rem;
padding: 0.25rem 0.7rem;
font-size: 0.7rem;
border-radius: 999px;
text-transform: uppercase;
letter-spacing: 0.14em;
border: 1px solid rgba(148,163,184,0.7);
opacity: 0.8;
}
.info {
margin-top: 1.4rem;
font-size: 0.9rem;
opacity: 0.9;
line-height: 1.6;
}
.countdown {
margin-top: 0.8rem;
font-size: 0.85rem;
opacity: 0.7;
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Courier New", monospace;
}
a {
color: #93c5fd;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
</style>
<script>
// Optional visual countdown (doesn't affect redirect)
document.addEventListener("DOMContentLoaded", () => {
const el = document.getElementById("sec");
let s = 10;
setInterval(() => {
if (s > 0) {
el.textContent = s.toString();
s -= 1;
}
}, 1000);
});
</script>
</head>
<body>
<main class="card">
<div class="title">nik4nao.watch</div>
<div class="subtitle">
Home network watch-party node. Youll be redirected to the app shortly.
</div>
<div class="badge">Public entrypoint</div>
<div class="info">
<p>
This domain serves a small watch-party web app running on a private backend.
</p>
<p>
If nothing happens, you can jump directly to
<a href="/watch-party/">/watch-party/</a>.
</p>
</div>
<div class="countdown">
Redirecting in <span id="sec">10</span> seconds…
</div>
</main>
</body>
</html>

View File

@ -40,6 +40,7 @@ server {
listen 443 ssl http2;
server_name nik4nao.xyz;
root /var/www/html;
access_log /var/log/nginx/nik4naoxyz_access.json json if=$is_external;
error_log /var/log/nginx/nik4naoxyz_error.log warn;
@ -73,7 +74,9 @@ server {
# Enforce trailing slash for subpath and land / on /watch-party/
location = /watch-party { return 301 /watch-party/; }
location = / { return 302 /watch-party/; }
location = / {
try_files /nik4nao-xyz-landing.html =404;
}
# Cache versioned static assets aggressively (adjust path if needed)
location ^~ /watch-party/assets/ {