{"id":247,"url":"https:\/\/web.daaee.cn\/.\/auth.md.php","title":"","content":"\u4f7f\u7528\u8bf4\u660e\n1. \u5b89\u88c5\u8981\u6c42\n\n    PHP 5.3+ (\u63a8\u8350PHP 7.0+)\n\n    SQLite3 \u6269\u5c55\n\n    Web\u670d\u52a1\u5668\uff08Apache\/Nginx\uff09\u6216PHP\u5185\u7f6e\u670d\u52a1\u5668\n\n2. \u9996\u6b21\u4f7f\u7528\n\n    \u5c06\u4ee3\u7801\u4fdd\u5b58\u4e3a index.php \u6216 auth.php\n\n    \u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u8be5\u6587\u4ef6\n\n    \u7cfb\u7edf\u4f1a\u81ea\u52a8\u521b\u5efa\u6570\u636e\u5e93\u548c\u8d85\u7ea7\u7ba1\u7406\u5458\u8d26\u6237\n\n        \u9ed8\u8ba4\u7ba1\u7406\u5458\u90ae\u7bb1\uff1aadmin@example.com\n\n        \u9ed8\u8ba4\u5bc6\u7801\uff1aAdmin@123456\n\n\u91cd\u8981\uff1a\u9996\u6b21\u767b\u5f55\u540e\u8bf7\u7acb\u5373\u4fee\u6539\u9ed8\u8ba4\u7ba1\u7406\u5458\u5bc6\u7801\uff01\n3. \u4e3b\u8981\u529f\u80fd\n\u7528\u6237\u529f\u80fd\uff1a\n\n    \u7528\u6237\u6ce8\u518c\uff08\u90ae\u7bb1+\u5bc6\u7801+\u6635\u79f0\uff09\n\n    \u7528\u6237\u767b\u5f55\/\u9000\u51fa\n\n    \u67e5\u770b\u4e2a\u4eba\u4fe1\u606f\n\n    IP\u5730\u5740\u9650\u5236\uff08\u9632\u6076\u610f\u6ce8\u518c\uff09\n\n\u7ba1\u7406\u5458\u529f\u80fd\uff1a\n\n    \u67e5\u770b\u6240\u6709\u7528\u6237\u5217\u8868\n\n    \u7f16\u8f91\u7528\u6237\u4fe1\u606f\uff08\u6635\u79f0\u3001\u72b6\u6001\u3001\u6743\u9650\uff09\n\n    \u5220\u9664\u7528\u6237\n\n    \u641c\u7d22\u7528\u6237\n\n\u7b2c\u4e09\u65b9\u7f51\u7ad9\u96c6\u6210\u63a5\u53e3\uff1a\n\n\u767b\u5f55\u9a8c\u8bc1\u63a5\u53e3\uff1a\nphp\n\n\/\/ \u7b2c\u4e09\u65b9\u7f51\u7ad9\u767b\u5f55\u8df3\u8f6c\nheader('Location: http:\/\/yourdomain.com\/auth.php?api=1&action=login&site=your_site&callback=' . urlencode('http:\/\/your_site.com\/callback.php'));\n\n\/\/ \u56de\u8c03\u9a8c\u8bc1\n$token = $_GET['token'];\n$response = file_get_contents('http:\/\/yourdomain.com\/auth.php?api=1&action=verify_token&token=' . $token . '&site=your_site');\n$data = json_decode($response, true);\nif ($data['success']) {\n    \/\/ \u767b\u5f55\u6210\u529f\uff0c\u83b7\u53d6\u7528\u6237\u4fe1\u606f\n    $user = $data['user'];\n}\n\nAPI\u63a5\u53e3\u5217\u8868\uff1a\n\n    ?api=1&action=register - \u7528\u6237\u6ce8\u518c\n\n    ?api=1&action=login - \u7528\u6237\u767b\u5f55\n\n    ?api=1&action=verify_token - \u9a8c\u8bc1Token\n\n    ?api=1&action=logout - \u9000\u51fa\u767b\u5f55\n\n    ?api=1&action=get_user - \u83b7\u53d6\u5f53\u524d\u7528\u6237\u4fe1\u606f\n\n4. \u5b89\u5168\u5efa\u8bae\n\n    \u4fee\u6539\u9ed8\u8ba4\u914d\u7f6e\uff1a\n\nphp\n\n$config = [\n    'default_admin_email' => 'your-email@yourdomain.com',\n    'default_admin_password' => 'YourStrongPassword123',\n    'ip_limit_count' => 5,  \/\/ \u964d\u4f4eIP\u6ce8\u518c\u9650\u5236\n    'session_timeout' => 1800,  \/\/ \u7f29\u77ed\u4f1a\u8bdd\u8d85\u65f6\n];\n\n    HTTPS\u90e8\u7f72\uff1a\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u52a1\u5fc5\u4f7f\u7528HTTPS\n\n    \u5b9a\u671f\u5907\u4efd\uff1a\u5907\u4efd data\/users.db \u6587\u4ef6\n\n    \u76d1\u63a7\u65e5\u5fd7\uff1a\u67e5\u770b\u6570\u636e\u5e93\u4e2d\u7684 user_logs \u8868\n\n5. \u6269\u5c55\u5efa\u8bae\n\n    \u6dfb\u52a0\u90ae\u4ef6\u9a8c\u8bc1\u529f\u80fd\n\n    \u6dfb\u52a0\u5bc6\u7801\u91cd\u7f6e\u529f\u80fd\n\n    \u6dfb\u52a0\u9a8c\u8bc1\u7801\u9632\u6b62\u66b4\u529b\u7834\u89e3\n\n    \u6dfb\u52a0\u7528\u6237\u5934\u50cf\u4e0a\u4f20\n\n    \u6dfb\u52a0\u66f4\u591a\u7b2c\u4e09\u65b9\u767b\u5f55\uff08OAuth\uff09\n\n6. \u6587\u4ef6\u7ed3\u6784\ntext\n\n\u251c\u2500\u2500 auth.php                # \u4e3b\u7a0b\u5e8f\u6587\u4ef6\n\u251c\u2500\u2500 data\/\n\u2502   \u2514\u2500\u2500 users.db           # SQLite\u6570\u636e\u5e93\u6587\u4ef6\n\u2514\u2500\u2500 logs\/                  # \u53ef\u9009\uff1a\u65e5\u5fd7\u76ee\u5f55\n\n\u8fd9\u4e2a\u7cfb\u7edf\u5b8c\u5168\u517c\u5bb9PHP 5.3\u5230PHP 8.x\uff0c\u4f7f\u7528\u7eafPHP\u548cSQLite3\uff0c\u65e0\u9700\u5b89\u88c5\u5176\u4ed6\u4f9d\u8d56\u3002"}