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