Files
vps_web/README.md
ddrwode 3a61598b59 哈哈
2026-02-09 14:18:42 +08:00

83 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 云服务器价格对比 (VPS Price)
云服务器 VPS 价格对比网站:支持后台手动添加/编辑数据、广告位Google AdSense、SEO 优化、每条数据跳转官网。
## 功能
- **前台**:多厂商 VPS 方案对比表,按厂商/区域/内存筛选,人民币/美元切换,每条可点击「官网」跳转
- **后台**:登录后添加、编辑、删除云服务器方案,支持填写官网链接
- **广告位**:页头、表格上方、页脚三处占位,可接入 Google AdSense
- **SEO**meta 描述/关键词、canonical、Open Graph、sitemap.xml、robots.txt、JSON-LD 结构化数据
## 运行
```bash
# 安装依赖
pip install -r requirements.txt
# 首次运行:初始化数据库并导入示例数据
python init_db.py
# 启动服务
python app.py
# 或
python main.py
```
- 前台:<http://127.0.0.1:5001>
- 后台:<http://127.0.0.1:5001/admin>(默认密码见下方环境变量)
## 环境变量(可选)
| 变量 | 说明 | 默认 |
|------|------|------|
| `ADMIN_PASSWORD` | 后台登录密码 | `admin123` |
| `SECRET_KEY` | Flask 会话密钥 | 开发用固定值 |
| `SITE_URL` | 站点完整 URLSEO、sitemap | `https://example.com` |
| `DB_HOST` | MySQL 主机 | `199.168.137.123` |
| `DB_PORT` | MySQL 端口 | `3309` |
| `DB_USER` | MySQL 用户名 | `vps` |
| `DB_NAME` | MySQL 数据库名 | `vps` |
| `DB_PASSWORD` | MySQL 密码 | (见 config.py |
| `DATABASE_URL` | 完整数据库连接串(若设置则优先于上述 DB_* | 由 DB_* 拼成 MySQL URI |
生产环境请务必设置 `ADMIN_PASSWORD``SECRET_KEY``SITE_URL`,并妥善保管 `DB_PASSWORD`
## 接入 Google 广告
1. 在 [Google AdSense](https://www.google.com/adsense/) 注册并获取广告代码。
2. 打开模板 `templates/index.html`,找到三个 `ad-slot` 区域(`id="ad-slot-1"``ad-slot-2``ad-slot-3`)。
3. 将注释中的示例替换为你的 AdSense 代码,或把获得的 `<script>``<ins>` 粘贴到对应 div 内。
广告位位置:页头横幅、表格上方、页脚前。
## 项目结构
```
vps_price/
├── app.py # Flask 应用、路由、后台
├── config.py # 配置(含环境变量)
├── models.py # 数据库模型 VPSPlan
├── init_db.py # 初始化 DB + 导入示例数据
├── requirements.txt
├── templates/
│ ├── index.html # 首页(含 SEO、广告位
│ └── admin/
│ ├── login.html
│ ├── dashboard.html
│ └── plan_form.html
└── static/
├── css/style.css
├── css/admin.css
└── js/main.js
```
## SEO 说明
- **meta**description、keywords、canonical、Open Graph
- **sitemap**`/sitemap.xml`(需在线上将 `SITE_URL` 设为真实域名)
- **robots**`/robots.txt` 允许抓取并指向 sitemap
- **JSON-LD**WebApplication + Table 结构化数据,便于搜索引擎理解
价格与官网链接以各云厂商为准,后台可随时修改。