落地页
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Anye - Always Nurturing Your Enthusiasm</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
min-height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 400px;
width: 100%;
transition: background-color 0.3s;
}
.avatar {
width: 150px;
height: 150px;
border-radius: 50%;
margin-bottom: 20px;
border: 4px solid var(--link-color);
transition: border-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 10px;
font-size: 2.5em;
transition: color 0.3s;
}
.signature {
font-style: italic;
margin-bottom: 20px;
color: var(--link-color);
}
.contact-links {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.contact-link {
color: var(--link-color);
text-decoration: none;
font-weight: bold;
transition: color 0.3s, transform 0.3s;
display: inline-flex;
align-items: center;
gap: 5px;
}
.contact-link:hover {
transform: scale(1.1);
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<img src="你的logo链接" alt="Logo" class="avatar">
<h1>Name</h1>
<p class="signature">个性签名</p>
<div class="contact-links">
<a href="https://github.com/" class="contact-link" target="_blank" rel="noopener noreferrer">
<i class="fab fa-github"></i> GitHub
</a>
<a href="mailto:Youremail" class="contact-link">
<i class="fas fa-envelope"></i> Email
</a>
<a href="https://t.me/" class="contact-link" target="_blank" rel="noopener noreferrer">
<i class="fab fa-telegram"></i> Telegram
</a>
</div>
</div>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
网站 404 错误页
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>404 Not Found</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 400px;
width: 100%;
transition: background-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 20px;
font-size: 2.5em;
transition: color 0.3s;
}
p {
line-height: 1.6;
margin-bottom: 20px;
}
.icon {
font-size: 64px;
margin-bottom: 20px;
}
.back-link {
color: var(--link-color);
text-decoration: none;
font-weight: bold;
transition: color 0.3s;
}
.back-link:hover {
text-decoration: underline;
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<div class="icon">🔍</div>
<h1>404 Not Found</h1>
<p>抱歉,您请求的页面不存在。</p>
<p>可能是输入的网址有误,或者该页面已被移动或删除。</p>
<a href="/" class="back-link">返回首页</a>
</div>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
网站不存在页
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>404 Not Found</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 400px;
width: 100%;
transition: background-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 20px;
font-size: 2.5em;
transition: color 0.3s;
}
p {
line-height: 1.6;
margin-bottom: 20px;
}
.icon {
font-size: 64px;
margin-bottom: 20px;
}
.back-link {
color: var(--link-color);
text-decoration: none;
font-weight: bold;
transition: color 0.3s;
}
.back-link:hover {
text-decoration: underline;
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<div class="icon">🔍</div>
<h1>404 Not Found</h1>
<p>抱歉,您请求的页面不存在。</p>
</div>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
静态站默认页
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="robots" content="noindex,nofollow">
<title>恭喜,站点创建成功!</title>
<style>
:root {
--bg-color: #f0f0f0;
--text-color: #333;
--link-color: #007bff;
--container-bg: #ffffff;
}
.dark-mode {
--bg-color: #333;
--text-color: #f0f0f0;
--link-color: #66b2ff;
--container-bg: #1c1c1e;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
line-height: 1.6;
margin: 0;
padding: 20px;
transition: background-color 0.3s, color 0.3s;
}
.container {
width: 90%;
max-width: 600px;
margin: 10% auto 0;
background-color: var(--container-bg);
padding: 30px;
border-radius: 10px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
transition: background-color 0.3s;
}
h1 {
color: var(--link-color);
margin-top: 0;
}
ul {
padding-left: 20px;
}
li {
margin-bottom: 10px;
}
a {
color: var(--link-color);
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
.theme-toggle {
position: fixed;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
font-size: 24px;
cursor: pointer;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 600px) {
.container {
width: 100%;
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<h1>恭喜,站点创建成功!</h1>
<h3>这是默认index.html,本页面由系统自动生成</h3>
<p>您可以随时修改、删除或替换此页面。以下是一些有用的链接:</p>
<ul>
<li><a href="https://developer.mozilla.org/zh-CN/docs/Learn/HTML/Introduction_to_HTML" target="_blank" rel="noopener noreferrer">HTML入门教程</a></li>
<li><a href="https://developer.mozilla.org/zh-CN/docs/Learn/CSS/First_steps" target="_blank" rel="noopener noreferrer">CSS入门教程</a></li>
<li><a href="https://developer.mozilla.org/zh-CN/docs/Learn/JavaScript/First_steps" target="_blank" rel="noopener noreferrer">JavaScript入门教程</a></li>
</ul>
<p>祝您开发顺利!</p>
</div>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
PHP 网站默认页
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>PHP 信息页面</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
line-height: 1.6;
margin: 0;
padding: 20px;
transition: background-color 0.3s, color 0.3s;
}
.container {
max-width: 800px;
margin: 0 auto;
background-color: var(--card-bg);
padding: 20px;
border-radius: 8px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
h1, h2 {
color: var(--heading-color);
}
h1 {
text-align: center;
margin-bottom: 30px;
}
ul, ol {
padding-left: 20px;
}
li {
margin-bottom: 5px;
}
.theme-toggle {
position: fixed;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 600px) {
body {
padding: 10px;
}
.container {
padding: 15px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<h1>欢迎使用 PHP!</h1>
<h2>版本信息</h2>
<ul>
<li>PHP版本:<?php echo PHP_VERSION; ?></li>
</ul>
<h2>已安装扩展</h2>
<ol>
<?php
foreach (get_loaded_extensions() as $name) {
echo "<li>$name = " . phpversion($name) . "</li>";
}
?>
</ol>
</div>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
网站停用页
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>404 Not Found</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
--footer-color: #666;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
--footer-color: #999;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 500px;
width: 100%;
margin-bottom: 20px;
transition: background-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 20px;
transition: color 0.3s;
}
p {
line-height: 1.6;
margin-bottom: 20px;
}
.icon {
font-size: 64px;
margin-bottom: 20px;
}
.footer {
text-align: center;
font-size: 12px;
color: var(--footer-color);
margin-top: 20px;
transition: color 0.3s;
}
.footer a {
color: var(--footer-color);
text-decoration: none;
transition: color 0.3s;
}
.footer a:hover {
text-decoration: underline;
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<div class="icon">🛠️</div>
<h1>网站维护中</h1>
<p>非常抱歉,我们的网站正在进行例行维护。我们正在努力改进,以便为您提供更好的服务。</p>
<p>预计恢复时间:<strong>未知</strong></p>
<p>感谢您的耐心等待和理解。</p>
</div>
<footer class="footer">
<a href="https://beian.miit.gov.cn/" target="_blank" rel="noopener noreferrer">ICP备案号</a> |
<a href="http://www.beian.gov.cn/portal/registerSystemInfo" target="_blank" rel="noopener noreferrer">公安备案号</a>
</footer>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
WAF 拦截页 - 禁止访问 (403)
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>请求拦截</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #e74c3c;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #e74c3c;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 400px;
width: 100%;
transition: background-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 20px;
font-size: 2.5em;
transition: color 0.3s;
}
p {
line-height: 1.6;
margin-bottom: 20px;
}
.icon {
font-size: 64px;
margin-bottom: 20px;
}
.back-link {
color: var(--link-color);
text-decoration: none;
font-weight: bold;
transition: color 0.3s;
}
.back-link:hover {
text-decoration: underline;
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<div class="icon">🛑</div>
<h1>请求拦截</h1>
<p>请求携带恶意参数 已被拦截</p>
<p>为了保护系统安全,您的请求已被系统拦截。</p>
<a href="/" class="back-link">返回首页</a>
</div>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
WAF 拦截页 - 网站不存在
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>网站不存在</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 400px;
width: 100%;
transition: background-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 20px;
font-size: 2.5em;
transition: color 0.3s;
}
p {
line-height: 1.6;
margin-bottom: 20px;
}
.icon {
font-size: 64px;
margin-bottom: 20px;
}
.back-link {
color: var(--link-color);
text-decoration: none;
font-weight: bold;
transition: color 0.3s;
}
.back-link:hover {
text-decoration: underline;
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<div class="container">
<div class="icon">🌐</div>
<h1>网站不存在</h1>
<p>网站不存在,请检查域名</p>
<a href="javascript:history.back()" class="back-link">返回上一页</a>
</div>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
WAF 拦截页 - 地区限制
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Access Denied</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 400px;
width: 100%;
transition: background-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 20px;
font-size: 2.5em;
transition: color 0.3s;
}
p {
line-height: 1.6;
margin-bottom: 20px;
}
.icon {
font-size: 64px;
margin-bottom: 20px;
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
.language-toggle {
position: absolute;
top: 20px;
left: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.language-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="Toggle theme">🌓</button>
<button class="language-toggle" onclick="toggleLanguage()" aria-label="Toggle language">🌐</button>
<div class="container" role="main">
<div class="icon" aria-hidden="true">🚫</div>
<h1 id="title">Access Denied</h1>
<p id="message">Your region is blocked from accessing this content.</p>
</div>
<script>
const translations = {
en: {
title: "Access Denied",
message: "Your region is blocked from accessing this content.",
themeLabel: "Toggle theme",
langLabel: "Toggle language"
},
zh: {
title: "地区拦截",
message: "你的区域被禁止访问",
themeLabel: "切换主题",
langLabel: "切换语言"
}
};
let currentLang = navigator.language.startsWith('zh') ? 'zh' : 'en';
function updateContent() {
document.getElementById('title').textContent = translations[currentLang].title;
document.getElementById('message').textContent = translations[currentLang].message;
document.querySelector('.theme-toggle').setAttribute('aria-label', translations[currentLang].themeLabel);
document.querySelector('.language-toggle').setAttribute('aria-label', translations[currentLang].langLabel);
document.documentElement.lang = currentLang;
}
function toggleLanguage() {
currentLang = currentLang === 'en' ? 'zh' : 'en';
updateContent();
}
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
updateContent();
</script>
</body>
</html>
WAF 拦截页 - IP 黑名单
亮色模式 | 深色模式 |
---|
| |
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>IP 黑名单拦截</title>
<style>
:root {
--bg-color: #f0f2f5;
--text-color: #333;
--card-bg: white;
--heading-color: #2c3e50;
--link-color: #3498db;
}
.dark-mode {
--bg-color: #1a1a1a;
--text-color: #e0e0e0;
--card-bg: #2c2c2c;
--heading-color: #ffffff;
--link-color: #63b3ed;
}
body {
font-family: Arial, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
padding: 20px;
box-sizing: border-box;
transition: background-color 0.3s, color 0.3s;
}
.container {
background-color: var(--card-bg);
border-radius: 8px;
padding: 40px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 400px;
width: 100%;
transition: background-color 0.3s;
}
h1 {
color: var(--heading-color);
margin-bottom: 20px;
font-size: 2em;
transition: color 0.3s;
}
p {
line-height: 1.6;
margin-bottom: 20px;
}
.icon {
font-size: 64px;
margin-bottom: 20px;
}
.contact-link {
color: var(--link-color);
text-decoration: none;
font-weight: bold;
transition: color 0.3s;
}
.contact-link:hover {
text-decoration: underline;
}
.theme-toggle {
position: absolute;
top: 20px;
right: 20px;
background: none;
border: none;
color: var(--text-color);
cursor: pointer;
font-size: 24px;
transition: transform 0.3s;
}
.theme-toggle:hover {
transform: scale(1.1);
}
@media (max-width: 480px) {
.container {
padding: 20px;
}
}
</style>
</head>
<body>
<button class="theme-toggle" onclick="toggleTheme()" aria-label="切换主题">🌓</button>
<main class="container">
<div class="icon" aria-hidden="true">🚫</div>
<h1>黑名单拦截</h1>
<p>很抱歉,您的 IP 被禁止访问</p>
<p>如果您认为这是一个错误,请联系我们的支持团队。</p>
<a href="mailto:youremail" class="contact-link">联系支持</a>
</main>
<script>
function toggleTheme() {
document.body.classList.toggle('dark-mode');
localStorage.setItem('theme', document.body.classList.contains('dark-mode') ? 'dark' : 'light');
}
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-mode');
}
const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
function handleThemeChange(e) {
if (savedTheme) return;
if (e.matches) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
mediaQuery.addListener(handleThemeChange);
handleThemeChange(mediaQuery);
</script>
</body>
</html>
Halo Pro “金色传说”
<script>
/* Halo Pro */
document.addEventListener('DOMContentLoaded', function () {
const generatorContent = document.querySelector('meta[name="generator"]').getAttribute('content').replace("Halo ", "Halo Pro ");
const link = document.querySelector('footer a[href="https://halo.run"]');
link.textContent = generatorContent;
});
</script>
<style>
/* 页脚的链接文本动画效果 */
@keyframes maskedAnimation {
0% {
background-position: 0 0;
}
100% {
background-position: -100% 0;
}
}
footer a[href="https://halo.run"] {
font-weight: bold;
background-image: -webkit-linear-gradient(left, #ffdd00, #3e2f08 25%, #ffdd00 50%, #3e2f08 75%, #ffdd00);
-webkit-text-fill-color: transparent;
-webkit-background-clip: text;
-webkit-background-size: 200% 100%;
-webkit-animation: maskedAnimation 1s infinite linear;
}
</style>
本站公告弹窗
<script>
/* 站点弹窗公告 */
document.addEventListener('DOMContentLoaded', function() {
if (document.cookie.indexOf('modalManuallyClosed=true') !== -1) {
return;
}
var modal = document.createElement('div');
var isDarkMode = document.documentElement.classList.contains('dark');
modal.style.cssText = `
position: fixed;
top: 20px;
right: -350px;
width: 300px;
background-color: ${isDarkMode ? 'rgba(30, 41, 59, 0.9)' : 'rgba(255, 255, 255, 0.9)'};
backdrop-filter: blur(5px);
padding: 20px;
border-radius: 15px;
box-shadow: 0 4px 20px rgba(0,0,0,0.15);
z-index: 1000;
transition: right 0.3s ease-in-out, background-color 0.3s ease;
font-family: Arial, sans-serif;
font-size: 16px;
line-height: 1.5;
color: ${isDarkMode ? '#e2e8f0' : 'inherit'};
`;
var content = document.createElement('div');
content.innerHTML = `
<strong style="font-size: 18px; display: block; margin-bottom: 10px; padding-right: 20px;">公告</strong>
<p style="margin: 0; padding-right: 20px;">
站点公告内容
</p>
`;
modal.appendChild(content);
var closeButton = document.createElement('span');
closeButton.textContent = '×';
closeButton.style.cssText = `
position: absolute;
top: 10px;
right: 15px;
font-size: 24px;
color: ${isDarkMode ? '#9ca3af' : '#999'};
cursor: pointer;
width: 30px;
height: 30px;
line-height: 30px;
text-align: center;
background-color: transparent;
border-radius: 50%;
transition: background-color 0.2s, color 0.2s;
`;
closeButton.onmouseover = function() {
this.style.backgroundColor = isDarkMode ? '#4b5563' : '#f0f0f0';
this.style.color = isDarkMode ? '#e2e8f0' : '#333';
};
closeButton.onmouseout = function() {
this.style.backgroundColor = 'transparent';
this.style.color = isDarkMode ? '#9ca3af' : '#999';
};
function closeModal(isManual) {
modal.style.right = '-350px';
setTimeout(function() {
document.body.removeChild(modal);
}, 300);
if (isManual) {
// 设置 cookie,有效期为 30 天
var date = new Date();
date.setTime(date.getTime() + (30 * 24 * 60 * 60 * 1000));
document.cookie = "modalManuallyClosed=true; expires=" + date.toUTCString() + "; path=/";
}
}
closeButton.onclick = function() {
clearAutoCloseTimer();
closeModal(true); // 传入 true 表示手动关闭
};
modal.appendChild(closeButton);
document.body.appendChild(modal);
setTimeout(function() {
modal.style.right = '20px';
}, 50);
var autoCloseTimer;
var timeoutExpired = false;
function startAutoCloseTimer() {
autoCloseTimer = setTimeout(function() {
timeoutExpired = true;
if (!modal.matches(':hover')) {
closeModal(false); // 传入 false 表示自动关闭
}
}, 4000);
}
function clearAutoCloseTimer() {
clearTimeout(autoCloseTimer);
}
startAutoCloseTimer();
modal.onmouseenter = function() {
clearAutoCloseTimer();
};
modal.onmouseleave = function() {
if (timeoutExpired) {
closeModal(false); // 传入 false 表示自动关闭
} else {
startAutoCloseTimer();
}
};
});
</script>