up
This commit is contained in:
+42
@@ -0,0 +1,42 @@
|
|||||||
|
# 编译产物
|
||||||
|
*.exe
|
||||||
|
*.exe~
|
||||||
|
*.dll
|
||||||
|
*.so
|
||||||
|
*.dylib
|
||||||
|
|
||||||
|
# 测试产物
|
||||||
|
*.test
|
||||||
|
*.out
|
||||||
|
*.prof
|
||||||
|
|
||||||
|
# Go 工具缓存
|
||||||
|
vendor/
|
||||||
|
|
||||||
|
# 日志文件
|
||||||
|
*.log
|
||||||
|
|
||||||
|
# IDE / 编辑器
|
||||||
|
.idea/
|
||||||
|
.vscode/
|
||||||
|
*.swp
|
||||||
|
*.swo
|
||||||
|
*~
|
||||||
|
|
||||||
|
# OS 生成文件
|
||||||
|
.DS_Store
|
||||||
|
Thumbs.db
|
||||||
|
desktop.ini
|
||||||
|
|
||||||
|
# 项目运行时数据(Windows 测试路径)
|
||||||
|
win/etc/
|
||||||
|
win/srv/
|
||||||
|
|
||||||
|
# 数据库文件
|
||||||
|
*.db
|
||||||
|
*.db-journal
|
||||||
|
*.db-wal
|
||||||
|
*.db-shm
|
||||||
|
|
||||||
|
# 临时测试文件
|
||||||
|
login_test.html
|
||||||
@@ -1,84 +0,0 @@
|
|||||||
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh-CN">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>登录 - MailGo</title>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
* { margin:0; padding:0; box-sizing:border-box; }
|
|
||||||
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background:#f5f5f5; color:#333; }
|
|
||||||
.navbar { background:#2c3e50; padding:0 20px; height:50px; display:flex; align-items:center; }
|
|
||||||
.navbar a { color:#ecf0f1; text-decoration:none; margin-right:20px; font-size:14px; }
|
|
||||||
.navbar a:hover { color:#3498db; }
|
|
||||||
.navbar .right { margin-left:auto; }
|
|
||||||
.container { max-width:1200px; margin:20px auto; padding:0 20px; }
|
|
||||||
.card { background:#fff; border-radius:8px; box-shadow:0 2px 4px rgba(0,0,0,0.1); padding:20px; margin-bottom:20px; }
|
|
||||||
table { width:100%; border-collapse:collapse; }
|
|
||||||
th, td { padding:10px 12px; text-align:left; border-bottom:1px solid #eee; }
|
|
||||||
th { background:#f8f9fa; font-weight:600; }
|
|
||||||
.btn { display:inline-block; padding:8px 16px; border-radius:4px; text-decoration:none; font-size:14px; cursor:pointer; border:none; }
|
|
||||||
.btn-primary { background:#3498db; color:#fff; }
|
|
||||||
.btn-primary:hover { background:#2980b9; }
|
|
||||||
.btn-danger { background:#e74c3c; color:#fff; }
|
|
||||||
.btn-danger:hover { background:#c0392b; }
|
|
||||||
.btn-sm { padding:4px 10px; font-size:12px; }
|
|
||||||
.alert { padding:12px 16px; border-radius:4px; margin-bottom:16px; }
|
|
||||||
.alert-error { background:#fde8e8; color:#c0392b; }
|
|
||||||
.alert-success { background:#e8fde8; color:#27ae60; }
|
|
||||||
.form-group { margin-bottom:16px; }
|
|
||||||
.form-group label { display:block; margin-bottom:6px; font-weight:600; }
|
|
||||||
.form-group input, .form-group textarea, .form-group select { width:100%; padding:8px 12px; border:1px solid #ddd; border-radius:4px; font-size:14px; }
|
|
||||||
.form-group input[type="checkbox"] { width:auto; }
|
|
||||||
.unread { font-weight:bold; }
|
|
||||||
.message-subject { color:#2c3e50; text-decoration:none; }
|
|
||||||
.message-subject:hover { color:#3498db; }
|
|
||||||
.sidebar { width:200px; float:left; }
|
|
||||||
.sidebar a { display:block; padding:10px 15px; color:#2c3e50; text-decoration:none; border-radius:4px; margin-bottom:2px; }
|
|
||||||
.sidebar a:hover, .sidebar a.active { background:#3498db; color:#fff; }
|
|
||||||
.content { margin-left:220px; }
|
|
||||||
.pagination { margin-top:16px; text-align:center; }
|
|
||||||
.pagination a, .pagination span { display:inline-block; padding:6px 12px; margin:0 2px; border:1px solid #ddd; border-radius:4px; text-decoration:none; color:#333; }
|
|
||||||
.pagination .current { background:#3498db; color:#fff; border-color:#3498db; }
|
|
||||||
.mail-meta { color:#7f8c8d; font-size:13px; margin-bottom:8px; }
|
|
||||||
.mail-body { line-height:1.6; margin-top:16px; padding-top:16px; border-top:1px solid #eee; }
|
|
||||||
.attachment-list { margin-top:16px; padding-top:16px; border-top:1px solid #eee; }
|
|
||||||
.attachment-item { display:inline-block; margin-right:12px; margin-bottom:8px; padding:6px 12px; background:#ecf0f1; border-radius:4px; font-size:13px; }
|
|
||||||
.attachment-item a { color:#2c3e50; text-decoration:none; }
|
|
||||||
.attachment-item a:hover { color:#3498db; }
|
|
||||||
.badge { display:inline-block; padding:2px 8px; border-radius:10px; font-size:11px; font-weight:bold; }
|
|
||||||
.badge-unread { background:#e74c3c; color:#fff; }
|
|
||||||
.stat-card { display:inline-block; width:200px; padding:20px; margin-right:20px; background:#fff; border-radius:8px; box-shadow:0 2px 4px rgba(0,0,0,0.1); text-align:center; }
|
|
||||||
.stat-card h3 { font-size:32px; color:#2c3e50; margin-bottom:4px; }
|
|
||||||
.stat-card p { color:#7f8c8d; font-size:14px; }
|
|
||||||
.dns-record { background:#f8f9fa; padding:12px 16px; border-radius:4px; margin-bottom:12px; font-family:monospace; font-size:13px; white-space:pre-wrap; }
|
|
||||||
.clearfix::after { content:""; display:table; clear:both; }
|
|
||||||
</style>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="container">
|
|
||||||
<div style="max-width:400px;margin:80px auto;">
|
|
||||||
<div class="card">
|
|
||||||
<h2 style="text-align:center;margin-bottom:24px;">MailGo 登录</h2>
|
|
||||||
|
|
||||||
<form method="POST" action="/login">
|
|
||||||
<div class="form-group">
|
|
||||||
<label>邮箱地址</label>
|
|
||||||
<input type="email" name="email" required autofocus placeholder="admin@example.com">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label>密码</label>
|
|
||||||
<input type="password" name="password" required placeholder="请输入密码">
|
|
||||||
</div>
|
|
||||||
<button type="submit" class="btn btn-primary" style="width:100%;">登录</button>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,48 +0,0 @@
|
|||||||
[database]
|
|
||||||
driver = "sqlite"
|
|
||||||
dsn = "./win/srv/mail_go/mail.db"
|
|
||||||
|
|
||||||
[storage]
|
|
||||||
base_dir = "./win/srv/mail_go/"
|
|
||||||
attach_dir = "win\\srv\\mail_go\\attachments"
|
|
||||||
|
|
||||||
[web]
|
|
||||||
addr = ":8080"
|
|
||||||
|
|
||||||
[smtp]
|
|
||||||
addr = ":25"
|
|
||||||
tls_addr = ":465"
|
|
||||||
domain = "localhost"
|
|
||||||
tls_cert = ""
|
|
||||||
tls_key = ""
|
|
||||||
max_message_bytes = 67108864
|
|
||||||
|
|
||||||
[imap]
|
|
||||||
addr = ":143"
|
|
||||||
tls_addr = ":993"
|
|
||||||
tls_cert = ""
|
|
||||||
tls_key = ""
|
|
||||||
|
|
||||||
[pop3]
|
|
||||||
addr = ":110"
|
|
||||||
tls_addr = ":995"
|
|
||||||
tls_cert = ""
|
|
||||||
tls_key = ""
|
|
||||||
|
|
||||||
[auth]
|
|
||||||
oauth2_enabled = false
|
|
||||||
oauth2_provider = ""
|
|
||||||
oauth2_client_id = ""
|
|
||||||
oauth2_client_secret = ""
|
|
||||||
oauth2_redirect_url = ""
|
|
||||||
ldap_enabled = false
|
|
||||||
ldap_server = ""
|
|
||||||
ldap_bind_dn = ""
|
|
||||||
ldap_bind_password = ""
|
|
||||||
ldap_search_base = ""
|
|
||||||
ldap_search_filter = ""
|
|
||||||
ldap_use_tls = false
|
|
||||||
|
|
||||||
[ban]
|
|
||||||
max_fail_attempts = 5
|
|
||||||
ban_duration_min = 30
|
|
||||||
Binary file not shown.
Reference in New Issue
Block a user