up seo
This commit is contained in:
555
DEPLOYMENT_GUIDE.md
Normal file
555
DEPLOYMENT_GUIDE.md
Normal file
@@ -0,0 +1,555 @@
|
||||
# 天远查 SEO 静态页面部署指南
|
||||
|
||||
本文档提供完整的 SEO 静态页面生成和部署方案。
|
||||
|
||||
## 📋 目录
|
||||
|
||||
- [快速开始](#快速开始)
|
||||
- [文件结构](#文件结构)
|
||||
- [生成静态页面](#生成静态页面)
|
||||
- [部署到生产环境](#部署到生产环境)
|
||||
- [验证SEO效果](#验证seo效果)
|
||||
- [维护和更新](#维护和更新)
|
||||
|
||||
---
|
||||
|
||||
## 🚀 快速开始
|
||||
|
||||
### 1. 生成静态页面
|
||||
|
||||
```bash
|
||||
# 进入项目目录
|
||||
cd C:\Users\a1726\Desktop\tyc\tyc-webview-v2
|
||||
|
||||
# 运行生成器
|
||||
node scripts\seo-static-generator\run.js
|
||||
```
|
||||
|
||||
生成成功后,会在 `scripts\seo-static-generator\static-pages\` 目录生成:
|
||||
|
||||
- ✅ 10 个静态HTML页面
|
||||
- ✅ sitemap.xml
|
||||
- ✅ robots.txt
|
||||
|
||||
### 2. 生成服务器配置
|
||||
|
||||
```bash
|
||||
# 生成 Nginx 和 Apache 配置
|
||||
node scripts\seo-static-generator\generateNginxConfig.js
|
||||
```
|
||||
|
||||
生成成功后,会创建:
|
||||
|
||||
- ✅ nginx.conf (Nginx配置)
|
||||
- ✅ .htaccess (Apache配置)
|
||||
|
||||
---
|
||||
|
||||
## 📁 文件结构
|
||||
|
||||
```
|
||||
tyc-webview-v2/
|
||||
├── scripts/
|
||||
│ └── seo-static-generator/
|
||||
│ ├── run.js # 主生成脚本(推荐使用)
|
||||
│ ├── generateStaticPages.js # 完整生成脚本
|
||||
│ ├── pageTemplates.js # 页面模板
|
||||
│ ├── crawlerMiddleware.js # 爬虫检测中间件
|
||||
│ ├── generateNginxConfig.js # 配置生成脚本
|
||||
│ ├── package.json # 项目配置
|
||||
│ ├── README.md # 详细文档
|
||||
│ ├── index.html # 示例页面
|
||||
│ ├── nginx.conf # Nginx配置(生成)
|
||||
│ ├── .htaccess # Apache配置(生成)
|
||||
│ └── static-pages/ # 生成的静态页面
|
||||
│ ├── index.html
|
||||
│ ├── inquire-category-lawsuit.html
|
||||
│ ├── inquire-marriage.html
|
||||
│ ├── inquire-category-vehicle.html
|
||||
│ ├── inquire-category-marriageStatus.html
|
||||
│ ├── agent.html
|
||||
│ ├── help.html
|
||||
│ ├── example.html
|
||||
│ ├── service.html
|
||||
│ ├── inquire.html
|
||||
│ ├── sitemap.xml
|
||||
│ └── robots.txt
|
||||
├── SEO_INTEGRATION.md # 集成指南
|
||||
└── DEPLOYMENT_GUIDE.md # 本文档
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔨 生成静态页面
|
||||
|
||||
### 方式一:使用简化脚本(推荐)
|
||||
|
||||
```bash
|
||||
node scripts\seo-static-generator\run.js
|
||||
```
|
||||
|
||||
**优点:**
|
||||
- 兼容性更好
|
||||
- 输出更清晰
|
||||
- 错误处理更完善
|
||||
|
||||
### 方式二:使用完整脚本
|
||||
|
||||
```bash
|
||||
node scripts\seo-static-generator\generateStaticPages.js
|
||||
```
|
||||
|
||||
**包含功能:**
|
||||
- 生成所有路由页面
|
||||
- 生成额外的路由页面
|
||||
- 生成sitemap.xml
|
||||
- 生成robots.txt
|
||||
|
||||
---
|
||||
|
||||
## 🌐 部署到生产环境
|
||||
|
||||
### 方式一:Nginx 部署(推荐)
|
||||
|
||||
#### 步骤 1:准备文件
|
||||
|
||||
```bash
|
||||
# 1. 生成静态页面
|
||||
node scripts\seo-static-generator\run.js
|
||||
|
||||
# 2. 生成 Nginx 配置
|
||||
node scripts\seo-static-generator\generateNginxConfig.js
|
||||
```
|
||||
|
||||
#### 步骤 2:修改 Nginx 配置
|
||||
|
||||
编辑 `scripts\seo-static-generator\nginx.conf`,修改以下路径:
|
||||
|
||||
```nginx
|
||||
server_name www.tianyuancha.cn; # 修改为你的域名
|
||||
spaRoot /var/www/tyc-webview-v2/dist; # 修改为SPA静态文件目录
|
||||
staticRoot /var/www/tyc-webview-v2/static-pages; # 修改为SEO页面目录
|
||||
```
|
||||
|
||||
#### 步骤 3:上传文件到服务器
|
||||
|
||||
```bash
|
||||
# 上传 SPA 构建文件
|
||||
scp -r dist/* user@server:/var/www/tyc-webview-v2/dist/
|
||||
|
||||
# 上传 SEO 静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
|
||||
# 上传 Nginx 配置
|
||||
scp scripts/seo-static-generator/nginx.conf user@server:/etc/nginx/sites-available/tyc-webview
|
||||
```
|
||||
|
||||
#### 步骤 4:配置 Nginx
|
||||
|
||||
```bash
|
||||
# SSH 登录到服务器
|
||||
ssh user@server
|
||||
|
||||
# 创建软链接
|
||||
sudo ln -s /etc/nginx/sites-available/tyc-webview /etc/nginx/sites-enabled/
|
||||
|
||||
# 测试配置
|
||||
sudo nginx -t
|
||||
|
||||
# 如果测试通过,重载 Nginx
|
||||
sudo nginx -s reload
|
||||
```
|
||||
|
||||
#### 步骤 5:验证部署
|
||||
|
||||
```bash
|
||||
# 模拟百度爬虫
|
||||
curl -A "Baiduspider" http://www.tianyuancha.cn/
|
||||
|
||||
# 模拟 Google 爬虫
|
||||
curl -A "Googlebot" http://www.tianyuancha.cn/
|
||||
|
||||
# 正常浏览器访问
|
||||
curl -A "Mozilla/5.0" http://www.tianyuancha.cn/
|
||||
```
|
||||
|
||||
### 方式二:Apache 部署
|
||||
|
||||
#### 步骤 1:准备文件
|
||||
|
||||
```bash
|
||||
# 1. 生成静态页面
|
||||
node scripts\seo-static-generator\run.js
|
||||
|
||||
# 2. 生成 Apache 配置
|
||||
node scripts\seo-static-generator\generateNginxConfig.js
|
||||
```
|
||||
|
||||
#### 步骤 2:上传文件到服务器
|
||||
|
||||
```bash
|
||||
# 上传 SPA 构建文件
|
||||
scp -r dist/* user@server:/var/www/tyc-webview-v2/
|
||||
|
||||
# 上传 SEO 静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
|
||||
# 上传 .htaccess
|
||||
scp scripts/seo-static-generator/.htaccess user@server:/var/www/tyc-webview-v2/
|
||||
```
|
||||
|
||||
#### 步骤 3:启用 mod_rewrite
|
||||
|
||||
```bash
|
||||
# SSH 登录到服务器
|
||||
ssh user@server
|
||||
|
||||
# 启用 mod_rewrite
|
||||
sudo a2enmod rewrite
|
||||
|
||||
# 重启 Apache
|
||||
sudo systemctl restart apache2
|
||||
```
|
||||
|
||||
#### 步骤 4:验证部署
|
||||
|
||||
```bash
|
||||
# 模拟百度爬虫
|
||||
curl -A "Baiduspider" http://www.tianyuancha.cn/
|
||||
|
||||
# 模拟 Google 爬虫
|
||||
curl -A "Googlebot" http://www.tianyuancha.cn/
|
||||
|
||||
# 正常浏览器访问
|
||||
curl -A "Mozilla/5.0" http://www.tianyuancha.cn/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 验证 SEO 效果
|
||||
|
||||
### 1. 测试爬虫检测
|
||||
|
||||
在本地或服务器上运行以下命令:
|
||||
|
||||
```bash
|
||||
# 测试百度爬虫
|
||||
curl -A "Baiduspider" http://www.tianyuancha.cn/ | head -20
|
||||
|
||||
# 测试 Google 爬虫
|
||||
curl -A "Googlebot" http://www.tianyuancha.cn/ | head -20
|
||||
|
||||
# 测试 360 爬虫
|
||||
curl -A "360spider" http://www.tianyuancha.cn/ | head -20
|
||||
|
||||
# 测试搜狗爬虫
|
||||
curl -A "sogou spider" http://www.tianyuancha.cn/ | head -20
|
||||
|
||||
# 测试正常用户
|
||||
curl -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64)" http://www.tianyuancha.cn/ | head -20
|
||||
```
|
||||
|
||||
**预期结果:**
|
||||
- 爬虫访问应该返回静态HTML页面(包含完整的TDK)
|
||||
- 正常用户访问应该返回SPA应用
|
||||
|
||||
### 2. 验证 TDK 标签
|
||||
|
||||
检查生成的静态页面是否包含完整的SEO标签:
|
||||
|
||||
```bash
|
||||
# 查看生成的首页
|
||||
cat scripts/seo-static-generator/static-pages/index.html | grep -E "<title>|<meta name=\"description\"|<meta name=\"keywords\""
|
||||
```
|
||||
|
||||
**预期输出:**
|
||||
```html
|
||||
<title>天远查官网_企业与婚姻关联风险核验_综合履约背景核验</title>
|
||||
<meta name="description" content="天远查官网...">
|
||||
<meta name="keywords" content="天远查,婚姻状态风险...">
|
||||
```
|
||||
|
||||
### 3. 使用在线工具验证
|
||||
|
||||
#### Google Rich Results Test
|
||||
访问:https://search.google.com/test/rich-results
|
||||
输入你的网站URL,测试结构化数据。
|
||||
|
||||
#### 百度移动适配测试
|
||||
访问:http://ziyuan.baidu.com/
|
||||
测试移动端适配和SEO。
|
||||
|
||||
#### Schema Markup Validator
|
||||
访问:https://validator.schema.org/
|
||||
验证结构化数据格式。
|
||||
|
||||
---
|
||||
|
||||
## 🔄 维护和更新
|
||||
|
||||
### 更新 SEO 配置
|
||||
|
||||
#### 步骤 1:修改配置
|
||||
|
||||
编辑 `scripts\seo-static-generator\run.js` 中的 `seoConfigs`:
|
||||
|
||||
```javascript
|
||||
const seoConfigs = {
|
||||
'/': {
|
||||
title: '新的页面标题',
|
||||
description: '新的页面描述',
|
||||
keywords: '新的关键词'
|
||||
},
|
||||
// ... 其他路由
|
||||
};
|
||||
```
|
||||
|
||||
#### 步骤 2:重新生成静态页面
|
||||
|
||||
```bash
|
||||
node scripts\seo-static-generator\run.js
|
||||
```
|
||||
|
||||
#### 步骤 3:部署到服务器
|
||||
|
||||
```bash
|
||||
# 上传更新的静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
```
|
||||
|
||||
### 添加新的路由页面
|
||||
|
||||
#### 步骤 1:添加路由配置
|
||||
|
||||
在 `scripts\seo-static-generator\run.js` 的 `seoConfigs` 中添加:
|
||||
|
||||
```javascript
|
||||
const seoConfigs = {
|
||||
// ... 现有路由
|
||||
'/new-route': {
|
||||
title: '新页面标题',
|
||||
description: '新页面描述',
|
||||
keywords: '关键词1,关键词2'
|
||||
}
|
||||
};
|
||||
```
|
||||
|
||||
#### 步骤 2:添加页面内容(可选)
|
||||
|
||||
编辑 `scripts\seo-static-generator\pageTemplates.js`,添加内容生成函数:
|
||||
|
||||
```javascript
|
||||
function generateNewRouteContent(seoConfig) {
|
||||
return `
|
||||
<h2>新页面标题</h2>
|
||||
<p>这里写页面的具体内容...</p>
|
||||
`;
|
||||
}
|
||||
|
||||
// 添加到路由映射
|
||||
export function generateContentByRoute(path, seoConfig) {
|
||||
const routeContentMap = {
|
||||
// ... 现有路由
|
||||
'/new-route': generateNewRouteContent(seoConfig),
|
||||
};
|
||||
return routeContentMap[path] || generateDefaultContent(seoConfig);
|
||||
}
|
||||
```
|
||||
|
||||
#### 步骤 3:重新生成和部署
|
||||
|
||||
```bash
|
||||
# 重新生成
|
||||
node scripts\seo-static-generator\run.js
|
||||
|
||||
# 部署到服务器
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔧 集成到 CI/CD
|
||||
|
||||
在 CI/CD 流程中自动生成和部署静态页面。
|
||||
|
||||
### GitHub Actions 示例
|
||||
|
||||
创建 `.github/workflows/deploy.yml`:
|
||||
|
||||
```yaml
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: '18'
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm install
|
||||
|
||||
- name: Build Vue project
|
||||
run: npm run build
|
||||
|
||||
- name: Generate SEO pages
|
||||
run: node scripts/seo-static-generator/run.js
|
||||
|
||||
- name: Deploy to server
|
||||
uses: easingthemes/ssh-deploy@v2.1.5
|
||||
env:
|
||||
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
REMOTE_HOST: ${{ secrets.REMOTE_HOST }}
|
||||
REMOTE_USER: ${{ secrets.REMOTE_USER }}
|
||||
TARGET: /var/www/tyc-webview-v2/
|
||||
with:
|
||||
SOURCE: "dist/ scripts/seo-static-generator/static-pages/"
|
||||
ARGS: "-rlgoDzvc -i"
|
||||
```
|
||||
|
||||
### Jenkins Pipeline 示例
|
||||
|
||||
创建 `Jenkinsfile`:
|
||||
|
||||
```groovy
|
||||
pipeline {
|
||||
agent any
|
||||
|
||||
stages {
|
||||
stage('Checkout') {
|
||||
steps {
|
||||
checkout scm
|
||||
}
|
||||
}
|
||||
|
||||
stage('Install') {
|
||||
steps {
|
||||
sh 'npm install'
|
||||
}
|
||||
}
|
||||
|
||||
stage('Build') {
|
||||
steps {
|
||||
sh 'npm run build'
|
||||
}
|
||||
}
|
||||
|
||||
stage('Generate SEO') {
|
||||
steps {
|
||||
sh 'node scripts/seo-static-generator/run.js'
|
||||
}
|
||||
}
|
||||
|
||||
stage('Deploy') {
|
||||
steps {
|
||||
sh '''
|
||||
scp -r dist/* user@server:/var/www/tyc-webview-v2/dist/
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📊 监控和日志
|
||||
|
||||
### Nginx 日志
|
||||
|
||||
```bash
|
||||
# 查看访问日志
|
||||
sudo tail -f /var/log/nginx/tyc-webview-access.log
|
||||
|
||||
# 查看错误日志
|
||||
sudo tail -f /var/log/nginx/tyc-webview-error.log
|
||||
|
||||
# 查看爬虫访问记录
|
||||
grep -i "googlebot\|baiduspider" /var/log/nginx/tyc-webview-access.log
|
||||
```
|
||||
|
||||
### Apache 日志
|
||||
|
||||
```bash
|
||||
# 查看访问日志
|
||||
sudo tail -f /var/log/apache2/access.log
|
||||
|
||||
# 查看错误日志
|
||||
sudo tail -f /var/log/apache2/error.log
|
||||
|
||||
# 查看爬虫访问记录
|
||||
grep -i "googlebot\|baiduspider" /var/log/apache2/access.log
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ❓ 常见问题
|
||||
|
||||
### Q1: 静态页面没有生成?
|
||||
|
||||
**A:** 检查以下几点:
|
||||
1. 确保 Node.js 版本 >= 14
|
||||
2. 检查是否有文件写入权限
|
||||
3. 查看控制台错误信息
|
||||
4. 尝试使用 `run.js` 脚本而不是 `generateStaticPages.js`
|
||||
|
||||
### Q2: Nginx 配置不生效?
|
||||
|
||||
**A:** 检查以下几点:
|
||||
1. 确保 Nginx 已重启:`sudo nginx -s reload`
|
||||
2. 检查配置文件语法:`sudo nginx -t`
|
||||
3. 查看 Nginx 错误日志:`sudo tail -f /var/log/nginx/error.log`
|
||||
4. 确保静态文件路径正确
|
||||
|
||||
### Q3: 爬虫仍然看到的是 SPA?
|
||||
|
||||
**A:** 检查以下几点:
|
||||
1. 确认 User-Agent 匹配规则正确
|
||||
2. 检查 Nginx/Apache 配置是否正确加载
|
||||
3. 使用 curl 测试爬虫访问
|
||||
4. 清除浏览器缓存后重试
|
||||
|
||||
### Q4: 如何处理动态内容?
|
||||
|
||||
**A:** 对于需要动态内容的页面,可以考虑:
|
||||
1. 使用定时任务定期重新生成静态页面
|
||||
2. 在静态页面中添加 JavaScript,让正常用户访问时加载动态内容
|
||||
3. 考虑使用动态渲染服务(方案三)
|
||||
|
||||
### Q5: 如何测试 SEO 效果?
|
||||
|
||||
**A:** 使用以下工具:
|
||||
1. Google Rich Results Test: https://search.google.com/test/rich-results
|
||||
2. 百度移动适配测试: http://ziyuan.baidu.com/
|
||||
3. Schema Markup Validator: https://validator.schema.org/
|
||||
|
||||
---
|
||||
|
||||
## 📚 相关文档
|
||||
|
||||
- [详细使用文档](scripts/seo-static-generator/README.md)
|
||||
- [集成指南](SEO_INTEGRATION.md)
|
||||
- [useSEO.js 源码](src/composables/useSEO.js)
|
||||
|
||||
---
|
||||
|
||||
## 🆘 技术支持
|
||||
|
||||
如有问题,请联系技术团队或提交 Issue。
|
||||
|
||||
---
|
||||
|
||||
## 📄 许可证
|
||||
|
||||
MIT
|
||||
14
index.html
14
index.html
@@ -31,7 +31,7 @@
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://www.zhinengcha.cn/" />
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/" />
|
||||
<meta property="og:title" content="天远查官网_企业与婚姻关联风险核验_综合履约背景核验" />
|
||||
<meta property="og:description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。" />
|
||||
<meta property="og:site_name" content="天远查" />
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary" />
|
||||
<meta property="twitter:url" content="https://www.zhinengcha.cn/" />
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/" />
|
||||
<meta property="twitter:title" content="天远查官网_企业与婚姻关联风险核验_综合履约背景核验" />
|
||||
<meta property="twitter:description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。" />
|
||||
|
||||
@@ -57,11 +57,11 @@
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebSite",
|
||||
"name": "天远查",
|
||||
"url": "https://www.zhinengcha.cn/",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人信用查询、小微企业风控、贷前风险背调等多场景报告应用",
|
||||
"potentialAction": {
|
||||
"@type": "SearchAction",
|
||||
"target": "https://www.zhinengcha.cn/search?q={search_term_string}",
|
||||
"target": "https://www.tianyuancha.cn/search?q={search_term_string}",
|
||||
"query-input": "required name=search_term_string"
|
||||
}
|
||||
}
|
||||
@@ -72,7 +72,7 @@
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.zhinengcha.cn/",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
</script>
|
||||
@@ -84,9 +84,9 @@
|
||||
</script>
|
||||
|
||||
<!-- 预加载关键资源 -->
|
||||
<link rel="preconnect" href="https://www.zhinengcha.cn">
|
||||
<link rel="preconnect" href="https://www.tianyuancha.cn">
|
||||
<link rel="preconnect" href="https://res.wx.qq.com">
|
||||
<link rel="dns-prefetch" href="https://www.zhinengcha.cn">
|
||||
<link rel="dns-prefetch" href="https://www.tianyuancha.cn">
|
||||
<link rel="dns-prefetch" href="https://res.wx.qq.com">
|
||||
|
||||
<style>
|
||||
|
||||
@@ -44,7 +44,7 @@ Disallow: /js/
|
||||
Disallow: /css/
|
||||
|
||||
# 网站地图
|
||||
Sitemap: https://www.zhinengcha.cn/sitemap.xml
|
||||
Sitemap: https://www.tianyuancha.cn/sitemap.xml
|
||||
|
||||
# 爬取延迟(毫秒)
|
||||
Crawl-delay: 1
|
||||
|
||||
@@ -1,67 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/</loc>
|
||||
<loc>https://www.tianyuancha.cn/</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
<priority>1.0</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/agent</loc>
|
||||
<loc>https://www.tianyuancha.cn/agent</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/help</loc>
|
||||
<loc>https://www.tianyuancha.cn/help</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/help/guide</loc>
|
||||
<loc>https://www.tianyuancha.cn/help/guide</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.6</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/example</loc>
|
||||
<loc>https://www.tianyuancha.cn/example</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.6</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/service</loc>
|
||||
<loc>https://www.tianyuancha.cn/service</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.5</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/privacyPolicy</loc>
|
||||
<loc>https://www.tianyuancha.cn/privacyPolicy</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/userAgreement</loc>
|
||||
<loc>https://www.tianyuancha.cn/userAgreement</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/agentManageAgreement</loc>
|
||||
<loc>https://www.tianyuancha.cn/agentManageAgreement</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/agentSerivceAgreement</loc>
|
||||
<loc>https://www.tianyuancha.cn/agentSerivceAgreement</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.zhinengcha.cn/authorization</loc>
|
||||
<loc>https://www.tianyuancha.cn/authorization</loc>
|
||||
<lastmod>2025-08-01</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
|
||||
46
scripts/seo-static-generator/.htaccess
Normal file
46
scripts/seo-static-generator/.htaccess
Normal file
@@ -0,0 +1,46 @@
|
||||
# Apache .htaccess 配置 - 天远查 SPA + SEO 静态页面
|
||||
# 自动生成时间: 2026/2/25 11:04:50
|
||||
|
||||
# 启用重写引擎
|
||||
RewriteEngine On
|
||||
|
||||
# 爬虫检测
|
||||
RewriteCond %{HTTP_USER_AGENT} (googlebot|googlebot-image|googlebot-news|mediapartners-google|adsbot-google) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (baiduspider|baiduspider-mobile) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (bingbot|msnbot) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} "360spider" [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (sogou spider|sogou-orion) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (spider|crawl|bot|slurp|yandex|duckduckbot|bytespider|yisouspider) [NC]
|
||||
|
||||
# 爬虫访问静态页面
|
||||
RewriteRule ^$ /static-pages/index.html [L]
|
||||
RewriteRule ^([^/]+)/?$ /static-pages/$1.html [L]
|
||||
RewriteRule ^([^/]+)/(.+)$ /static-pages/$1.html [L]
|
||||
|
||||
# 正常用户访问 SPA
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule . /index.html [L]
|
||||
|
||||
# Gzip 压缩
|
||||
<IfModule mod_deflate.c>
|
||||
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/json
|
||||
</IfModule>
|
||||
|
||||
# 缓存控制
|
||||
<IfModule mod_expires.c>
|
||||
ExpiresActive On
|
||||
ExpiresByType image/jpg "access plus 1 year"
|
||||
ExpiresByType image/jpeg "access plus 1 year"
|
||||
ExpiresByType image/gif "access plus 1 year"
|
||||
ExpiresByType image/png "access plus 1 year"
|
||||
ExpiresByType text/css "access plus 1 month"
|
||||
ExpiresByType application/javascript "access plus 1 month"
|
||||
</IfModule>
|
||||
|
||||
# 安全头
|
||||
<IfModule mod_headers.c>
|
||||
Header set X-Frame-Options "SAMEORIGIN"
|
||||
Header set X-Content-Type-Options "nosniff"
|
||||
Header set X-XSS-Protection "1; mode=block"
|
||||
</IfModule>
|
||||
332
scripts/seo-static-generator/README.md
Normal file
332
scripts/seo-static-generator/README.md
Normal file
@@ -0,0 +1,332 @@
|
||||
# 天远查 SEO 静态页面生成器
|
||||
|
||||
为 Vue SPA 应用生成 SEO 友好的静态 HTML 页面,解决爬虫无法抓取客户端渲染内容的问题。
|
||||
|
||||
## 功能特性
|
||||
|
||||
- ✅ 自动根据路由和 SEO 配置生成静态 HTML 页面
|
||||
- ✅ 完整的 TDK(Title、Description、Keywords)优化
|
||||
- ✅ 支持 Open Graph 和 Twitter Cards
|
||||
- ✅ 包含 Schema.org 结构化数据
|
||||
- ✅ 自动生成 sitemap.xml
|
||||
- ✅ 自动生成 robots.txt
|
||||
- ✅ Nginx 和 Apache 配置生成
|
||||
- ✅ 爬虫检测中间件
|
||||
- ✅ 复用现有的 useSEO.js 配置
|
||||
|
||||
## 目录结构
|
||||
|
||||
```
|
||||
scripts/seo-static-generator/
|
||||
├── package.json # 项目配置
|
||||
├── README.md # 使用说明
|
||||
├── pageTemplates.js # 页面模板生成器
|
||||
├── generateStaticPages.js # 静态页面生成主脚本
|
||||
├── crawlerMiddleware.js # 爬虫检测中间件
|
||||
├── generateNginxConfig.js # 配置文件生成脚本
|
||||
└── static-pages/ # 生成的静态页面(自动创建)
|
||||
├── index.html
|
||||
├── inquire-category-lawsuit.html
|
||||
├── inquire-marriage.html
|
||||
├── ...
|
||||
├── sitemap.xml
|
||||
└── robots.txt
|
||||
```
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 1. 安装依赖
|
||||
|
||||
```bash
|
||||
cd scripts/seo-static-generator
|
||||
```
|
||||
|
||||
注意:本工具使用 Node.js 原生模块,无需安装额外依赖。
|
||||
|
||||
### 2. 生成静态页面
|
||||
|
||||
```bash
|
||||
# 生成所有静态页面
|
||||
node generateStaticPages.js
|
||||
|
||||
# 或使用 npm script
|
||||
npm run generate
|
||||
```
|
||||
|
||||
生成成功后,静态页面将保存在 `static-pages/` 目录中。
|
||||
|
||||
### 3. 生成服务器配置
|
||||
|
||||
```bash
|
||||
# 生成 Nginx 配置
|
||||
npm run nginx
|
||||
|
||||
# 或生成 Apache .htaccess 配置
|
||||
npm run htaccess
|
||||
```
|
||||
|
||||
## 配置说明
|
||||
|
||||
### SEO 配置
|
||||
|
||||
SEO 配置在 `generateStaticPages.js` 中定义,可以直接复用 `useSEO.js` 中的配置:
|
||||
|
||||
```javascript
|
||||
const seoConfigs = {
|
||||
'/': {
|
||||
title: '天远查官网_企业与婚姻关联风险核验_综合履约背景核验',
|
||||
description: '天远查官网(TianYuanCha)聚合官方公示数据...',
|
||||
keywords: '天远查,婚姻状态风险, 配偶背景核验...'
|
||||
},
|
||||
'/inquire/category/lawsuit': {
|
||||
title: '司法涉诉核验_个人及企业法律诉讼记录...',
|
||||
description: '天远查司法风险检测中心...',
|
||||
keywords: '司法案件核验,法律诉讼记录...'
|
||||
},
|
||||
// ... 更多路由配置
|
||||
};
|
||||
```
|
||||
|
||||
### Nginx 配置
|
||||
|
||||
在 `generateNginxConfig.js` 中修改配置:
|
||||
|
||||
```javascript
|
||||
const config = {
|
||||
serverName: 'www.tianyuancha.cn', // 你的域名
|
||||
spaRoot: '/var/www/tyc-webview-v2/dist', // SPA 静态文件目录
|
||||
staticRoot: '/var/www/tyc-webview-v2/static-pages', // SEO 静态页面目录
|
||||
sslEnabled: false, // 是否启用 HTTPS
|
||||
sslCertPath: '/etc/nginx/ssl/cert.pem', // SSL 证书路径
|
||||
sslKeyPath: '/etc/nginx/ssl/key.pem' // SSL 密钥路径
|
||||
};
|
||||
```
|
||||
|
||||
## 部署步骤
|
||||
|
||||
### 方式一:Nginx 部署(推荐)
|
||||
|
||||
1. **生成静态页面**
|
||||
|
||||
```bash
|
||||
npm run generate
|
||||
```
|
||||
|
||||
2. **生成 Nginx 配置**
|
||||
|
||||
```bash
|
||||
npm run nginx
|
||||
```
|
||||
|
||||
3. **部署配置文件**
|
||||
|
||||
```bash
|
||||
# 复制生成的 nginx.conf 到 Nginx 配置目录
|
||||
sudo cp scripts/seo-static-generator/nginx.conf /etc/nginx/sites-available/tyc-webview
|
||||
|
||||
# 创建软链接
|
||||
sudo ln -s /etc/nginx/sites-available/tyc-webview /etc/nginx/sites-enabled/
|
||||
|
||||
# 测试配置
|
||||
sudo nginx -t
|
||||
|
||||
# 重载 Nginx
|
||||
sudo nginx -s reload
|
||||
```
|
||||
|
||||
4. **部署静态文件**
|
||||
|
||||
```bash
|
||||
# 将生成的静态页面复制到服务器
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
```
|
||||
|
||||
### 方式二:Apache 部署
|
||||
|
||||
1. **生成静态页面**
|
||||
|
||||
```bash
|
||||
npm run generate
|
||||
```
|
||||
|
||||
2. **生成 .htaccess 配置**
|
||||
|
||||
```bash
|
||||
npm run htaccess
|
||||
```
|
||||
|
||||
3. **部署配置文件**
|
||||
|
||||
```bash
|
||||
# 复制 .htaccess 到网站根目录
|
||||
cp scripts/seo-static-generator/.htaccess /var/www/tyc-webview-v2/
|
||||
```
|
||||
|
||||
4. **部署静态文件**
|
||||
|
||||
```bash
|
||||
# 将生成的静态页面复制到服务器
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
```
|
||||
|
||||
## 工作原理
|
||||
|
||||
### 爬虫检测流程
|
||||
|
||||
```
|
||||
用户请求
|
||||
↓
|
||||
Nginx 检测 User-Agent
|
||||
↓
|
||||
├─ 是爬虫 → 返回静态页面(static-pages/)
|
||||
└─ 否 → 返回 SPA 应用(dist/)
|
||||
```
|
||||
|
||||
### 爬虫 User-Agent 列表
|
||||
|
||||
工具内置了以下爬虫的识别:
|
||||
|
||||
- **Google**: googlebot, googlebot-image, googlebot-news
|
||||
- **百度**: baiduspider, baiduspider-mobile
|
||||
- **必应**: bingbot, msnbot
|
||||
- **360**: 360spider
|
||||
- **搜狗**: sogou spider, sogou-orion
|
||||
- **头条**: bytespider
|
||||
- **神马**: yisouspider
|
||||
- **其他**: yandex, duckduckbot, slurp 等
|
||||
|
||||
## 自定义页面内容
|
||||
|
||||
### 修改页面模板
|
||||
|
||||
编辑 `pageTemplates.js` 中的模板函数:
|
||||
|
||||
```javascript
|
||||
export function generateStaticHTML(seoConfig, options = {}) {
|
||||
// 自定义 HTML 模板
|
||||
}
|
||||
```
|
||||
|
||||
### 添加新的路由页面
|
||||
|
||||
1. 在 `generateStaticPages.js` 中添加路由配置:
|
||||
|
||||
```javascript
|
||||
const seoConfigs = {
|
||||
'/new-route': {
|
||||
title: '新页面标题',
|
||||
description: '新页面描述',
|
||||
keywords: '关键词1,关键词2'
|
||||
}
|
||||
};
|
||||
```
|
||||
|
||||
2. 在 `pageTemplates.js` 中添加内容生成函数:
|
||||
|
||||
```javascript
|
||||
function generateNewRouteContent(seoConfig) {
|
||||
return `
|
||||
<h2>新页面内容</h2>
|
||||
<p>这里写页面的具体内容...</p>
|
||||
`;
|
||||
}
|
||||
|
||||
// 添加到路由映射
|
||||
export function generateContentByRoute(path, seoConfig) {
|
||||
const routeContentMap = {
|
||||
'/new-route': generateNewRouteContent(seoConfig),
|
||||
// ... 其他路由
|
||||
};
|
||||
return routeContentMap[path] || generateDefaultContent(seoConfig);
|
||||
}
|
||||
```
|
||||
|
||||
## 集成到构建流程
|
||||
|
||||
在项目的 `package.json` 中添加构建脚本:
|
||||
|
||||
```json
|
||||
{
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "vite build",
|
||||
"build:seo": "node scripts/seo-static-generator/generateStaticPages.js",
|
||||
"build:all": "npm run build && npm run build:seo"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
现在运行 `npm run build:all` 就可以同时构建 SPA 和生成静态页面。
|
||||
|
||||
## 测试
|
||||
|
||||
### 测试爬虫检测
|
||||
|
||||
使用 curl 模拟爬虫访问:
|
||||
|
||||
```bash
|
||||
# 模拟百度爬虫
|
||||
curl -A "Baiduspider" http://www.tianyuancha.cn/
|
||||
|
||||
# 模拟 Google 爬虫
|
||||
curl -A "Googlebot" http://www.tianyuancha.cn/
|
||||
|
||||
# 正常浏览器访问
|
||||
curl -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64)" http://www.tianyuancha.cn/
|
||||
```
|
||||
|
||||
### 验证 SEO
|
||||
|
||||
使用在线工具验证生成的页面:
|
||||
|
||||
- Google Rich Results Test: https://search.google.com/test/rich-results
|
||||
- 百度移动适配测试: http://ziyuan.baidu.com/
|
||||
- Schema Markup Validator: https://validator.schema.org/
|
||||
|
||||
## 常见问题
|
||||
|
||||
### Q: 如何添加新的爬虫识别?
|
||||
|
||||
A: 在 `crawlerMiddleware.js` 的 `SEARCH_ENGINE_BOTS` 数组中添加:
|
||||
|
||||
```javascript
|
||||
const SEARCH_ENGINE_BOTS = [
|
||||
// ... 现有爬虫
|
||||
'new-bot-name',
|
||||
];
|
||||
```
|
||||
|
||||
### Q: 静态页面如何保持最新?
|
||||
|
||||
A: 每次更新 SEO 配置后,重新运行:
|
||||
|
||||
```bash
|
||||
npm run generate
|
||||
```
|
||||
|
||||
建议将此步骤集成到 CI/CD 流程中。
|
||||
|
||||
### Q: 如何处理动态内容?
|
||||
|
||||
A: 对于需要动态内容的页面,可以考虑:
|
||||
|
||||
1. 使用定时任务定期重新生成静态页面
|
||||
2. 使用方案三(动态渲染服务)
|
||||
3. 在静态页面中添加 JavaScript,让正常用户访问时加载动态内容
|
||||
|
||||
### Q: Nginx 配置不生效怎么办?
|
||||
|
||||
A: 检查以下几点:
|
||||
|
||||
1. 确保 Nginx 已重启:`sudo nginx -s reload`
|
||||
2. 检查配置文件语法:`sudo nginx -t`
|
||||
3. 查看 Nginx 错误日志:`sudo tail -f /var/log/nginx/error.log`
|
||||
4. 确保静态文件路径正确
|
||||
|
||||
## 技术支持
|
||||
|
||||
如有问题,请联系技术团队或提交 Issue。
|
||||
|
||||
## 许可证
|
||||
|
||||
MIT
|
||||
367
scripts/seo-static-generator/SEO_INTEGRATION.md
Normal file
367
scripts/seo-static-generator/SEO_INTEGRATION.md
Normal file
@@ -0,0 +1,367 @@
|
||||
# SEO 静态页面集成指南
|
||||
|
||||
本文档说明如何将 SEO 静态页面生成器集成到天远查项目中。
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 1. 生成静态页面
|
||||
|
||||
在项目根目录运行:
|
||||
|
||||
```bash
|
||||
# Windows PowerShell
|
||||
node scripts\seo-static-generator\generateStaticPages.js
|
||||
|
||||
# 或者使用 cmd
|
||||
node scripts\seo-static-generator\generateStaticPages.js
|
||||
```
|
||||
|
||||
这将生成所有 SEO 优化的静态页面到 `scripts/seo-static-generator/static-pages/` 目录。
|
||||
|
||||
### 2. 生成服务器配置
|
||||
|
||||
```bash
|
||||
# 生成 Nginx 配置
|
||||
node scripts\seo-static-generator\generateNginxConfig.js
|
||||
```
|
||||
|
||||
这将生成:
|
||||
- `scripts/seo-static-generator/nginx.conf` - Nginx 配置文件
|
||||
- `scripts/seo-static-generator/.htaccess` - Apache 配置文件
|
||||
|
||||
### 3. 集成到构建流程
|
||||
|
||||
更新 `package.json`,添加以下脚本:
|
||||
|
||||
```json
|
||||
{
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "vite build",
|
||||
"build:seo": "node scripts/seo-static-generator/generateStaticPages.js",
|
||||
"build:all": "npm run build && npm run build:seo",
|
||||
"config:nginx": "node scripts/seo-static-generator/generateNginxConfig.js"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
现在可以使用:
|
||||
|
||||
```bash
|
||||
# 构建项目并生成 SEO 页面
|
||||
npm run build:all
|
||||
|
||||
# 只生成 SEO 页面
|
||||
npm run build:seo
|
||||
|
||||
# 生成 Nginx 配置
|
||||
npm run config:nginx
|
||||
```
|
||||
|
||||
## 部署步骤
|
||||
|
||||
### 开发环境测试
|
||||
|
||||
1. **生成静态页面**
|
||||
|
||||
```bash
|
||||
npm run build:seo
|
||||
```
|
||||
|
||||
2. **在浏览器中打开测试**
|
||||
|
||||
```bash
|
||||
# 在浏览器中打开示例页面
|
||||
start scripts\seo-static-generator\index.html
|
||||
```
|
||||
|
||||
### 生产环境部署
|
||||
|
||||
#### 使用 Nginx(推荐)
|
||||
|
||||
1. **构建项目**
|
||||
|
||||
```bash
|
||||
npm run build:all
|
||||
```
|
||||
|
||||
2. **生成 Nginx 配置**
|
||||
|
||||
```bash
|
||||
npm run config:nginx
|
||||
```
|
||||
|
||||
3. **上传文件到服务器**
|
||||
|
||||
```bash
|
||||
# 上传 SPA 构建文件
|
||||
scp -r dist/* user@server:/var/www/tyc-webview-v2/dist/
|
||||
|
||||
# 上传 SEO 静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
|
||||
# 上传 Nginx 配置
|
||||
scp scripts/seo-static-generator/nginx.conf user@server:/etc/nginx/sites-available/tyc-webview
|
||||
```
|
||||
|
||||
4. **配置 Nginx**
|
||||
|
||||
```bash
|
||||
# 在服务器上执行
|
||||
|
||||
# 创建软链接
|
||||
sudo ln -s /etc/nginx/sites-available/tyc-webview /etc/nginx/sites-enabled/
|
||||
|
||||
# 测试配置
|
||||
sudo nginx -t
|
||||
|
||||
# 重载 Nginx
|
||||
sudo nginx -s reload
|
||||
```
|
||||
|
||||
#### 使用 Apache
|
||||
|
||||
1. **构建项目**
|
||||
|
||||
```bash
|
||||
npm run build:all
|
||||
```
|
||||
|
||||
2. **生成 Apache 配置**
|
||||
|
||||
生成的 `.htaccess` 文件在 `scripts/seo-static-generator/.htaccess`
|
||||
|
||||
3. **上传文件到服务器**
|
||||
|
||||
```bash
|
||||
# 上传 SPA 构建文件
|
||||
scp -r dist/* user@server:/var/www/tyc-webview-v2/
|
||||
|
||||
# 上传 SEO 静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
|
||||
# 上传 .htaccess
|
||||
scp scripts/seo-static-generator/.htaccess user@server:/var/www/tyc-webview-v2/
|
||||
```
|
||||
|
||||
4. **确保 Apache 启用了 mod_rewrite**
|
||||
|
||||
```bash
|
||||
# 在服务器上执行
|
||||
sudo a2enmod rewrite
|
||||
sudo systemctl restart apache2
|
||||
```
|
||||
|
||||
## 配置说明
|
||||
|
||||
### 修改服务器配置
|
||||
|
||||
#### Nginx 配置
|
||||
|
||||
编辑 `scripts/seo-static-generator/generateNginxConfig.js`:
|
||||
|
||||
```javascript
|
||||
const config = {
|
||||
serverName: 'www.tianyuancha.cn', // 修改为你的域名
|
||||
spaRoot: '/var/www/tyc-webview-v2/dist', // SPA 静态文件目录
|
||||
staticRoot: '/var/www/tyc-webview-v2/static-pages', // SEO 静态页面目录
|
||||
sslEnabled: false, // 是否启用 HTTPS
|
||||
sslCertPath: '/etc/nginx/ssl/cert.pem', // SSL 证书路径
|
||||
sslKeyPath: '/etc/nginx/ssl/key.pem' // SSL 密钥路径
|
||||
};
|
||||
```
|
||||
|
||||
#### Apache 配置
|
||||
|
||||
Apache 使用 `.htaccess` 文件,无需额外配置,确保:
|
||||
|
||||
- `static-pages/` 目录与网站根目录同级
|
||||
- Apache 启用了 `mod_rewrite` 模块
|
||||
|
||||
### 修改 SEO 配置
|
||||
|
||||
SEO 配置在 `scripts/seo-static-generator/generateStaticPages.js` 中:
|
||||
|
||||
```javascript
|
||||
const seoConfigs = {
|
||||
'/': {
|
||||
title: '天远查官网_企业与婚姻关联风险核验_综合履约背景核验',
|
||||
description: '天远查官网(TianYuanCha)聚合官方公示数据...',
|
||||
keywords: '天远查,婚姻状态风险, 配偶背景核验...'
|
||||
},
|
||||
// ... 添加更多路由
|
||||
};
|
||||
```
|
||||
|
||||
## 测试验证
|
||||
|
||||
### 1. 测试爬虫检测
|
||||
|
||||
使用 curl 模拟爬虫访问:
|
||||
|
||||
```bash
|
||||
# 模拟百度爬虫(应该返回静态页面)
|
||||
curl -A "Baiduspider" http://www.tianyuancha.cn/
|
||||
|
||||
# 模拟 Google 爬虫(应该返回静态页面)
|
||||
curl -A "Googlebot" http://www.tianyuancha.cn/
|
||||
|
||||
# 正常浏览器访问(应该返回 SPA)
|
||||
curl -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64)" http://www.tianyuancha.cn/
|
||||
```
|
||||
|
||||
### 2. 验证 SEO
|
||||
|
||||
使用在线工具验证:
|
||||
|
||||
- **Google Rich Results Test**: https://search.google.com/test/rich-results
|
||||
- **百度移动适配测试**: http://ziyuan.baidu.com/
|
||||
- **Schema Markup Validator**: https://validator.schema.org/
|
||||
|
||||
### 3. 检查生成的文件
|
||||
|
||||
```bash
|
||||
# 检查静态页面目录
|
||||
ls -la scripts/seo-static-generator/static-pages/
|
||||
|
||||
# 检查 sitemap.xml
|
||||
cat scripts/seo-static-generator/static-pages/sitemap.xml
|
||||
|
||||
# 检查 robots.txt
|
||||
cat scripts/seo-static-generator/static-pages/robots.txt
|
||||
```
|
||||
|
||||
## 维护和更新
|
||||
|
||||
### 更新 SEO 配置
|
||||
|
||||
1. 修改 `scripts/seo-static-generator/generateStaticPages.js` 中的 `seoConfigs`
|
||||
|
||||
2. 重新生成静态页面:
|
||||
|
||||
```bash
|
||||
npm run build:seo
|
||||
```
|
||||
|
||||
3. 部署到服务器:
|
||||
|
||||
```bash
|
||||
# 上传更新的静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
```
|
||||
|
||||
### 添加新路由
|
||||
|
||||
1. 在 `scripts/seo-static-generator/generateStaticPages.js` 中添加路由:
|
||||
|
||||
```javascript
|
||||
const seoConfigs = {
|
||||
// ... 现有路由
|
||||
'/new-route': {
|
||||
title: '新页面标题',
|
||||
description: '新页面描述',
|
||||
keywords: '关键词1,关键词2'
|
||||
}
|
||||
};
|
||||
```
|
||||
|
||||
2. 在 `scripts/seo-static-generator/pageTemplates.js` 中添加内容生成函数:
|
||||
|
||||
```javascript
|
||||
function generateNewRouteContent(seoConfig) {
|
||||
return `
|
||||
<h2>新页面内容</h2>
|
||||
<p>这里写页面的具体内容...</p>
|
||||
`;
|
||||
}
|
||||
|
||||
// 添加到路由映射
|
||||
export function generateContentByRoute(path, seoConfig) {
|
||||
const routeContentMap = {
|
||||
// ... 现有路由
|
||||
'/new-route': generateNewRouteContent(seoConfig),
|
||||
};
|
||||
return routeContentMap[path] || generateDefaultContent(seoConfig);
|
||||
}
|
||||
```
|
||||
|
||||
3. 重新生成静态页面:
|
||||
|
||||
```bash
|
||||
npm run build:seo
|
||||
```
|
||||
|
||||
## 集成到 CI/CD
|
||||
|
||||
在 CI/CD 流程中添加静态页面生成:
|
||||
|
||||
```yaml
|
||||
# .github/workflows/deploy.yml 示例
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: '18'
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm install
|
||||
|
||||
- name: Build project
|
||||
run: npm run build:all
|
||||
|
||||
- name: Deploy to server
|
||||
run: |
|
||||
scp -r dist/* user@server:/var/www/tyc-webview-v2/dist/
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
```
|
||||
|
||||
## 常见问题
|
||||
|
||||
### Q: 静态页面没有生成?
|
||||
|
||||
A: 检查以下几点:
|
||||
|
||||
1. 确保 Node.js 版本 >= 14
|
||||
2. 检查是否有文件写入权限
|
||||
3. 查看控制台错误信息
|
||||
|
||||
### Q: Nginx 配置不生效?
|
||||
|
||||
A: 检查以下几点:
|
||||
|
||||
1. 确保 Nginx 已重启:`sudo nginx -s reload`
|
||||
2. 检查配置文件语法:`sudo nginx -t`
|
||||
3. 查看 Nginx 错误日志:`sudo tail -f /var/log/nginx/error.log`
|
||||
4. 确保静态文件路径正确
|
||||
|
||||
### Q: 如何处理动态内容?
|
||||
|
||||
A: 对于需要动态内容的页面,可以考虑:
|
||||
|
||||
1. 使用定时任务定期重新生成静态页面
|
||||
2. 在静态页面中添加 JavaScript,让正常用户访问时加载动态内容
|
||||
3. 考虑使用动态渲染服务(方案三)
|
||||
|
||||
### Q: 爬虫仍然看到的是 SPA?
|
||||
|
||||
A: 检查以下几点:
|
||||
|
||||
1. 确认 User-Agent 匹配规则正确
|
||||
2. 检查 Nginx/Apache 配置是否正确加载
|
||||
3. 使用 curl 测试爬虫访问
|
||||
|
||||
## 技术支持
|
||||
|
||||
如有问题,请参考详细文档:`scripts/seo-static-generator/README.md`
|
||||
352
scripts/seo-static-generator/SEO_QUICKSTART.md
Normal file
352
scripts/seo-static-generator/SEO_QUICKSTART.md
Normal file
@@ -0,0 +1,352 @@
|
||||
# SEO 静态页面方案一 - 快速开始
|
||||
|
||||
## ✅ 方案已实现
|
||||
|
||||
**方案一:Nginx中间件 + 预渲染静态页面** 已完整实现!
|
||||
|
||||
---
|
||||
|
||||
## 🎯 核心功能
|
||||
|
||||
- ✅ 自动生成SEO优化的静态HTML页面
|
||||
- ✅ 完整的TDK(Title、Description、Keywords)
|
||||
- ✅ 支持Open Graph和Twitter Cards
|
||||
- ✅ 包含Schema.org结构化数据
|
||||
- ✅ 自动生成sitemap.xml和robots.txt
|
||||
- ✅ 爬虫检测和路由区分
|
||||
- ✅ Nginx和Apache配置生成
|
||||
- ✅ 复用现有的useSEO.js配置
|
||||
|
||||
---
|
||||
|
||||
## 📁 生成的文件
|
||||
|
||||
```
|
||||
tyc-webview-v2/
|
||||
├── scripts/seo-static-generator/
|
||||
│ ├── run.js # 主生成脚本
|
||||
│ ├── generateStaticPages.js # 完整生成脚本
|
||||
│ ├── pageTemplates.js # 页面模板
|
||||
│ ├── crawlerMiddleware.js # 爬虫检测中间件
|
||||
│ ├── generateNginxConfig.js # 配置生成脚本
|
||||
│ ├── nginx.conf # Nginx配置
|
||||
│ ├── .htaccess # Apache配置
|
||||
│ ├── static-pages/ # 生成的静态页面
|
||||
│ │ ├── index.html # 首页
|
||||
│ │ ├── inquire-category-lawsuit.html
|
||||
│ │ ├── inquire-marriage.html
|
||||
│ │ ├── inquire-category-vehicle.html
|
||||
│ │ ├── inquire-category-marriageStatus.html
|
||||
│ │ ├── agent.html
|
||||
│ │ ├── help.html
|
||||
│ │ ├── example.html
|
||||
│ │ ├── service.html
|
||||
│ │ ├── inquire.html
|
||||
│ │ ├── sitemap.xml # 站点地图
|
||||
│ │ └── robots.txt # 爬虫规则
|
||||
│ ├── README.md # 详细文档
|
||||
│ └── index.html # 示例页面
|
||||
├── SEO_INTEGRATION.md # 集成指南
|
||||
├── DEPLOYMENT_GUIDE.md # 部署指南
|
||||
└── SEO_QUICKSTART.md # 本文档
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 快速开始(3步完成)
|
||||
|
||||
### 步骤 1:生成静态页面
|
||||
|
||||
```bash
|
||||
cd C:\Users\a1726\Desktop\tyc\tyc-webview-v2
|
||||
node scripts\seo-static-generator\run.js
|
||||
```
|
||||
|
||||
**输出:**
|
||||
```
|
||||
========================================
|
||||
天远查 - 静态页面生成器
|
||||
========================================
|
||||
|
||||
📂 输出目录: C:\Users\a1726\Desktop\tyc\tyc-webview-v2\scripts\seo-static-generator\static-pages
|
||||
|
||||
📝 生成静态页面:
|
||||
|
||||
✅ index.html
|
||||
✅ inquire-category-lawsuit.html
|
||||
✅ inquire-marriage.html
|
||||
✅ inquire-category-vehicle.html
|
||||
✅ inquire-category-marriageStatus.html
|
||||
✅ agent.html
|
||||
✅ help.html
|
||||
✅ example.html
|
||||
✅ service.html
|
||||
✅ inquire.html
|
||||
|
||||
📝 生成SEO文件:
|
||||
|
||||
✅ sitemap.xml
|
||||
✅ robots.txt
|
||||
|
||||
========================================
|
||||
✨ 完成! 共生成 10 个静态页面
|
||||
========================================
|
||||
```
|
||||
|
||||
### 步骤 2:生成服务器配置
|
||||
|
||||
```bash
|
||||
node scripts\seo-static-generator\generateNginxConfig.js
|
||||
```
|
||||
|
||||
**输出:**
|
||||
```
|
||||
============================================================
|
||||
生成 Nginx 配置文件
|
||||
============================================================
|
||||
|
||||
✅ Nginx配置文件生成成功!
|
||||
📁 保存路径: C:\Users\a1726\Desktop\tyc\tyc-webview-v2\scripts\seo-static-generator\nginx.conf
|
||||
|
||||
📝 使用说明:
|
||||
1. 将生成的 nginx.conf 复制到 Nginx 配置目录
|
||||
2. 修改配置中的路径(spaRoot、staticRoot等)为实际路径
|
||||
3. 测试配置: nginx -t
|
||||
4. 重载Nginx: nginx -s reload
|
||||
|
||||
✅ Apache .htaccess 配置文件生成成功!
|
||||
📁 保存路径: C:\Users\a1726\Desktop\tyc\tyc-webview-v2\scripts\seo-static-generator\.htaccess
|
||||
|
||||
📝 使用说明:
|
||||
1. 将生成的 .htaccess 复制到网站根目录
|
||||
2. 确保 Apache 启用了 mod_rewrite 模块
|
||||
3. 重启Apache服务
|
||||
```
|
||||
|
||||
### 步骤 3:部署到服务器
|
||||
|
||||
#### Nginx 部署(推荐)
|
||||
|
||||
```bash
|
||||
# 1. 上传静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
|
||||
# 2. 上传Nginx配置(先修改配置文件中的路径)
|
||||
scp scripts/seo-static-generator/nginx.conf user@server:/etc/nginx/sites-available/tyc-webview
|
||||
|
||||
# 3. 在服务器上配置
|
||||
ssh user@server
|
||||
sudo ln -s /etc/nginx/sites-available/tyc-webview /etc/nginx/sites-enabled/
|
||||
sudo nginx -t
|
||||
sudo nginx -s reload
|
||||
```
|
||||
|
||||
#### Apache 部署
|
||||
|
||||
```bash
|
||||
# 1. 上传静态页面
|
||||
scp -r scripts/seo-static-generator/static-pages/* user@server:/var/www/tyc-webview-v2/static-pages/
|
||||
|
||||
# 2. 上传.htaccess
|
||||
scp scripts/seo-static-generator/.htaccess user@server:/var/www/tyc-webview-v2/
|
||||
|
||||
# 3. 在服务器上启用mod_rewrite
|
||||
ssh user@server
|
||||
sudo a2enmod rewrite
|
||||
sudo systemctl restart apache2
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 验证部署
|
||||
|
||||
### 测试爬虫检测
|
||||
|
||||
```bash
|
||||
# 模拟百度爬虫(应该返回静态页面)
|
||||
curl -A "Baiduspider" http://www.tianyuancha.cn/
|
||||
|
||||
# 模拟 Google 爬虫(应该返回静态页面)
|
||||
curl -A "Googlebot" http://www.tianyuancha.cn/
|
||||
|
||||
# 正常浏览器访问(应该返回 SPA)
|
||||
curl -A "Mozilla/5.0" http://www.tianyuancha.cn/
|
||||
```
|
||||
|
||||
### 查看生成的页面
|
||||
|
||||
```bash
|
||||
# 在浏览器中打开示例页面
|
||||
start scripts\seo-static-generator\index.html
|
||||
|
||||
# 或直接查看生成的文件
|
||||
cat scripts\seo-static-generator\static-pages\index.html
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📋 生成的静态页面列表
|
||||
|
||||
| 路由 | 文件名 | 页面说明 |
|
||||
|------|--------|----------|
|
||||
| / | index.html | 首页 |
|
||||
| /inquire/category/lawsuit | inquire-category-lawsuit.html | 司法涉诉核验 |
|
||||
| /inquire/marriage | inquire-marriage.html | 婚前背景核验 |
|
||||
| /inquire/category/vehicle | inquire-category-vehicle.html | 车辆档案报告 |
|
||||
| /inquire/category/marriageStatus | inquire-category-marriageStatus.html | 婚姻关联风险核验 |
|
||||
| /agent | agent.html | 代理中心 |
|
||||
| /help | help.html | 帮助中心 |
|
||||
| /example | example.html | 示例报告 |
|
||||
| /service | service.html | 客服中心 |
|
||||
| /inquire | inquire.html | 核验工具 |
|
||||
|
||||
---
|
||||
|
||||
## 🌟 支持的爬虫
|
||||
|
||||
- ✅ Google (googlebot)
|
||||
- ✅ 百度 (baiduspider)
|
||||
- ✅ 必应 (bingbot)
|
||||
- ✅ 360 (360spider)
|
||||
- ✅ 搜狗 (sogou spider)
|
||||
- ✅ 头条 (bytespider)
|
||||
- ✅ 神马 (yisouspider)
|
||||
- ✅ Yandex (yandex)
|
||||
- ✅ DuckDuckGo (duckduckbot)
|
||||
- ✅ 其他常见爬虫
|
||||
|
||||
---
|
||||
|
||||
## 📚 文档导航
|
||||
|
||||
- **快速开始** - 本文档
|
||||
- **部署指南** - [DEPLOYMENT_GUIDE.md](DEPLOYMENT_GUIDE.md)
|
||||
- **集成指南** - [SEO_INTEGRATION.md](SEO_INTEGRATION.md)
|
||||
- **详细文档** - [scripts/seo-static-generator/README.md](scripts/seo-static-generator/README.md)
|
||||
|
||||
---
|
||||
|
||||
## 🔧 自定义配置
|
||||
|
||||
### 修改 SEO 配置
|
||||
|
||||
编辑 `scripts\seo-static-generator\run.js` 中的 `seoConfigs`:
|
||||
|
||||
```javascript
|
||||
const seoConfigs = {
|
||||
'/': {
|
||||
title: '你的页面标题',
|
||||
description: '你的页面描述',
|
||||
keywords: '关键词1,关键词2,关键词3'
|
||||
},
|
||||
// ... 其他路由
|
||||
};
|
||||
```
|
||||
|
||||
### 修改 Nginx 配置
|
||||
|
||||
编辑 `scripts\seo-static-generator\generateNginxConfig.js` 中的配置:
|
||||
|
||||
```javascript
|
||||
const config = {
|
||||
serverName: 'www.tianyuancha.cn',
|
||||
spaRoot: '/var/www/tyc-webview-v2/dist',
|
||||
staticRoot: '/var/www/tyc-webview-v2/static-pages',
|
||||
sslEnabled: false,
|
||||
// ... 其他配置
|
||||
};
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔄 更新和维护
|
||||
|
||||
### 更新 SEO 内容
|
||||
|
||||
1. 修改 `run.js` 中的 `seoConfigs`
|
||||
2. 重新运行:`node scripts\seo-static-generator\run.js`
|
||||
3. 部署到服务器
|
||||
|
||||
### 添加新页面
|
||||
|
||||
1. 在 `run.js` 的 `seoConfigs` 中添加新路由
|
||||
2. 在 `pageTemplates.js` 中添加内容生成函数
|
||||
3. 重新生成并部署
|
||||
|
||||
---
|
||||
|
||||
## 📊 SEO 优化特性
|
||||
|
||||
每个生成的静态页面都包含:
|
||||
|
||||
- ✅ 完整的 TDK 标签
|
||||
- ✅ Canonical URL
|
||||
- ✅ Open Graph 标签(Facebook、LinkedIn)
|
||||
- ✅ Twitter Cards
|
||||
- ✅ Schema.org 结构化数据
|
||||
- ✅ Robots Meta 标签
|
||||
- ✅ 响应式设计
|
||||
- ✅ 美观的页面样式
|
||||
- ✅ 链接到主站
|
||||
|
||||
---
|
||||
|
||||
## 🎉 工作原理
|
||||
|
||||
```
|
||||
用户请求
|
||||
↓
|
||||
Nginx 检测 User-Agent
|
||||
↓
|
||||
├─ 是爬虫 → 返回静态页面(static-pages/)
|
||||
└─ 否 → 返回 SPA 应用(dist/)
|
||||
```
|
||||
|
||||
**优势:**
|
||||
- 爬虫看到完整的SEO内容
|
||||
- 正常用户看到完整的SPA应用
|
||||
- 不影响用户体验
|
||||
- 性能优异
|
||||
|
||||
---
|
||||
|
||||
## ❓ 常见问题
|
||||
|
||||
**Q: 生成的静态页面在哪里?**
|
||||
A: 在 `scripts\seo-static-generator\static-pages\` 目录
|
||||
|
||||
**Q: 如何修改页面内容?**
|
||||
A: 编辑 `pageTemplates.js` 中的内容生成函数
|
||||
|
||||
**Q: 支持哪些服务器?**
|
||||
A: 支持 Nginx 和 Apache
|
||||
|
||||
**Q: 如何测试爬虫检测?**
|
||||
A: 使用 `curl -A "Baiduspider" http://your-domain.com/` 测试
|
||||
|
||||
**Q: 如何集成到 CI/CD?**
|
||||
A: 参考 `DEPLOYMENT_GUIDE.md` 中的 CI/CD 集成部分
|
||||
|
||||
---
|
||||
|
||||
## 🆘 技术支持
|
||||
|
||||
- 📖 查看详细文档:[scripts/seo-static-generator/README.md](scripts/seo-static-generator/README.md)
|
||||
- 📖 查看部署指南:[DEPLOYMENT_GUIDE.md](DEPLOYMENT_GUIDE.md)
|
||||
- 📖 查看集成指南:[SEO_INTEGRATION.md](SEO_INTEGRATION.md)
|
||||
|
||||
---
|
||||
|
||||
## 📝 下一步
|
||||
|
||||
1. ✅ 运行生成器创建静态页面
|
||||
2. ✅ 查看生成的页面效果
|
||||
3. ✅ 根据需要修改SEO配置
|
||||
4. ✅ 生成服务器配置文件
|
||||
5. ✅ 部署到测试服务器验证
|
||||
6. ✅ 部署到生产环境
|
||||
7. ✅ 使用在线工具验证SEO效果
|
||||
|
||||
---
|
||||
|
||||
**🎊 恭喜!方案一已完成!现在你可以开始部署了!**
|
||||
347
scripts/seo-static-generator/SEO_SOLUTION_SUMMARY.md
Normal file
347
scripts/seo-static-generator/SEO_SOLUTION_SUMMARY.md
Normal file
@@ -0,0 +1,347 @@
|
||||
# 🎉 方案一实现完成!
|
||||
|
||||
## ✅ 已完成的工作
|
||||
|
||||
### 1. 核心功能实现
|
||||
|
||||
#### ✅ 静态页面生成器
|
||||
- 📄 `pageTemplates.js` - 页面模板生成器
|
||||
- 完整的HTML模板
|
||||
- 支持TDK(Title、Description、Keywords)
|
||||
- 支持Open Graph和Twitter Cards
|
||||
- 包含Schema.org结构化数据
|
||||
- 针对不同路由的定制内容
|
||||
|
||||
#### ✅ 主生成脚本
|
||||
- 📄 `run.js` - 简化版生成脚本(推荐使用)
|
||||
- 自动生成10个静态页面
|
||||
- 自动生成sitemap.xml
|
||||
- 自动生成robots.txt
|
||||
- 兼容性更好,错误处理完善
|
||||
|
||||
- 📄 `generateStaticPages.js` - 完整版生成脚本
|
||||
- 包含所有功能
|
||||
- 支持更多路由
|
||||
|
||||
#### ✅ 爬虫检测中间件
|
||||
- 📄 `crawlerMiddleware.js` - 爬虫检测
|
||||
- 支持10+种主流爬虫识别
|
||||
- Nginx配置生成器
|
||||
- Apache .htaccess配置生成器
|
||||
|
||||
#### ✅ 配置文件生成器
|
||||
- 📄 `generateNginxConfig.js` - 配置生成脚本
|
||||
- 自动生成Nginx配置
|
||||
- 自动生成Apache .htaccess配置
|
||||
- 包含详细的使用说明
|
||||
|
||||
### 2. 生成的静态页面
|
||||
|
||||
已成功生成 **10个** SEO优化的静态HTML页面:
|
||||
|
||||
| 路由 | 文件名 | 页面说明 |
|
||||
|------|--------|----------|
|
||||
| / | index.html | 首页 |
|
||||
| /inquire/category/lawsuit | inquire-category-lawsuit.html | 司法涉诉核验 |
|
||||
| /inquire/marriage | inquire-marriage.html | 婚前背景核验 |
|
||||
| /inquire/category/vehicle | inquire-category-vehicle.html | 车辆档案报告 |
|
||||
| /inquire/category/marriageStatus | inquire-category-marriageStatus.html | 婚姻关联风险核验 |
|
||||
| /agent | agent.html | 代理中心 |
|
||||
| /help | help.html | 帮助中心 |
|
||||
| /example | example.html | 示例报告 |
|
||||
| /service | service.html | 客服中心 |
|
||||
| /inquire | inquire.html | 核验工具 |
|
||||
|
||||
### 3. SEO文件
|
||||
|
||||
- ✅ sitemap.xml - 站点地图
|
||||
- ✅ robots.txt - 爬虫规则
|
||||
|
||||
### 4. 服务器配置
|
||||
|
||||
- ✅ nginx.conf - Nginx配置文件
|
||||
- ✅ .htaccess - Apache配置文件
|
||||
|
||||
### 5. 文档
|
||||
|
||||
- ✅ README.md - 详细使用文档
|
||||
- ✅ DEPLOYMENT_GUIDE.md - 部署指南
|
||||
- ✅ SEO_INTEGRATION.md - 集成指南
|
||||
- ✅ SEO_QUICKSTART.md - 快速开始
|
||||
- ✅ SEO_SOLUTION_SUMMARY.md - 本文档
|
||||
|
||||
---
|
||||
|
||||
## 📁 文件结构
|
||||
|
||||
```
|
||||
tyc-webview-v2/
|
||||
├── scripts/
|
||||
│ └── seo-static-generator/
|
||||
│ ├── 📄 run.js # 主生成脚本(推荐)
|
||||
│ ├── 📄 generateStaticPages.js # 完整生成脚本
|
||||
│ ├── 📄 pageTemplates.js # 页面模板
|
||||
│ ├── 📄 crawlerMiddleware.js # 爬虫检测中间件
|
||||
│ ├── 📄 generateNginxConfig.js # 配置生成脚本
|
||||
│ ├── 📄 package.json # 项目配置
|
||||
│ ├── 📄 README.md # 详细文档
|
||||
│ ├── 📄 index.html # 示例页面
|
||||
│ ├── 📄 nginx.conf # Nginx配置
|
||||
│ ├── 📄 .htaccess # Apache配置
|
||||
│ └── 📁 static-pages/ # 生成的静态页面
|
||||
│ ├── index.html
|
||||
│ ├── inquire-category-lawsuit.html
|
||||
│ ├── inquire-marriage.html
|
||||
│ ├── inquire-category-vehicle.html
|
||||
│ ├── inquire-category-marriageStatus.html
|
||||
│ ├── agent.html
|
||||
│ ├── help.html
|
||||
│ ├── example.html
|
||||
│ ├── service.html
|
||||
│ ├── inquire.html
|
||||
│ ├── sitemap.xml
|
||||
│ └── robots.txt
|
||||
├── 📄 SEO_INTEGRATION.md # 集成指南
|
||||
├── 📄 DEPLOYMENT_GUIDE.md # 部署指南
|
||||
├── 📄 SEO_QUICKSTART.md # 快速开始
|
||||
└── 📄 SEO_SOLUTION_SUMMARY.md # 本文档
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 快速使用
|
||||
|
||||
### 1. 生成静态页面
|
||||
|
||||
```bash
|
||||
cd C:\Users\a1726\Desktop\tyc\tyc-webview-v2
|
||||
node scripts\seo-static-generator\run.js
|
||||
```
|
||||
|
||||
### 2. 生成服务器配置
|
||||
|
||||
```bash
|
||||
node scripts\seo-static-generator\generateNginxConfig.js
|
||||
```
|
||||
|
||||
### 3. 查看生成的页面
|
||||
|
||||
```bash
|
||||
# 在浏览器中打开
|
||||
start scripts\seo-static-generator\index.html
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🌟 核心特性
|
||||
|
||||
### ✅ SEO优化
|
||||
|
||||
- 完整的TDK标签(Title、Description、Keywords)
|
||||
- Canonical URL
|
||||
- Open Graph标签(Facebook、LinkedIn)
|
||||
- Twitter Cards
|
||||
- Schema.org结构化数据
|
||||
- Robots Meta标签
|
||||
- sitemap.xml
|
||||
- robots.txt
|
||||
|
||||
### ✅ 爬虫检测
|
||||
|
||||
支持识别10+种主流爬虫:
|
||||
- Google (googlebot)
|
||||
- 百度 (baiduspider)
|
||||
- 必应 (bingbot)
|
||||
- 360 (360spider)
|
||||
- 搜狗 (sogou spider)
|
||||
- 头条 (bytespider)
|
||||
- 神马 (yisouspider)
|
||||
- Yandex
|
||||
- DuckDuckGo
|
||||
- 其他常见爬虫
|
||||
|
||||
### ✅ 服务器支持
|
||||
|
||||
- ✅ Nginx配置(推荐)
|
||||
- ✅ Apache配置
|
||||
- ✅ Express中间件(Node.js)
|
||||
|
||||
### ✅ 集成方便
|
||||
|
||||
- 复用现有的useSEO.js配置
|
||||
- 自动化生成
|
||||
- 易于维护和更新
|
||||
- 支持CI/CD集成
|
||||
|
||||
---
|
||||
|
||||
## 🎯 工作原理
|
||||
|
||||
```
|
||||
用户请求
|
||||
↓
|
||||
Nginx/Apache 检测 User-Agent
|
||||
↓
|
||||
├─ 是爬虫 → 返回静态页面(static-pages/)
|
||||
│ ├─ 完整的TDK
|
||||
│ ├─ Open Graph
|
||||
│ ├─ 结构化数据
|
||||
│ └─ SEO优化的内容
|
||||
│
|
||||
└─ 否 → 返回 SPA 应用(dist/)
|
||||
├─ 完整的Vue SPA
|
||||
├─ 交互功能
|
||||
└─ 动态内容
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📚 文档导航
|
||||
|
||||
| 文档 | 说明 | 适用场景 |
|
||||
|------|------|----------|
|
||||
| **SEO_QUICKSTART.md** | 快速开始 | 首次使用,快速上手 |
|
||||
| **DEPLOYMENT_GUIDE.md** | 部署指南 | 部署到生产环境 |
|
||||
| **SEO_INTEGRATION.md** | 集成指南 | 集成到现有项目 |
|
||||
| **scripts/seo-static-generator/README.md** | 详细文档 | 深入了解所有功能 |
|
||||
|
||||
---
|
||||
|
||||
## 🔄 下一步建议
|
||||
|
||||
### 1. 本地测试
|
||||
|
||||
```bash
|
||||
# 1. 生成静态页面
|
||||
node scripts\seo-static-generator\run.js
|
||||
|
||||
# 2. 在浏览器中查看
|
||||
start scripts\seo-static-generator\index.html
|
||||
|
||||
# 3. 检查TDK标签
|
||||
# 在浏览器中按F12查看源代码
|
||||
```
|
||||
|
||||
### 2. 配置修改
|
||||
|
||||
根据实际需求修改:
|
||||
- SEO配置:编辑 `run.js` 中的 `seoConfigs`
|
||||
- 服务器配置:编辑 `generateNginxConfig.js` 中的 `config`
|
||||
|
||||
### 3. 测试环境部署
|
||||
|
||||
先部署到测试环境,验证功能正常后再部署到生产环境。
|
||||
|
||||
### 4. 生产环境部署
|
||||
|
||||
参考 `DEPLOYMENT_GUIDE.md` 进行生产环境部署。
|
||||
|
||||
### 5. SEO验证
|
||||
|
||||
使用以下工具验证SEO效果:
|
||||
- Google Rich Results Test
|
||||
- 百度移动适配测试
|
||||
- Schema Markup Validator
|
||||
|
||||
---
|
||||
|
||||
## 📊 生成的页面示例
|
||||
|
||||
### index.html(首页)
|
||||
|
||||
包含:
|
||||
- ✅ 完整的HTML结构
|
||||
- ✅ 所有meta标签
|
||||
- ✅ Open Graph标签
|
||||
- ✅ Twitter Cards
|
||||
- ✅ Schema.org结构化数据
|
||||
- ✅ 响应式CSS样式
|
||||
- ✅ 优化的页面内容
|
||||
- ✅ 链接到主站
|
||||
|
||||
### 其他页面
|
||||
|
||||
每个页面都包含:
|
||||
- 针对该路由的定制内容
|
||||
- 完整的SEO标签
|
||||
- 相关的服务介绍
|
||||
- 使用场景说明
|
||||
- 联系方式
|
||||
|
||||
---
|
||||
|
||||
## 🔧 自定义和扩展
|
||||
|
||||
### 修改页面内容
|
||||
|
||||
编辑 `pageTemplates.js` 中的内容生成函数:
|
||||
|
||||
```javascript
|
||||
function generateCustomContent(seoConfig) {
|
||||
return `
|
||||
<h2>自定义内容</h2>
|
||||
<p>这里写你的自定义内容...</p>
|
||||
`;
|
||||
}
|
||||
```
|
||||
|
||||
### 添加新路由
|
||||
|
||||
1. 在 `run.js` 中添加路由配置
|
||||
2. 在 `pageTemplates.js` 中添加内容生成函数
|
||||
3. 重新生成静态页面
|
||||
|
||||
### 修改样式
|
||||
|
||||
编辑 `pageTemplates.js` 中的CSS样式部分。
|
||||
|
||||
---
|
||||
|
||||
## ✨ 优势总结
|
||||
|
||||
### 与其他方案对比
|
||||
|
||||
| 特性 | 方案一(本方案) | 方案二(Puppeteer) | 方案三(动态渲染) | 方案四(Nuxt.js) |
|
||||
|------|-----------------|---------------------|-------------------|-------------------|
|
||||
| 实现难度 | ⭐⭐ 简单 | ⭐⭐⭐⭐ 复杂 | ⭐⭐⭐⭐⭐ 非常复杂 | ⭐⭐⭐⭐⭐ 非常复杂 |
|
||||
| 性能 | ⭐⭐⭐⭐⭐ 优秀 | ⭐⭐⭐ 一般 | ⭐⭐ 较差 | ⭐⭐⭐⭐⭐ 优秀 |
|
||||
| 维护成本 | ⭐⭐ 低 | ⭐⭐⭐ 中等 | ⭐⭐⭐⭐ 较高 | ⭐⭐⭐⭐⭐ 很高 |
|
||||
| SEO效果 | ⭐⭐⭐⭐ 优秀 | ⭐⭐⭐⭐⭐ 完美 | ⭐⭐⭐⭐⭐ 完美 | ⭐⭐⭐⭐⭐ 完美 |
|
||||
| 灵活性 | ⭐⭐⭐⭐ 高 | ⭐⭐⭐ 中等 | ⭐⭐⭐⭐⭐ 很高 | ⭐⭐⭐⭐⭐ 很高 |
|
||||
| 成本 | ⭐⭐⭐⭐⭐ 很低 | ⭐⭐⭐ 中等 | ⭐⭐ 较高 | ⭐⭐⭐⭐⭐ 很高 |
|
||||
|
||||
### 推荐理由
|
||||
|
||||
✅ **实现简单** - 无需重构现有代码
|
||||
✅ **性能优异** - 静态页面响应速度快
|
||||
✅ **易于维护** - 静态页面模板结构清晰
|
||||
✅ **成本可控** - 不增加服务器负担
|
||||
✅ **效果良好** - 满足大部分SEO需求
|
||||
✅ **灵活扩展** - 支持自定义和扩展
|
||||
|
||||
---
|
||||
|
||||
## 🎊 恭喜!
|
||||
|
||||
方案一已经完整实现并可以直接使用!
|
||||
|
||||
现在你可以:
|
||||
1. ✅ 查看生成的静态页面
|
||||
2. ✅ 根据需要修改配置
|
||||
3. ✅ 部署到测试环境
|
||||
4. ✅ 部署到生产环境
|
||||
5. ✅ 验证SEO效果
|
||||
|
||||
---
|
||||
|
||||
## 📞 技术支持
|
||||
|
||||
如有问题,请参考:
|
||||
- 📖 详细文档:`scripts/seo-static-generator/README.md`
|
||||
- 📖 部署指南:`DEPLOYMENT_GUIDE.md`
|
||||
- 📖 集成指南:`SEO_INTEGRATION.md`
|
||||
- 📖 快速开始:`SEO_QUICKSTART.md`
|
||||
|
||||
---
|
||||
|
||||
**🎉 祝部署成功!**
|
||||
324
scripts/seo-static-generator/crawlerMiddleware.js
Normal file
324
scripts/seo-static-generator/crawlerMiddleware.js
Normal file
@@ -0,0 +1,324 @@
|
||||
/**
|
||||
* 爬虫检测中间件
|
||||
* 用于识别和区分搜索引擎爬虫和正常用户访问
|
||||
*/
|
||||
|
||||
// 常见搜索引擎爬虫的User-Agent列表
|
||||
const SEARCH_ENGINE_BOTS = [
|
||||
// Google
|
||||
'googlebot',
|
||||
'googlebot-image',
|
||||
'googlebot-news',
|
||||
'mediapartners-google',
|
||||
'adsbot-google',
|
||||
|
||||
// 百度
|
||||
'baiduspider',
|
||||
'baiduspider-mobile',
|
||||
|
||||
// 必应
|
||||
'bingbot',
|
||||
'msnbot',
|
||||
|
||||
// 360
|
||||
'360spider',
|
||||
|
||||
// 搜狗
|
||||
'sogou spider',
|
||||
'sogou-orion',
|
||||
|
||||
// 雅虎
|
||||
'slurp',
|
||||
'yahoo',
|
||||
|
||||
// Yandex
|
||||
'yandex',
|
||||
|
||||
// DuckDuckGo
|
||||
'duckduckbot',
|
||||
|
||||
// 头头条
|
||||
'bytespider',
|
||||
|
||||
// 神马
|
||||
'yisouspider',
|
||||
|
||||
// 其他
|
||||
'spider',
|
||||
'crawl',
|
||||
'bot',
|
||||
'curl',
|
||||
'wget',
|
||||
];
|
||||
|
||||
// 爬虫检测函数
|
||||
export function isCrawler(userAgent) {
|
||||
if (!userAgent) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const ua = userAgent.toLowerCase();
|
||||
|
||||
// 检查是否匹配已知的爬虫User-Agent
|
||||
return SEARCH_ENGINE_BOTS.some(bot => ua.includes(bot));
|
||||
}
|
||||
|
||||
// Node.js Express 中间件
|
||||
export function crawlerMiddleware(options = {}) {
|
||||
const {
|
||||
staticPagesPath = '../static-pages',
|
||||
fallbackPath = '/index.html',
|
||||
debug = false
|
||||
} = options;
|
||||
|
||||
return (req, res, next) => {
|
||||
const userAgent = req.headers['user-agent'];
|
||||
|
||||
// 检测是否是爬虫
|
||||
if (isCrawler(userAgent)) {
|
||||
if (debug) {
|
||||
console.log(`🕷️ 检测到爬虫: ${userAgent}`);
|
||||
console.log(`📍 请求路径: ${req.path}`);
|
||||
}
|
||||
|
||||
// 尝试返回对应的静态页面
|
||||
const path = require('path');
|
||||
const fs = require('fs');
|
||||
|
||||
const staticDir = path.join(__dirname, staticPagesPath);
|
||||
|
||||
// 将路径转换为文件名
|
||||
let filename = req.path
|
||||
.replace(/^\//, '')
|
||||
.replace(/\/+/g, '-')
|
||||
.replace(/:/g, '-');
|
||||
|
||||
if (!filename) {
|
||||
filename = 'index';
|
||||
}
|
||||
|
||||
const filepath = path.join(staticDir, `${filename}.html`);
|
||||
|
||||
// 检查静态文件是否存在
|
||||
if (fs.existsSync(filepath)) {
|
||||
if (debug) {
|
||||
console.log(`📄 返回静态页面: ${filepath}`);
|
||||
}
|
||||
|
||||
const html = fs.readFileSync(filepath, 'utf-8');
|
||||
res.setHeader('Content-Type', 'text/html; charset=utf-8');
|
||||
res.send(html);
|
||||
return;
|
||||
} else {
|
||||
if (debug) {
|
||||
console.log(`⚠️ 静态页面不存在: ${filepath}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 正常用户或未找到静态页面,继续处理
|
||||
next();
|
||||
};
|
||||
}
|
||||
|
||||
// Nginx 配置生成器
|
||||
export function generateNginxConfig(options = {}) {
|
||||
const {
|
||||
serverName = 'www.tianyuancha.cn',
|
||||
spaRoot = '/var/www/tyc-webview-v2/dist',
|
||||
staticRoot = '/var/www/tyc-webview-v2/static-pages',
|
||||
sslEnabled = false,
|
||||
sslCertPath = '',
|
||||
sslKeyPath = ''
|
||||
} = options;
|
||||
|
||||
const protocol = sslEnabled ? 'https' : 'http';
|
||||
const listenPort = sslEnabled ? '443 ssl' : '80';
|
||||
const sslConfig = sslEnabled ? `
|
||||
ssl_certificate ${sslCertPath};
|
||||
ssl_certificate_key ${sslKeyPath};
|
||||
ssl_protocols TLSv1.2 TLSv1.3;
|
||||
ssl_ciphers HIGH:!aNULL:!MD5;
|
||||
` : '';
|
||||
|
||||
const httpRedirect = sslEnabled ? `
|
||||
# HTTP 重定向到 HTTPS
|
||||
server {
|
||||
listen 80;
|
||||
server_name ${serverName};
|
||||
return 301 https://$server_name$request_uri;
|
||||
}
|
||||
` : '';
|
||||
|
||||
return `# Nginx 配置文件 - 天远查 SPA + SEO 静态页面
|
||||
# 自动生成时间: ${new Date().toLocaleString('zh-CN')}
|
||||
|
||||
${httpRedirect}
|
||||
|
||||
server {
|
||||
listen ${listenPort};
|
||||
server_name ${serverName};
|
||||
charset utf-8;
|
||||
|
||||
${sslConfig}
|
||||
# 日志配置
|
||||
access_log /var/log/nginx/${serverName}-access.log;
|
||||
error_log /var/log/nginx/${serverName}-error.log;
|
||||
|
||||
# 爬虫检测
|
||||
set $is_bot 0;
|
||||
|
||||
# Google
|
||||
if ($http_user_agent ~* (googlebot|googlebot-image|googlebot-news|mediapartners-google|adsbot-google)) {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 百度
|
||||
if ($http_user_agent ~* (baiduspider|baiduspider-mobile)) {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 必应
|
||||
if ($http_user_agent ~* (bingbot|msnbot)) {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 360
|
||||
if ($http_user_agent ~* "360spider") {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 搜狗
|
||||
if ($http_user_agent ~* "(sogou spider|sogou-orion)") {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 其他爬虫
|
||||
if ($http_user_agent ~* "(spider|crawl|bot|slurp|yandex|duckduckbot|bytespider|yisouspider)") {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 根路径处理
|
||||
location = / {
|
||||
if ($is_bot = 1) {
|
||||
root ${staticRoot};
|
||||
try_files /index.html /index.html;
|
||||
break;
|
||||
}
|
||||
root ${spaRoot};
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# 静态页面处理
|
||||
location ~ ^/([^/]+)(/.*)?$ {
|
||||
# 将路径转换为文件名
|
||||
set $static_filename $1;
|
||||
set $rest_path $2;
|
||||
|
||||
if ($is_bot = 1) {
|
||||
root ${staticRoot};
|
||||
try_files /$static_filename.html /index.html;
|
||||
break;
|
||||
}
|
||||
root ${spaRoot};
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# SPA 路由回退
|
||||
location / {
|
||||
root ${spaRoot};
|
||||
try_files $uri $uri/ /index.html;
|
||||
add_header Cache-Control "no-cache";
|
||||
}
|
||||
|
||||
# 静态资源缓存
|
||||
location ~* \\.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
|
||||
root ${spaRoot};
|
||||
expires 1y;
|
||||
add_header Cache-Control "public, immutable";
|
||||
}
|
||||
|
||||
# API 代理
|
||||
location /api/ {
|
||||
proxy_pass http://localhost:8080;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection 'upgrade';
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_cache_bypass $http_upgrade;
|
||||
}
|
||||
|
||||
# Gzip 压缩
|
||||
gzip on;
|
||||
gzip_vary on;
|
||||
gzip_min_length 1024;
|
||||
gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml+rss application/javascript application/json;
|
||||
|
||||
# 安全头
|
||||
add_header X-Frame-Options "SAMEORIGIN";
|
||||
add_header X-Content-Type-Options "nosniff";
|
||||
add_header X-XSS-Protection "1; mode=block";
|
||||
}
|
||||
`;
|
||||
}
|
||||
|
||||
// 生成 .htaccess 文件(Apache)
|
||||
export function generateHtaccessConfig(options = {}) {
|
||||
const {
|
||||
staticRoot = '/static-pages',
|
||||
spaRoot = '/'
|
||||
} = options;
|
||||
|
||||
return `# Apache .htaccess 配置 - 天远查 SPA + SEO 静态页面
|
||||
# 自动生成时间: ${new Date().toLocaleString('zh-CN')}
|
||||
|
||||
# 启用重写引擎
|
||||
RewriteEngine On
|
||||
|
||||
# 爬虫检测
|
||||
RewriteCond %{HTTP_USER_AGENT} (googlebot|googlebot-image|googlebot-news|mediapartners-google|adsbot-google) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (baiduspider|baiduspider-mobile) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (bingbot|msnbot) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} "360spider" [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (sogou spider|sogou-orion) [NC,OR]
|
||||
RewriteCond %{HTTP_USER_AGENT} (spider|crawl|bot|slurp|yandex|duckduckbot|bytespider|yisouspider) [NC]
|
||||
|
||||
# 爬虫访问静态页面
|
||||
RewriteRule ^$ ${staticRoot}/index.html [L]
|
||||
RewriteRule ^([^/]+)/?$ ${staticRoot}/$1.html [L]
|
||||
RewriteRule ^([^/]+)/(.+)$ ${staticRoot}/$1.html [L]
|
||||
|
||||
# 正常用户访问 SPA
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule . ${spaRoot}index.html [L]
|
||||
|
||||
# Gzip 压缩
|
||||
<IfModule mod_deflate.c>
|
||||
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/json
|
||||
</IfModule>
|
||||
|
||||
# 缓存控制
|
||||
<IfModule mod_expires.c>
|
||||
ExpiresActive On
|
||||
ExpiresByType image/jpg "access plus 1 year"
|
||||
ExpiresByType image/jpeg "access plus 1 year"
|
||||
ExpiresByType image/gif "access plus 1 year"
|
||||
ExpiresByType image/png "access plus 1 year"
|
||||
ExpiresByType text/css "access plus 1 month"
|
||||
ExpiresByType application/javascript "access plus 1 month"
|
||||
</IfModule>
|
||||
|
||||
# 安全头
|
||||
<IfModule mod_headers.c>
|
||||
Header set X-Frame-Options "SAMEORIGIN"
|
||||
Header set X-Content-Type-Options "nosniff"
|
||||
Header set X-XSS-Protection "1; mode=block"
|
||||
</IfModule>
|
||||
`;
|
||||
}
|
||||
|
||||
// 导出工具函数
|
||||
export { SEARCH_ENGINE_BOTS };
|
||||
39
scripts/seo-static-generator/debug.js
Normal file
39
scripts/seo-static-generator/debug.js
Normal file
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* 调试脚本
|
||||
*/
|
||||
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
|
||||
console.log('当前工作目录:', process.cwd());
|
||||
console.log('脚本目录:', __dirname);
|
||||
console.log('输出目录:', path.resolve(__dirname, 'static-pages'));
|
||||
|
||||
const OUTPUT_DIR = path.resolve(__dirname, 'static-pages');
|
||||
|
||||
console.log('\n创建目录...');
|
||||
try {
|
||||
if (!fs.existsSync(OUTPUT_DIR)) {
|
||||
fs.mkdirSync(OUTPUT_DIR, { recursive: true });
|
||||
console.log('目录创建成功:', OUTPUT_DIR);
|
||||
} else {
|
||||
console.log('目录已存在:', OUTPUT_DIR);
|
||||
}
|
||||
|
||||
// 写入测试文件
|
||||
const testFile = path.join(OUTPUT_DIR, 'test.html');
|
||||
fs.writeFileSync(testFile, '<!DOCTYPE html><html><body>测试</body></html>', 'utf-8');
|
||||
console.log('测试文件写入成功:', testFile);
|
||||
|
||||
// 读取文件验证
|
||||
const content = fs.readFileSync(testFile, 'utf-8');
|
||||
console.log('文件内容:', content);
|
||||
|
||||
} catch (error) {
|
||||
console.error('错误:', error.message);
|
||||
console.error('错误堆栈:', error.stack);
|
||||
}
|
||||
74
scripts/seo-static-generator/generateNginxConfig.js
Normal file
74
scripts/seo-static-generator/generateNginxConfig.js
Normal file
@@ -0,0 +1,74 @@
|
||||
/**
|
||||
* Nginx配置生成脚本
|
||||
*/
|
||||
|
||||
import { generateNginxConfig, generateHtaccessConfig } from './crawlerMiddleware.js';
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
|
||||
// 配置选项
|
||||
const config = {
|
||||
serverName: 'www.tianyuancha.cn',
|
||||
spaRoot: '/var/www/tyc-webview-v2/dist',
|
||||
staticRoot: '/var/www/tyc-webview-v2/static-pages',
|
||||
sslEnabled: false, // 如果使用HTTPS,设置为true
|
||||
sslCertPath: '/etc/nginx/ssl/cert.pem',
|
||||
sslKeyPath: '/etc/nginx/ssl/key.pem'
|
||||
};
|
||||
|
||||
// 生成Nginx配置
|
||||
function main() {
|
||||
console.log('='.repeat(60));
|
||||
console.log(' 生成 Nginx 配置文件');
|
||||
console.log('='.repeat(60));
|
||||
console.log();
|
||||
|
||||
try {
|
||||
// 生成Nginx配置
|
||||
const nginxConfig = generateNginxConfig(config);
|
||||
|
||||
const nginxConfigPath = path.join(__dirname, 'nginx.conf');
|
||||
fs.writeFileSync(nginxConfigPath, nginxConfig, 'utf-8');
|
||||
|
||||
console.log('✅ Nginx配置文件生成成功!');
|
||||
console.log(`📁 保存路径: ${nginxConfigPath}`);
|
||||
console.log();
|
||||
|
||||
console.log('📝 使用说明:');
|
||||
console.log('1. 将生成的 nginx.conf 复制到 Nginx 配置目录');
|
||||
console.log(`2. 修改配置中的路径(spaRoot、staticRoot等)为实际路径`);
|
||||
console.log('3. 测试配置: nginx -t');
|
||||
console.log('4. 重载Nginx: nginx -s reload');
|
||||
console.log();
|
||||
|
||||
// 生成Apache .htaccess配置
|
||||
const htaccessConfig = generateHtaccessConfig({
|
||||
staticRoot: '/static-pages',
|
||||
spaRoot: '/'
|
||||
});
|
||||
|
||||
const htaccessPath = path.join(__dirname, '.htaccess');
|
||||
fs.writeFileSync(htaccessPath, htaccessConfig, 'utf-8');
|
||||
|
||||
console.log('✅ Apache .htaccess 配置文件生成成功!');
|
||||
console.log(`📁 保存路径: ${htaccessPath}`);
|
||||
console.log();
|
||||
|
||||
console.log('📝 使用说明:');
|
||||
console.log('1. 将生成的 .htaccess 复制到网站根目录');
|
||||
console.log('2. 确保 Apache 启用了 mod_rewrite 模块');
|
||||
console.log('3. 重启Apache服务');
|
||||
console.log();
|
||||
|
||||
} catch (error) {
|
||||
console.error('❌ 生成失败:', error);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
// 运行
|
||||
main();
|
||||
261
scripts/seo-static-generator/generateStaticPages.js
Normal file
261
scripts/seo-static-generator/generateStaticPages.js
Normal file
@@ -0,0 +1,261 @@
|
||||
/**
|
||||
* 静态页面生成器
|
||||
* 基于路由和SEO配置自动生成静态HTML页面
|
||||
*/
|
||||
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
import { generateStaticHTML, generateContentByRoute } from './pageTemplates.js';
|
||||
|
||||
// 获取当前文件的目录
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
|
||||
// SEO配置 - 直接从useSEO.js复制过来
|
||||
const seoConfigs = {
|
||||
'/': {
|
||||
title: '天远查官网_企业与婚姻关联风险核验_综合履约背景核验',
|
||||
description: '天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。',
|
||||
keywords: '天远查,婚姻状态风险, 配偶背景核验,企业信用查询,司法诉讼记录,资产风险评估'
|
||||
},
|
||||
'/inquire/category/lawsuit': {
|
||||
title: '司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查',
|
||||
description: '天远查司法风险检测中心,聚合全国法院公开公示数据。一键筛查开庭公告、裁判文书、立案信息及执行记录。帮助用户快速识别法律纠纷隐患,全方位扫除合作盲区。',
|
||||
keywords: '司法案件核验,法律诉讼记录,个人涉诉详情,法院公告查询,案件执行状态'
|
||||
},
|
||||
'/inquire/marriage': {
|
||||
title: '婚前背景核验_婚姻关联司法风险筛查_情感综合保障_天远查',
|
||||
description: '天远查婚恋风险报告为您提供深度的背景核实服务。基于合法公开数据,排查对象的重婚司法记录、家庭暴力涉诉历史、潜在债务风险及不良嗜好风险。拒绝盲目信任,用数据守护您的情感与财产安全。',
|
||||
keywords: '婚前背景核实,婚恋对象评估,婚姻司法风险,个人情感风险,婚前背调工具'
|
||||
},
|
||||
'/inquire/category/vehicle': {
|
||||
title: '车辆档案报告_二手车车况与产权风险检测_机动车报告_天远查',
|
||||
description: '天远查车辆数据中心,让车辆交易更透明。支持通过车牌号或VIN码,核验车辆的初次登记信息、抵押查封状态、事故维修记录及产权属性。数据同步权威行业系统,精准识别问题车。',
|
||||
keywords: '车辆维修记录,二手车出险报告,车辆抵押报告,车况报告,机动车档案'
|
||||
},
|
||||
'/inquire/category/marriageStatus': {
|
||||
title: '个人婚姻关联风险核验_家庭背景合规报告_天远查',
|
||||
description: '天远查提供基于大数据的婚姻关联风险评估。通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况与情感履历。合法合规,保障知情权。',
|
||||
keywords: '婚史风险排查,家庭背景核实,婚姻诚信评估,情感状态评估,涉婚法律记录'
|
||||
},
|
||||
'/agent': {
|
||||
title: '天远查代理 - 免费开通代理权限 | 大数据风险报告代理',
|
||||
description: '天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。专业的大数据风险报告、婚姻查询、个人信用评估等服务的代理合作。',
|
||||
keywords: '天远查代理, 免费代理, 大数据风险报告代理, 代理权限, 代理收益'
|
||||
},
|
||||
'/help': {
|
||||
title: '帮助中心 - 天远查使用指南 | 常见问题解答',
|
||||
description: '天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。',
|
||||
keywords: '天远查帮助, 使用指南, 常见问题, 操作教程, 客服支持'
|
||||
},
|
||||
'/help/guide': {
|
||||
title: '使用指南 - 天远查操作教程 | 功能说明',
|
||||
description: '天远查详细使用指南,包含各功能模块的操作教程、功能说明、注意事项等,让用户快速上手使用。',
|
||||
keywords: '使用指南, 操作教程, 功能说明, 快速上手, 天远查教程'
|
||||
},
|
||||
'/example': {
|
||||
title: '示例报告 - 天远查报告展示 | 大数据风险报告样例',
|
||||
description: '天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例,让用户了解报告内容和格式。',
|
||||
keywords: '示例报告, 报告展示, 报告样例, 大数据风险报告, 婚姻查询报告'
|
||||
},
|
||||
'/service': {
|
||||
title: '客服中心 - 天远查在线客服 | 技术支持',
|
||||
description: '天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。',
|
||||
keywords: '客服中心, 在线客服, 技术支持, 问题反馈, 天远查客服'
|
||||
},
|
||||
'/inquire': {
|
||||
title: '核验工具多场景数据核验服务天远查',
|
||||
description: '提供车辆、企业、个人等多场景核验,包括状态、信用、身份等查询,权威高效,保护隐私。',
|
||||
keywords: '核验工具,数据核验服务,车辆核验,企业核验,天远查'
|
||||
},
|
||||
};
|
||||
|
||||
// 额外的路由配置(从router.js提取)
|
||||
const additionalRoutes = [
|
||||
{ path: '/historyQuery', title: '历史报告' },
|
||||
{ path: '/withdraw', title: '提现' },
|
||||
{ path: '/complaint', title: '投诉' },
|
||||
{ path: '/report', title: '报告结果' },
|
||||
{ path: '/agent/promote', title: '代理推广' },
|
||||
{ path: '/me', title: '个人中心' },
|
||||
];
|
||||
|
||||
// 输出目录配置
|
||||
const OUTPUT_DIR = path.resolve(__dirname, 'static-pages');
|
||||
|
||||
// 确保输出目录存在
|
||||
function ensureOutputDir() {
|
||||
try {
|
||||
if (!fs.existsSync(OUTPUT_DIR)) {
|
||||
fs.mkdirSync(OUTPUT_DIR, { recursive: true });
|
||||
console.log(`📁 创建输出目录: ${OUTPUT_DIR}`);
|
||||
}
|
||||
console.log(`📂 输出目录已存在: ${OUTPUT_DIR}`);
|
||||
} catch (error) {
|
||||
console.error(`❌ 创建目录失败: ${error.message}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
// 将路径转换为文件名
|
||||
function pathToFilename(routePath) {
|
||||
// 替换特殊字符
|
||||
let filename = routePath
|
||||
.replace(/^\//, '') // 移除开头的 /
|
||||
.replace(/\/+/g, '-') // 将 / 替换为 -
|
||||
.replace(/:/g, '-') // 将 : 替换为 -
|
||||
|
||||
// 如果是根路径,使用 index
|
||||
if (!filename) {
|
||||
filename = 'index';
|
||||
}
|
||||
|
||||
return `${filename}.html`;
|
||||
}
|
||||
|
||||
// 生成静态页面
|
||||
function generatePage(routePath, seoConfig) {
|
||||
const filename = pathToFilename(routePath);
|
||||
const filepath = path.join(OUTPUT_DIR, filename);
|
||||
|
||||
// 生成页面内容
|
||||
const content = generateContentByRoute(routePath, seoConfig);
|
||||
|
||||
// 生成完整的HTML
|
||||
const html = generateStaticHTML(seoConfig, {
|
||||
path: routePath,
|
||||
content: content,
|
||||
canonical: 'https://www.tianyuancha.cn'
|
||||
});
|
||||
|
||||
// 写入文件
|
||||
fs.writeFileSync(filepath, html, 'utf-8');
|
||||
process.stdout.write(`✅ 生成成功: ${filename}\n`);
|
||||
|
||||
return filepath;
|
||||
}
|
||||
|
||||
// 生成所有静态页面
|
||||
function generateAllPages() {
|
||||
console.log('🚀 开始生成静态页面...\n');
|
||||
|
||||
ensureOutputDir();
|
||||
|
||||
// 生成主要路由的页面
|
||||
console.log('📝 生成主要路由页面:');
|
||||
let count = 0;
|
||||
for (const [routePath, seoConfig] of Object.entries(seoConfigs)) {
|
||||
try {
|
||||
generatePage(routePath, seoConfig);
|
||||
count++;
|
||||
} catch (error) {
|
||||
console.error(`❌ 生成失败 [${routePath}]:`, error.message);
|
||||
}
|
||||
}
|
||||
|
||||
// 生成额外路由的页面
|
||||
console.log('\n📝 生成额外路由页面:');
|
||||
for (const route of additionalRoutes) {
|
||||
try {
|
||||
const seoConfig = {
|
||||
title: `${route.title} - 天远查`,
|
||||
description: `天远查${route.title}页面,提供专业的大数据风险管控服务。`,
|
||||
keywords: `天远查,${route.title}`
|
||||
};
|
||||
generatePage(route.path, seoConfig);
|
||||
count++;
|
||||
} catch (error) {
|
||||
console.error(`❌ 生成失败 [${route.path}]:`, error.message);
|
||||
}
|
||||
}
|
||||
|
||||
// 生成sitemap
|
||||
generateSitemap();
|
||||
|
||||
console.log(`\n✨ 完成!共生成 ${count} 个静态页面`);
|
||||
console.log(`📁 输出目录: ${OUTPUT_DIR}`);
|
||||
}
|
||||
|
||||
// 生成sitemap.xml
|
||||
function generateSitemap() {
|
||||
const sitemapPath = path.join(OUTPUT_DIR, 'sitemap.xml');
|
||||
|
||||
const baseUrl = 'https://www.tianyuancha.cn';
|
||||
const currentDate = new Date().toISOString().split('T')[0];
|
||||
|
||||
let sitemap = `<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
`;
|
||||
|
||||
// 添加主要路由
|
||||
for (const [routePath] of Object.entries(seoConfigs)) {
|
||||
const priority = routePath === '/' ? '1.0' : '0.8';
|
||||
sitemap += ` <url>
|
||||
<loc>${baseUrl}${routePath}</loc>
|
||||
<lastmod>${currentDate}</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>${priority}</priority>
|
||||
</url>
|
||||
`;
|
||||
}
|
||||
|
||||
// 添加额外路由
|
||||
for (const route of additionalRoutes) {
|
||||
sitemap += ` <url>
|
||||
<loc>${baseUrl}${route.path}</loc>
|
||||
<lastmod>${currentDate}</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.6</priority>
|
||||
</url>
|
||||
`;
|
||||
}
|
||||
|
||||
sitemap += `</urlset>`;
|
||||
|
||||
fs.writeFileSync(sitemapPath, sitemap, 'utf-8');
|
||||
console.log(`✅ 生成成功: ${sitemapPath}`);
|
||||
}
|
||||
|
||||
// 生成robots.txt
|
||||
function generateRobots() {
|
||||
const robotsPath = path.join(OUTPUT_DIR, 'robots.txt');
|
||||
|
||||
const robotsContent = `User-agent: *
|
||||
Allow: /
|
||||
|
||||
# 禁止爬取后台管理页面
|
||||
Disallow: /admin
|
||||
Disallow: /api
|
||||
|
||||
# Sitemap
|
||||
Sitemap: https://www.tianyuancha.cn/sitemap.xml
|
||||
`;
|
||||
|
||||
fs.writeFileSync(robotsPath, robotsContent, 'utf-8');
|
||||
console.log(`✅ 生成成功: ${robotsPath}`);
|
||||
}
|
||||
|
||||
// 主函数
|
||||
function main() {
|
||||
console.log('='.repeat(60));
|
||||
console.log(' 天远查 - 静态页面生成器');
|
||||
console.log('='.repeat(60));
|
||||
console.log();
|
||||
|
||||
try {
|
||||
generateAllPages();
|
||||
generateRobots();
|
||||
console.log('\n🎉 所有文件生成完成!');
|
||||
} catch (error) {
|
||||
console.error('\n❌ 生成失败:', error);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
// 如果直接运行此脚本
|
||||
if (import.meta.url === `file://${process.argv[1]}`) {
|
||||
main();
|
||||
}
|
||||
|
||||
export { generateAllPages, generatePage };
|
||||
246
scripts/seo-static-generator/index.html
Normal file
246
scripts/seo-static-generator/index.html
Normal file
@@ -0,0 +1,246 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>天远查官网_企业与婚姻关联风险核验_综合履约背景核验</title>
|
||||
<meta name="description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。">
|
||||
<meta name="keywords" content="天远查,婚姻状态风险, 配偶背景核验,企业信用查询,司法诉讼记录,资产风险评估">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/">
|
||||
<meta property="og:title" content="天远查官网_企业与婚姻关联风险核验_综合履约背景核验">
|
||||
<meta property="og:description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/">
|
||||
<meta property="twitter:title" content="天远查官网_企业与婚姻关联风险核验_综合履约背景核验">
|
||||
<meta property="twitter:description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.demo-badge {
|
||||
display: inline-block;
|
||||
background: #28a745;
|
||||
color: white;
|
||||
padding: 5px 15px;
|
||||
border-radius: 20px;
|
||||
font-size: 0.8em;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "天远查官网_企业与婚姻关联风险核验_综合履约背景核验",
|
||||
"description": "天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<span class="demo-badge">静态页面示例</span>
|
||||
<h1>天远查官网_企业与婚姻关联风险核验_综合履约背景核验</h1>
|
||||
<p>天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
<h2>关于天远查官网_企业与婚姻关联风险核验_综合履约背景核验</h2>
|
||||
<p>天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。</p>
|
||||
|
||||
<h3>核心功能</h3>
|
||||
<ul>
|
||||
<li>企业工商信息查询 - 实时获取企业注册信息、股东信息、经营状况等</li>
|
||||
<li>婚姻状态风险核验 - 通过公开数据查询个人婚姻相关司法风险</li>
|
||||
<li>司法涉诉筛查 - 查询个人及企业的法律诉讼记录、执行信息等</li>
|
||||
<li>车辆档案报告 - 二手车车况检测、抵押查封状态查询</li>
|
||||
<li>个人信用评估 - 全方位的个人信用风险评估</li>
|
||||
</ul>
|
||||
|
||||
<h3>为什么选择天远查?</h3>
|
||||
<ul>
|
||||
<li>数据权威 - 聚合官方公示数据,确保信息准确可靠</li>
|
||||
<li>更新及时 - 数据实时同步,第一时间获取最新信息</li>
|
||||
<li>隐私安全 - 严格保护用户隐私,数据传输加密</li>
|
||||
<li>专业服务 - 多年行业经验,专业技术团队支持</li>
|
||||
</ul>
|
||||
|
||||
<h3>应用场景</h3>
|
||||
<ul>
|
||||
<li>投资尽调 - 投资前全面了解目标企业和个人的风险状况</li>
|
||||
<li>合作风控 - 商业合作前评估潜在风险,保护自身利益</li>
|
||||
<li>婚恋背调 - 婚前了解对方背景,避免情感和财产风险</li>
|
||||
<li>招聘核查 - 企业招聘时核实候选人信息真实性</li>
|
||||
<li>二手车交易 - 购买二手车前全面了解车辆历史和车况</li>
|
||||
</ul>
|
||||
|
||||
<h3>数据来源</h3>
|
||||
<p>天远查的数据来源于以下官方渠道:</p>
|
||||
<ul>
|
||||
<li>国家企业信用信息公示系统</li>
|
||||
<li>中国裁判文书网</li>
|
||||
<li>执行信息公开网</li>
|
||||
<li>各省市法院公开信息</li>
|
||||
<li>其他权威官方数据平台</li>
|
||||
</ul>
|
||||
|
||||
<h3>联系我们</h3>
|
||||
<p>如果您有任何问题或需要帮助,请通过以下方式联系我们:</p>
|
||||
<ul>
|
||||
<li>官方网站:<a href="https://www.tianyuancha.cn">https://www.tianyuancha.cn</a></li>
|
||||
<li>帮助中心:<a href="https://www.tianyuancha.cn/help">https://www.tianyuancha.cn/help</a></li>
|
||||
<li>客服服务:<a href="https://www.tianyuancha.cn/service">https://www.tianyuancha.cn/service</a></li>
|
||||
</ul>
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 这是静态页面的示例,实际部署时爬虫会看到此页面,正常用户会访问完整的 SPA 应用。</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
111
scripts/seo-static-generator/nginx.conf
Normal file
111
scripts/seo-static-generator/nginx.conf
Normal file
@@ -0,0 +1,111 @@
|
||||
# Nginx 配置文件 - 天远查 SPA + SEO 静态页面
|
||||
# 自动生成时间: 2026/2/25 11:04:50
|
||||
|
||||
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name www.tianyuancha.cn;
|
||||
charset utf-8;
|
||||
|
||||
|
||||
# 日志配置
|
||||
access_log /var/log/nginx/www.tianyuancha.cn-access.log;
|
||||
error_log /var/log/nginx/www.tianyuancha.cn-error.log;
|
||||
|
||||
# 爬虫检测
|
||||
set $is_bot 0;
|
||||
|
||||
# Google
|
||||
if ($http_user_agent ~* (googlebot|googlebot-image|googlebot-news|mediapartners-google|adsbot-google)) {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 百度
|
||||
if ($http_user_agent ~* (baiduspider|baiduspider-mobile)) {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 必应
|
||||
if ($http_user_agent ~* (bingbot|msnbot)) {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 360
|
||||
if ($http_user_agent ~* "360spider") {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 搜狗
|
||||
if ($http_user_agent ~* "(sogou spider|sogou-orion)") {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 其他爬虫
|
||||
if ($http_user_agent ~* "(spider|crawl|bot|slurp|yandex|duckduckbot|bytespider|yisouspider)") {
|
||||
set $is_bot 1;
|
||||
}
|
||||
|
||||
# 根路径处理
|
||||
location = / {
|
||||
if ($is_bot = 1) {
|
||||
root /var/www/tyc-webview-v2/static-pages;
|
||||
try_files /index.html /index.html;
|
||||
break;
|
||||
}
|
||||
root /var/www/tyc-webview-v2/dist;
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# 静态页面处理
|
||||
location ~ ^/([^/]+)(/.*)?$ {
|
||||
# 将路径转换为文件名
|
||||
set $static_filename $1;
|
||||
set $rest_path $2;
|
||||
|
||||
if ($is_bot = 1) {
|
||||
root /var/www/tyc-webview-v2/static-pages;
|
||||
try_files /$static_filename.html /index.html;
|
||||
break;
|
||||
}
|
||||
root /var/www/tyc-webview-v2/dist;
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# SPA 路由回退
|
||||
location / {
|
||||
root /var/www/tyc-webview-v2/dist;
|
||||
try_files $uri $uri/ /index.html;
|
||||
add_header Cache-Control "no-cache";
|
||||
}
|
||||
|
||||
# 静态资源缓存
|
||||
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
|
||||
root /var/www/tyc-webview-v2/dist;
|
||||
expires 1y;
|
||||
add_header Cache-Control "public, immutable";
|
||||
}
|
||||
|
||||
# API 代理
|
||||
location /api/ {
|
||||
proxy_pass http://localhost:8080;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection 'upgrade';
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_cache_bypass $http_upgrade;
|
||||
}
|
||||
|
||||
# Gzip 压缩
|
||||
gzip on;
|
||||
gzip_vary on;
|
||||
gzip_min_length 1024;
|
||||
gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml+rss application/javascript application/json;
|
||||
|
||||
# 安全头
|
||||
add_header X-Frame-Options "SAMEORIGIN";
|
||||
add_header X-Content-Type-Options "nosniff";
|
||||
add_header X-XSS-Protection "1; mode=block";
|
||||
}
|
||||
20
scripts/seo-static-generator/package.json
Normal file
20
scripts/seo-static-generator/package.json
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"name": "seo-static-generator",
|
||||
"version": "1.0.0",
|
||||
"description": "天远查静态页面生成器 - 为SPA应用生成SEO友好的静态页面",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"generate": "node generateStaticPages.js",
|
||||
"nginx": "node generateNginxConfig.js",
|
||||
"htaccess": "node generateHtaccessConfig.js"
|
||||
},
|
||||
"keywords": [
|
||||
"seo",
|
||||
"static-site-generator",
|
||||
"spa",
|
||||
"crawler",
|
||||
"vue"
|
||||
],
|
||||
"author": "天远查",
|
||||
"license": "MIT"
|
||||
}
|
||||
577
scripts/seo-static-generator/pageTemplates.js
Normal file
577
scripts/seo-static-generator/pageTemplates.js
Normal file
@@ -0,0 +1,577 @@
|
||||
/**
|
||||
* 静态页面模板
|
||||
* 基于SEO配置生成优化的静态HTML页面
|
||||
*/
|
||||
|
||||
/**
|
||||
* 生成静态页面的HTML内容
|
||||
* @param {Object} seoConfig - SEO配置对象
|
||||
* @param {Object} options - 额外配置
|
||||
* @returns {string} - 完整的HTML字符串
|
||||
*/
|
||||
export function generateStaticHTML(seoConfig, options = {}) {
|
||||
const {
|
||||
path = '/',
|
||||
content = '',
|
||||
customCSS = '',
|
||||
canonical = 'https://www.tianyuancha.cn',
|
||||
ogImage = 'https://www.tianyuancha.cn/logo.png'
|
||||
} = options;
|
||||
|
||||
const fullCanonical = `${canonical}${path}`;
|
||||
|
||||
return `<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>${seoConfig.title || '天远查'}</title>
|
||||
<meta name="description" content="${seoConfig.description || ''}">
|
||||
<meta name="keywords" content="${seoConfig.keywords || ''}">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="${fullCanonical}">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="${fullCanonical}">
|
||||
<meta property="og:title" content="${seoConfig.title || '天远查'}">
|
||||
<meta property="og:description" content="${seoConfig.description || ''}">
|
||||
<meta property="og:image" content="${ogImage}">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="${fullCanonical}">
|
||||
<meta property="twitter:title" content="${seoConfig.title || '天远查'}">
|
||||
<meta property="twitter:description" content="${seoConfig.description || ''}">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
${customCSS}
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "${seoConfig.title || '天远查'}",
|
||||
"description": "${seoConfig.description || ''}",
|
||||
"url": "${fullCanonical}",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>${seoConfig.title || '天远查'}</h1>
|
||||
<p>${seoConfig.description || '天远查 - 专业大数据风险报告查询与代理平台'}</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
${content || generateDefaultContent(seoConfig)}
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>`;
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成默认页面内容
|
||||
* @param {Object} seoConfig - SEO配置
|
||||
* @returns {string} - HTML内容字符串
|
||||
*/
|
||||
function generateDefaultContent(seoConfig) {
|
||||
const title = seoConfig.title || '天远查';
|
||||
const description = seoConfig.description || '天远查 - 专业大数据风险报告查询与代理平台';
|
||||
const keywords = seoConfig.keywords || '天远查';
|
||||
|
||||
return `
|
||||
<h2>关于${title}</h2>
|
||||
<p>${description}</p>
|
||||
|
||||
<h3>核心功能</h3>
|
||||
<ul>
|
||||
<li>企业工商信息查询 - 实时获取企业注册信息、股东信息、经营状况等</li>
|
||||
<li>婚姻状态风险核验 - 通过公开数据查询个人婚姻相关司法风险</li>
|
||||
<li>司法涉诉筛查 - 查询个人及企业的法律诉讼记录、执行信息等</li>
|
||||
<li>车辆档案报告 - 二手车车况检测、抵押查封状态查询</li>
|
||||
<li>个人信用评估 - 全方位的个人信用风险评估</li>
|
||||
</ul>
|
||||
|
||||
<h3>为什么选择天远查?</h3>
|
||||
<ul>
|
||||
<li>数据权威 - 聚合官方公示数据,确保信息准确可靠</li>
|
||||
<li>更新及时 - 数据实时同步,第一时间获取最新信息</li>
|
||||
<li>隐私安全 - 严格保护用户隐私,数据传输加密</li>
|
||||
<li>专业服务 - 多年行业经验,专业技术团队支持</li>
|
||||
</ul>
|
||||
|
||||
<h3>应用场景</h3>
|
||||
<ul>
|
||||
<li>投资尽调 - 投资前全面了解目标企业和个人的风险状况</li>
|
||||
<li>合作风控 - 商业合作前评估潜在风险,保护自身利益</li>
|
||||
<li>婚恋背调 - 婚前了解对方背景,避免情感和财产风险</li>
|
||||
<li>招聘核查 - 企业招聘时核实候选人信息真实性</li>
|
||||
<li>二手车交易 - 购买二手车前全面了解车辆历史和车况</li>
|
||||
</ul>
|
||||
|
||||
<h3>数据来源</h3>
|
||||
<p>天远查的数据来源于以下官方渠道:</p>
|
||||
<ul>
|
||||
<li>国家企业信用信息公示系统</li>
|
||||
<li>中国裁判文书网</li>
|
||||
<li>执行信息公开网</li>
|
||||
<li>各省市法院公开信息</li>
|
||||
<li>其他权威官方数据平台</li>
|
||||
</ul>
|
||||
|
||||
<h3>联系我们</h3>
|
||||
<p>如果您有任何问题或需要帮助,请通过以下方式联系我们:</p>
|
||||
<ul>
|
||||
<li>官方网站:<a href="https://www.tianyuancha.cn">https://www.tianyuancha.cn</a></li>
|
||||
<li>帮助中心:<a href="https://www.tianyuancha.cn/help">https://www.tianyuancha.cn/help</a></li>
|
||||
<li>客服服务:<a href="https://www.tianyuancha.cn/service">https://www.tianyuancha.cn/service</a></li>
|
||||
</ul>
|
||||
`;
|
||||
}
|
||||
|
||||
/**
|
||||
* 针对不同路由生成定制内容
|
||||
* @param {string} path - 路由路径
|
||||
* @param {Object} seoConfig - SEO配置
|
||||
* @returns {string} - HTML内容字符串
|
||||
*/
|
||||
export function generateContentByRoute(path, seoConfig) {
|
||||
const routeContentMap = {
|
||||
'/': generateHomeContent(seoConfig),
|
||||
'/inquire/category/lawsuit': generateLawsuitContent(seoConfig),
|
||||
'/inquire/marriage': generateMarriageContent(seoConfig),
|
||||
'/inquire/category/vehicle': generateVehicleContent(seoConfig),
|
||||
'/inquire/category/marriageStatus': generateMarriageStatusContent(seoConfig),
|
||||
'/agent': generateAgentContent(seoConfig),
|
||||
'/help': generateHelpContent(seoConfig),
|
||||
'/example': generateExampleContent(seoConfig),
|
||||
'/service': generateServiceContent(seoConfig),
|
||||
'/inquire': generateInquireContent(seoConfig),
|
||||
};
|
||||
|
||||
return routeContentMap[path] || generateDefaultContent(seoConfig);
|
||||
}
|
||||
|
||||
// 各个页面的定制内容生成函数
|
||||
function generateHomeContent(seoConfig) {
|
||||
return `
|
||||
<h2>欢迎使用天远查</h2>
|
||||
<p>天远查(TianYuanCha)是专业的大数据风险报告查询与代理平台,聚合官方公示数据,为个人和企业提供全方位的风险管控服务。</p>
|
||||
|
||||
<h3>我们的服务</h3>
|
||||
<ul>
|
||||
<li><strong>企业信息查询</strong> - 查询企业工商信息、经营状况、司法风险等</li>
|
||||
<li><strong>婚姻风险核验</strong> - 通过公开数据查询婚姻相关司法风险</li>
|
||||
<li><strong>司法涉诉筛查</strong> - 全面筛查个人及企业的法律纠纷</li>
|
||||
<li><strong>车辆档案报告</strong> - 二手车交易前的全面车况检测</li>
|
||||
<li><strong>个人信用评估</strong> - 多维度个人信用风险分析</li>
|
||||
</ul>
|
||||
|
||||
<h3>立即开始</h3>
|
||||
<p>访问天远查官网,开始您的风险查询之旅:<a href="https://www.tianyuancha.cn">https://www.tianyuancha.cn</a></p>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateLawsuitContent(seoConfig) {
|
||||
return `
|
||||
<h2>司法涉诉核验服务</h2>
|
||||
<p>天远查司法风险检测中心,聚合全国法院公开公示数据,为您提供全面的司法涉诉筛查服务。</p>
|
||||
|
||||
<h3>服务内容</h3>
|
||||
<ul>
|
||||
<li>开庭公告查询 - 查询即将开庭的案件信息</li>
|
||||
<li>裁判文书查询 - 获取历史裁判文书详情</li>
|
||||
<li>立案信息查询 - 了解案件立案情况</li>
|
||||
<li>执行记录查询 - 查询强制执行相关信息</li>
|
||||
<li>失信被执行人查询 - 核实失信被执行人名单</li>
|
||||
</ul>
|
||||
|
||||
<h3>应用场景</h3>
|
||||
<ul>
|
||||
<li>商业合作前了解对方法律纠纷情况</li>
|
||||
<li>投资前的法律风险评估</li>
|
||||
<li>招聘时核实候选人背景</li>
|
||||
<li>婚恋前了解对方法律风险</li>
|
||||
</ul>
|
||||
|
||||
<h3>数据来源</h3>
|
||||
<p>数据来源于全国各级法院公开公示信息,确保权威准确。</p>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateMarriageContent(seoConfig) {
|
||||
return `
|
||||
<h2>婚前背景核验服务</h2>
|
||||
<p>天远查婚恋风险报告为您提供深度的背景核实服务,帮助您在婚恋前全面了解对方的真实情况。</p>
|
||||
|
||||
<h3>服务内容</h3>
|
||||
<ul>
|
||||
<li>重婚司法记录查询 - 查询是否有重婚相关司法记录</li>
|
||||
<li>家庭暴力涉诉历史 - 查询家庭暴力相关的法律纠纷</li>
|
||||
<li>潜在债务风险 - 通过司法文书分析潜在债务情况</li>
|
||||
<li>不良嗜好风险 - 了解是否有相关不良记录</li>
|
||||
</ul>
|
||||
|
||||
<h3>为什么需要婚前背景核验?</h3>
|
||||
<ul>
|
||||
<li>保护自己的情感安全</li>
|
||||
<li>避免经济损失和债务纠纷</li>
|
||||
<li>了解对方的真实家庭状况</li>
|
||||
<li>建立坦诚的婚恋关系</li>
|
||||
</ul>
|
||||
|
||||
<h3>服务特点</h3>
|
||||
<ul>
|
||||
<li>基于合法公开数据</li>
|
||||
<li>数据真实可靠</li>
|
||||
<li>保护隐私安全</li>
|
||||
<li>快速获取报告</li>
|
||||
</ul>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateVehicleContent(seoConfig) {
|
||||
return `
|
||||
<h2>车辆档案报告服务</h2>
|
||||
<p>天远查车辆数据中心,让车辆交易更透明。通过车牌号或VIN码,全面了解车辆的真实状况。</p>
|
||||
|
||||
<h3>服务内容</h3>
|
||||
<ul>
|
||||
<li>初次登记信息 - 查询车辆的初次登记时间、地点</li>
|
||||
<li>抵押查封状态 - 了解车辆是否被抵押或查封</li>
|
||||
<li>事故维修记录 - 获取车辆的事故和维修历史</li>
|
||||
<li>产权属性核验 - 核实车辆的产权归属</li>
|
||||
<li>过户记录查询 - 查询车辆的历史过户情况</li>
|
||||
</ul>
|
||||
|
||||
<h3>应用场景</h3>
|
||||
<ul>
|
||||
<li>购买二手车前全面了解车况</li>
|
||||
<li>出售二手车时提供车况证明</li>
|
||||
<li>车辆抵押前核实车辆状况</li>
|
||||
</ul>
|
||||
|
||||
<h3>数据来源</h3>
|
||||
<p>数据同步权威行业系统,包括车管所、保险公司等,信息准确可靠。</p>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateMarriageStatusContent(seoConfig) {
|
||||
return `
|
||||
<h2>个人婚姻关联风险核验</h2>
|
||||
<p>天远查提供基于大数据的婚姻关联风险评估,通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况。</p>
|
||||
|
||||
<h3>服务内容</h3>
|
||||
<ul>
|
||||
<li>婚史风险排查 - 通过公开数据排查婚姻历史风险</li>
|
||||
<li>家庭背景核实 - 核实家庭背景相关信息</li>
|
||||
<li>婚姻诚信评估 - 评估婚姻相关的诚信记录</li>
|
||||
<li>情感状态评估 - 通过多维度数据分析情感状态</li>
|
||||
<li>涉婚法律记录 - 查询与婚姻相关的法律记录</li>
|
||||
</ul>
|
||||
|
||||
<h3>服务优势</h3>
|
||||
<ul>
|
||||
<li>合法合规 - 仅使用合法公开数据</li>
|
||||
<li>数据权威 - 来源于官方公开渠道</li>
|
||||
<li>分析全面 - 多维度综合评估</li>
|
||||
<li>保护隐私 - 严格保护用户隐私</li>
|
||||
</ul>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateAgentContent(seoConfig) {
|
||||
return `
|
||||
<h2>天远查代理 - 免费开通代理权限</h2>
|
||||
<p>天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。</p>
|
||||
|
||||
<h3>代理权益</h3>
|
||||
<ul>
|
||||
<li>免费开通代理权限</li>
|
||||
<li>享受丰厚佣金收益</li>
|
||||
<li>专属推广链接</li>
|
||||
<li>实时数据统计</li>
|
||||
<li>专业培训支持</li>
|
||||
</ul>
|
||||
|
||||
<h3>代理产品</h3>
|
||||
<ul>
|
||||
<li>企业信息查询代理</li>
|
||||
<li>婚姻状态风险核验代理</li>
|
||||
<li>司法涉诉筛查代理</li>
|
||||
<li>车辆档案报告代理</li>
|
||||
<li>个人信用评估代理</li>
|
||||
</ul>
|
||||
|
||||
<h3>申请流程</h3>
|
||||
<ul>
|
||||
<li>注册天远查账号</li>
|
||||
<li>提交代理申请</li>
|
||||
<li>审核通过后开通权限</li>
|
||||
<li>开始推广并获取收益</li>
|
||||
</ul>
|
||||
|
||||
<h3>立即加入</h3>
|
||||
<p>访问天远查代理页面,免费开通代理权限:<a href="https://www.tianyuancha.cn/agent">https://www.tianyuancha.cn/agent</a></p>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateHelpContent(seoConfig) {
|
||||
return `
|
||||
<h2>帮助中心</h2>
|
||||
<p>天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。</p>
|
||||
|
||||
<h3>热门问题</h3>
|
||||
<ul>
|
||||
<li>如何查询企业信息?</li>
|
||||
<li>婚姻风险核验需要什么信息?</li>
|
||||
<li>如何获取报告?</li>
|
||||
<li>报告准确性如何保证?</li>
|
||||
<li>如何成为代理?</li>
|
||||
</ul>
|
||||
|
||||
<h3>使用指南</h3>
|
||||
<ul>
|
||||
<li>新手入门指南</li>
|
||||
<li>各功能模块使用教程</li>
|
||||
<li>常见问题解答</li>
|
||||
<li>注意事项说明</li>
|
||||
</ul>
|
||||
|
||||
<h3>联系我们</h3>
|
||||
<p>如果您有其他问题,可以通过以下方式联系我们:</p>
|
||||
<ul>
|
||||
<li>客服服务:<a href="https://www.tianyuancha.cn/service">https://www.tianyuancha.cn/service</a></li>
|
||||
<li>帮助中心:<a href="https://www.tianyuancha.cn/help">https://www.tianyuancha.cn/help</a></li>
|
||||
</ul>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateExampleContent(seoConfig) {
|
||||
return `
|
||||
<h2>示例报告展示</h2>
|
||||
<p>天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例。</p>
|
||||
|
||||
<h3>报告类型</h3>
|
||||
<ul>
|
||||
<li>企业工商画像报告示例</li>
|
||||
<li>婚姻状态风险报告示例</li>
|
||||
<li>司法涉诉筛查报告示例</li>
|
||||
<li>车辆档案报告示例</li>
|
||||
<li>个人信用评估报告示例</li>
|
||||
</ul>
|
||||
|
||||
<h3>报告内容</h3>
|
||||
<ul>
|
||||
<li>基本信息展示</li>
|
||||
<li>风险分析说明</li>
|
||||
<li>数据来源标注</li>
|
||||
<li>评估结果解读</li>
|
||||
</ul>
|
||||
|
||||
<h3>查看示例</h3>
|
||||
<p>访问天远查示例页面,查看详细的报告样例:<a href="https://www.tianyuancha.cn/example">https://www.tianyuancha.cn/example</a></p>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateServiceContent(seoConfig) {
|
||||
return `
|
||||
<h2>客服中心</h2>
|
||||
<p>天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。</p>
|
||||
|
||||
<h3>服务内容</h3>
|
||||
<ul>
|
||||
<li>在线客服支持</li>
|
||||
<li>技术咨询解答</li>
|
||||
<li>问题反馈处理</li>
|
||||
<li>使用指导服务</li>
|
||||
</ul>
|
||||
|
||||
<h3>服务时间</h3>
|
||||
<ul>
|
||||
<li>工作日:9:00 - 18:00</li>
|
||||
<li>周末:10:00 - 17:00</li>
|
||||
<li>节假日:以公告为准</li>
|
||||
</ul>
|
||||
|
||||
<h3>联系我们</h3>
|
||||
<p>通过以下方式联系我们的客服团队:</p>
|
||||
<ul>
|
||||
<li>在线客服:<a href="https://www.tianyuancha.cn/service">https://www.tianyuancha.cn/service</a></li>
|
||||
<li>帮助中心:<a href="https://www.tianyuancha.cn/help">https://www.tianyuancha.cn/help</a></li>
|
||||
</ul>
|
||||
`;
|
||||
}
|
||||
|
||||
function generateInquireContent(seoConfig) {
|
||||
return `
|
||||
<h2>核验工具多场景数据核验服务</h2>
|
||||
<p>天远查提供车辆、企业、个人等多场景核验服务,包括状态、信用、身份等查询,权威高效,保护隐私。</p>
|
||||
|
||||
<h3>核验服务</h3>
|
||||
<ul>
|
||||
<li><strong>车辆核验</strong> - 车牌号/VIN码查询车辆档案</li>
|
||||
<li><strong>企业核验</strong> - 企业工商信息查询</li>
|
||||
<li><strong>个人核验</strong> - 个人身份和信用查询</li>
|
||||
<li><strong>婚姻核验</strong> - 婚姻状态风险核验</li>
|
||||
<li><strong>司法核验</strong> - 司法涉诉筛查</li>
|
||||
</ul>
|
||||
|
||||
<h3>服务特点</h3>
|
||||
<ul>
|
||||
<li>权威数据来源</li>
|
||||
<li>快速查询响应</li>
|
||||
<li>全面信息覆盖</li>
|
||||
<li>严格隐私保护</li>
|
||||
</ul>
|
||||
|
||||
<h3>立即查询</h3>
|
||||
<p>访问天远查核验页面,开始您的查询:<a href="https://www.tianyuancha.cn/inquire">https://www.tianyuancha.cn/inquire</a></p>
|
||||
`;
|
||||
}
|
||||
194
scripts/seo-static-generator/run.js
Normal file
194
scripts/seo-static-generator/run.js
Normal file
@@ -0,0 +1,194 @@
|
||||
/**
|
||||
* 简化的静态页面生成器 - Windows兼容版本
|
||||
*/
|
||||
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
import { generateStaticHTML } from './pageTemplates.js';
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
|
||||
// 简化的SEO配置
|
||||
const seoConfigs = {
|
||||
'/': {
|
||||
title: '天远查官网_企业与婚姻关联风险核验_综合履约背景核验',
|
||||
description: '天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。',
|
||||
keywords: '天远查,婚姻状态风险, 配偶背景核验,企业信用查询,司法诉讼记录,资产风险评估'
|
||||
},
|
||||
'/inquire/category/lawsuit': {
|
||||
title: '司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查',
|
||||
description: '天远查司法风险检测中心,聚合全国法院公开公示数据。一键筛查开庭公告、裁判文书、立案信息及执行记录。帮助用户快速识别法律纠纷隐患,全方位扫除合作盲区。',
|
||||
keywords: '司法案件核验,法律诉讼记录,个人涉诉详情,法院公告查询,案件执行状态'
|
||||
},
|
||||
'/inquire/marriage': {
|
||||
title: '婚前背景核验_婚姻关联司法风险筛查_情感综合保障_天远查',
|
||||
description: '天远查婚恋风险报告为您提供深度的背景核实服务。基于合法公开数据,排查对象的重婚司法记录、家庭暴力涉诉历史、潜在债务风险及不良嗜好风险。拒绝盲目信任,用数据守护您的情感与财产安全。',
|
||||
keywords: '婚前背景核实,婚恋对象评估,婚姻司法风险,个人情感风险,婚前背调工具'
|
||||
},
|
||||
'/inquire/category/vehicle': {
|
||||
title: '车辆档案报告_二手车车况与产权风险检测_机动车报告_天远查',
|
||||
description: '天远查车辆数据中心,让车辆交易更透明。支持通过车牌号或VIN码,核验车辆的初次登记信息、抵押查封状态、事故维修记录及产权属性。数据同步权威行业系统,精准识别问题车。',
|
||||
keywords: '车辆维修记录,二手车出险报告,车辆抵押报告,车况报告,机动车档案'
|
||||
},
|
||||
'/inquire/category/marriageStatus': {
|
||||
title: '个人婚姻关联风险核验_家庭背景合规报告_天远查',
|
||||
description: '天远查提供基于大数据的婚姻关联风险评估。通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况与情感履历。合法合规,保障知情权。',
|
||||
keywords: '婚史风险排查,家庭背景核实,婚姻诚信评估,情感状态评估,涉婚法律记录'
|
||||
},
|
||||
'/agent': {
|
||||
title: '天远查代理 - 免费开通代理权限 | 大数据风险报告代理',
|
||||
description: '天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。专业的大数据风险报告、婚姻查询、个人信用评估等服务的代理合作。',
|
||||
keywords: '天远查代理, 免费代理, 大数据风险报告代理, 代理权限, 代理收益'
|
||||
},
|
||||
'/help': {
|
||||
title: '帮助中心 - 天远查使用指南 | 常见问题解答',
|
||||
description: '天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。',
|
||||
keywords: '天远查帮助, 使用指南, 常见问题, 操作教程, 客服支持'
|
||||
},
|
||||
'/example': {
|
||||
title: '示例报告 - 天远查报告展示 | 大数据风险报告样例',
|
||||
description: '天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例,让用户了解报告内容和格式。',
|
||||
keywords: '示例报告, 报告展示, 报告样例, 大数据风险报告, 婚姻查询报告'
|
||||
},
|
||||
'/service': {
|
||||
title: '客服中心 - 天远查在线客服 | 技术支持',
|
||||
description: '天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。',
|
||||
keywords: '客服中心, 在线客服, 技术支持, 问题反馈, 天远查客服'
|
||||
},
|
||||
'/inquire': {
|
||||
title: '核验工具多场景数据核验服务天远查',
|
||||
description: '提供车辆、企业、个人等多场景核验,包括状态、信用、身份等查询,权威高效,保护隐私。',
|
||||
keywords: '核验工具,数据核验服务,车辆核验,企业核验,天远查'
|
||||
},
|
||||
};
|
||||
|
||||
const OUTPUT_DIR = path.resolve(__dirname, 'static-pages');
|
||||
|
||||
// 确保目录存在
|
||||
if (!fs.existsSync(OUTPUT_DIR)) {
|
||||
fs.mkdirSync(OUTPUT_DIR, { recursive: true });
|
||||
}
|
||||
|
||||
// 转换路径为文件名
|
||||
function pathToFilename(routePath) {
|
||||
let filename = routePath
|
||||
.replace(/^\//, '')
|
||||
.replace(/\/+/g, '-')
|
||||
.replace(/:/g, '-');
|
||||
|
||||
if (!filename) {
|
||||
filename = 'index';
|
||||
}
|
||||
|
||||
return `${filename}.html`;
|
||||
}
|
||||
|
||||
// 生成单个页面
|
||||
function generatePage(routePath, seoConfig) {
|
||||
const filename = pathToFilename(routePath);
|
||||
const filepath = path.join(OUTPUT_DIR, filename);
|
||||
|
||||
// 动态导入generateContentByRoute
|
||||
const content = generateContentByRoute(routePath, seoConfig);
|
||||
|
||||
const html = generateStaticHTML(seoConfig, {
|
||||
path: routePath,
|
||||
content: content,
|
||||
canonical: 'https://www.tianyuancha.cn'
|
||||
});
|
||||
|
||||
fs.writeFileSync(filepath, html, 'utf-8');
|
||||
console.log(`✅ ${filename}`);
|
||||
return filepath;
|
||||
}
|
||||
|
||||
// 动态导入内容生成函数
|
||||
async function generateContentByRoute(routePath, seoConfig) {
|
||||
const { generateContentByRoute: generateContent } = await import('./pageTemplates.js');
|
||||
return generateContent(routePath, seoConfig);
|
||||
}
|
||||
|
||||
// 生成sitemap
|
||||
function generateSitemap() {
|
||||
const sitemapPath = path.join(OUTPUT_DIR, 'sitemap.xml');
|
||||
const baseUrl = 'https://www.tianyuancha.cn';
|
||||
const currentDate = new Date().toISOString().split('T')[0];
|
||||
|
||||
let sitemap = `<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
`;
|
||||
|
||||
for (const [routePath] of Object.entries(seoConfigs)) {
|
||||
const priority = routePath === '/' ? '1.0' : '0.8';
|
||||
sitemap += ` <url>
|
||||
<loc>${baseUrl}${routePath}</loc>
|
||||
<lastmod>${currentDate}</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>${priority}</priority>
|
||||
</url>
|
||||
`;
|
||||
}
|
||||
|
||||
sitemap += `</urlset>`;
|
||||
|
||||
fs.writeFileSync(sitemapPath, sitemap, 'utf-8');
|
||||
console.log(`✅ sitemap.xml`);
|
||||
}
|
||||
|
||||
// 生成robots.txt
|
||||
function generateRobots() {
|
||||
const robotsPath = path.join(OUTPUT_DIR, 'robots.txt');
|
||||
const robotsContent = `User-agent: *
|
||||
Allow: /
|
||||
Disallow: /admin
|
||||
Disallow: /api
|
||||
Sitemap: https://www.tianyuancha.cn/sitemap.xml
|
||||
`;
|
||||
|
||||
fs.writeFileSync(robotsPath, robotsContent, 'utf-8');
|
||||
console.log(`✅ robots.txt`);
|
||||
}
|
||||
|
||||
// 主函数
|
||||
async function main() {
|
||||
console.log('========================================');
|
||||
console.log(' 天远查 - 静态页面生成器');
|
||||
console.log('========================================');
|
||||
console.log('');
|
||||
console.log('📂 输出目录:', OUTPUT_DIR);
|
||||
console.log('');
|
||||
console.log('📝 生成静态页面:');
|
||||
console.log('');
|
||||
|
||||
let count = 0;
|
||||
for (const [routePath, seoConfig] of Object.entries(seoConfigs)) {
|
||||
try {
|
||||
await generatePage(routePath, seoConfig);
|
||||
count++;
|
||||
} catch (error) {
|
||||
console.error(`❌ ${routePath}: ${error.message}`);
|
||||
}
|
||||
}
|
||||
|
||||
console.log('');
|
||||
console.log('📝 生成SEO文件:');
|
||||
console.log('');
|
||||
try {
|
||||
generateSitemap();
|
||||
generateRobots();
|
||||
} catch (error) {
|
||||
console.error(`❌ 生成SEO文件失败: ${error.message}`);
|
||||
}
|
||||
|
||||
console.log('');
|
||||
console.log('========================================');
|
||||
console.log(`✨ 完成! 共生成 ${count} 个静态页面`);
|
||||
console.log('========================================');
|
||||
}
|
||||
|
||||
main().catch(error => {
|
||||
console.error('❌ 生成失败:', error);
|
||||
process.exit(1);
|
||||
});
|
||||
193
scripts/seo-static-generator/static-pages/agent.html
Normal file
193
scripts/seo-static-generator/static-pages/agent.html
Normal file
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>天远查代理 - 免费开通代理权限 | 大数据风险报告代理</title>
|
||||
<meta name="description" content="天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。专业的大数据风险报告、婚姻查询、个人信用评估等服务的代理合作。">
|
||||
<meta name="keywords" content="天远查代理, 免费代理, 大数据风险报告代理, 代理权限, 代理收益">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/agent">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/agent">
|
||||
<meta property="og:title" content="天远查代理 - 免费开通代理权限 | 大数据风险报告代理">
|
||||
<meta property="og:description" content="天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。专业的大数据风险报告、婚姻查询、个人信用评估等服务的代理合作。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/agent">
|
||||
<meta property="twitter:title" content="天远查代理 - 免费开通代理权限 | 大数据风险报告代理">
|
||||
<meta property="twitter:description" content="天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。专业的大数据风险报告、婚姻查询、个人信用评估等服务的代理合作。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "天远查代理 - 免费开通代理权限 | 大数据风险报告代理",
|
||||
"description": "天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。专业的大数据风险报告、婚姻查询、个人信用评估等服务的代理合作。",
|
||||
"url": "https://www.tianyuancha.cn/agent",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>天远查代理 - 免费开通代理权限 | 大数据风险报告代理</h1>
|
||||
<p>天远查代理平台,免费开通代理权限,享受大数据风险报告查询服务代理收益。专业的大数据风险报告、婚姻查询、个人信用评估等服务的代理合作。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
193
scripts/seo-static-generator/static-pages/example.html
Normal file
193
scripts/seo-static-generator/static-pages/example.html
Normal file
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>示例报告 - 天远查报告展示 | 大数据风险报告样例</title>
|
||||
<meta name="description" content="天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例,让用户了解报告内容和格式。">
|
||||
<meta name="keywords" content="示例报告, 报告展示, 报告样例, 大数据风险报告, 婚姻查询报告">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/example">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/example">
|
||||
<meta property="og:title" content="示例报告 - 天远查报告展示 | 大数据风险报告样例">
|
||||
<meta property="og:description" content="天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例,让用户了解报告内容和格式。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/example">
|
||||
<meta property="twitter:title" content="示例报告 - 天远查报告展示 | 大数据风险报告样例">
|
||||
<meta property="twitter:description" content="天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例,让用户了解报告内容和格式。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "示例报告 - 天远查报告展示 | 大数据风险报告样例",
|
||||
"description": "天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例,让用户了解报告内容和格式。",
|
||||
"url": "https://www.tianyuancha.cn/example",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>示例报告 - 天远查报告展示 | 大数据风险报告样例</h1>
|
||||
<p>天远查示例报告展示,包含大数据风险报告、婚姻状况查询、个人信用评估等服务的报告样例,让用户了解报告内容和格式。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
193
scripts/seo-static-generator/static-pages/help.html
Normal file
193
scripts/seo-static-generator/static-pages/help.html
Normal file
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>帮助中心 - 天远查使用指南 | 常见问题解答</title>
|
||||
<meta name="description" content="天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。">
|
||||
<meta name="keywords" content="天远查帮助, 使用指南, 常见问题, 操作教程, 客服支持">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/help">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/help">
|
||||
<meta property="og:title" content="帮助中心 - 天远查使用指南 | 常见问题解答">
|
||||
<meta property="og:description" content="天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/help">
|
||||
<meta property="twitter:title" content="帮助中心 - 天远查使用指南 | 常见问题解答">
|
||||
<meta property="twitter:description" content="天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "帮助中心 - 天远查使用指南 | 常见问题解答",
|
||||
"description": "天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。",
|
||||
"url": "https://www.tianyuancha.cn/help",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>帮助中心 - 天远查使用指南 | 常见问题解答</h1>
|
||||
<p>天远查帮助中心,提供详细的使用指南、常见问题解答、操作教程等,帮助用户更好地使用大数据风险报告查询服务。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
193
scripts/seo-static-generator/static-pages/index.html
Normal file
193
scripts/seo-static-generator/static-pages/index.html
Normal file
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>天远查官网_企业与婚姻关联风险核验_综合履约背景核验</title>
|
||||
<meta name="description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。">
|
||||
<meta name="keywords" content="天远查,婚姻状态风险, 配偶背景核验,企业信用查询,司法诉讼记录,资产风险评估">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/">
|
||||
<meta property="og:title" content="天远查官网_企业与婚姻关联风险核验_综合履约背景核验">
|
||||
<meta property="og:description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/">
|
||||
<meta property="twitter:title" content="天远查官网_企业与婚姻关联风险核验_综合履约背景核验">
|
||||
<meta property="twitter:description" content="天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "天远查官网_企业与婚姻关联风险核验_综合履约背景核验",
|
||||
"description": "天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>天远查官网_企业与婚姻关联风险核验_综合履约背景核验</h1>
|
||||
<p>天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查</title>
|
||||
<meta name="description" content="天远查司法风险检测中心,聚合全国法院公开公示数据。一键筛查开庭公告、裁判文书、立案信息及执行记录。帮助用户快速识别法律纠纷隐患,全方位扫除合作盲区。">
|
||||
<meta name="keywords" content="司法案件核验,法律诉讼记录,个人涉诉详情,法院公告查询,案件执行状态">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/inquire/category/lawsuit">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/inquire/category/lawsuit">
|
||||
<meta property="og:title" content="司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查">
|
||||
<meta property="og:description" content="天远查司法风险检测中心,聚合全国法院公开公示数据。一键筛查开庭公告、裁判文书、立案信息及执行记录。帮助用户快速识别法律纠纷隐患,全方位扫除合作盲区。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/inquire/category/lawsuit">
|
||||
<meta property="twitter:title" content="司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查">
|
||||
<meta property="twitter:description" content="天远查司法风险检测中心,聚合全国法院公开公示数据。一键筛查开庭公告、裁判文书、立案信息及执行记录。帮助用户快速识别法律纠纷隐患,全方位扫除合作盲区。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查",
|
||||
"description": "天远查司法风险检测中心,聚合全国法院公开公示数据。一键筛查开庭公告、裁判文书、立案信息及执行记录。帮助用户快速识别法律纠纷隐患,全方位扫除合作盲区。",
|
||||
"url": "https://www.tianyuancha.cn/inquire/category/lawsuit",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查</h1>
|
||||
<p>天远查司法风险检测中心,聚合全国法院公开公示数据。一键筛查开庭公告、裁判文书、立案信息及执行记录。帮助用户快速识别法律纠纷隐患,全方位扫除合作盲区。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>个人婚姻关联风险核验_家庭背景合规报告_天远查</title>
|
||||
<meta name="description" content="天远查提供基于大数据的婚姻关联风险评估。通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况与情感履历。合法合规,保障知情权。">
|
||||
<meta name="keywords" content="婚史风险排查,家庭背景核实,婚姻诚信评估,情感状态评估,涉婚法律记录">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/inquire/category/marriageStatus">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/inquire/category/marriageStatus">
|
||||
<meta property="og:title" content="个人婚姻关联风险核验_家庭背景合规报告_天远查">
|
||||
<meta property="og:description" content="天远查提供基于大数据的婚姻关联风险评估。通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况与情感履历。合法合规,保障知情权。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/inquire/category/marriageStatus">
|
||||
<meta property="twitter:title" content="个人婚姻关联风险核验_家庭背景合规报告_天远查">
|
||||
<meta property="twitter:description" content="天远查提供基于大数据的婚姻关联风险评估。通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况与情感履历。合法合规,保障知情权。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "个人婚姻关联风险核验_家庭背景合规报告_天远查",
|
||||
"description": "天远查提供基于大数据的婚姻关联风险评估。通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况与情感履历。合法合规,保障知情权。",
|
||||
"url": "https://www.tianyuancha.cn/inquire/category/marriageStatus",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>个人婚姻关联风险核验_家庭背景合规报告_天远查</h1>
|
||||
<p>天远查提供基于大数据的婚姻关联风险评估。通过分析司法文书及公开社会关系,辅助判断目标的真实家庭状况与情感履历。合法合规,保障知情权。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>车辆档案报告_二手车车况与产权风险检测_机动车报告_天远查</title>
|
||||
<meta name="description" content="天远查车辆数据中心,让车辆交易更透明。支持通过车牌号或VIN码,核验车辆的初次登记信息、抵押查封状态、事故维修记录及产权属性。数据同步权威行业系统,精准识别问题车。">
|
||||
<meta name="keywords" content="车辆维修记录,二手车出险报告,车辆抵押报告,车况报告,机动车档案">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/inquire/category/vehicle">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/inquire/category/vehicle">
|
||||
<meta property="og:title" content="车辆档案报告_二手车车况与产权风险检测_机动车报告_天远查">
|
||||
<meta property="og:description" content="天远查车辆数据中心,让车辆交易更透明。支持通过车牌号或VIN码,核验车辆的初次登记信息、抵押查封状态、事故维修记录及产权属性。数据同步权威行业系统,精准识别问题车。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/inquire/category/vehicle">
|
||||
<meta property="twitter:title" content="车辆档案报告_二手车车况与产权风险检测_机动车报告_天远查">
|
||||
<meta property="twitter:description" content="天远查车辆数据中心,让车辆交易更透明。支持通过车牌号或VIN码,核验车辆的初次登记信息、抵押查封状态、事故维修记录及产权属性。数据同步权威行业系统,精准识别问题车。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "车辆档案报告_二手车车况与产权风险检测_机动车报告_天远查",
|
||||
"description": "天远查车辆数据中心,让车辆交易更透明。支持通过车牌号或VIN码,核验车辆的初次登记信息、抵押查封状态、事故维修记录及产权属性。数据同步权威行业系统,精准识别问题车。",
|
||||
"url": "https://www.tianyuancha.cn/inquire/category/vehicle",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>车辆档案报告_二手车车况与产权风险检测_机动车报告_天远查</h1>
|
||||
<p>天远查车辆数据中心,让车辆交易更透明。支持通过车牌号或VIN码,核验车辆的初次登记信息、抵押查封状态、事故维修记录及产权属性。数据同步权威行业系统,精准识别问题车。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
193
scripts/seo-static-generator/static-pages/inquire-marriage.html
Normal file
193
scripts/seo-static-generator/static-pages/inquire-marriage.html
Normal file
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>婚前背景核验_婚姻关联司法风险筛查_情感综合保障_天远查</title>
|
||||
<meta name="description" content="天远查婚恋风险报告为您提供深度的背景核实服务。基于合法公开数据,排查对象的重婚司法记录、家庭暴力涉诉历史、潜在债务风险及不良嗜好风险。拒绝盲目信任,用数据守护您的情感与财产安全。">
|
||||
<meta name="keywords" content="婚前背景核实,婚恋对象评估,婚姻司法风险,个人情感风险,婚前背调工具">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/inquire/marriage">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/inquire/marriage">
|
||||
<meta property="og:title" content="婚前背景核验_婚姻关联司法风险筛查_情感综合保障_天远查">
|
||||
<meta property="og:description" content="天远查婚恋风险报告为您提供深度的背景核实服务。基于合法公开数据,排查对象的重婚司法记录、家庭暴力涉诉历史、潜在债务风险及不良嗜好风险。拒绝盲目信任,用数据守护您的情感与财产安全。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/inquire/marriage">
|
||||
<meta property="twitter:title" content="婚前背景核验_婚姻关联司法风险筛查_情感综合保障_天远查">
|
||||
<meta property="twitter:description" content="天远查婚恋风险报告为您提供深度的背景核实服务。基于合法公开数据,排查对象的重婚司法记录、家庭暴力涉诉历史、潜在债务风险及不良嗜好风险。拒绝盲目信任,用数据守护您的情感与财产安全。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "婚前背景核验_婚姻关联司法风险筛查_情感综合保障_天远查",
|
||||
"description": "天远查婚恋风险报告为您提供深度的背景核实服务。基于合法公开数据,排查对象的重婚司法记录、家庭暴力涉诉历史、潜在债务风险及不良嗜好风险。拒绝盲目信任,用数据守护您的情感与财产安全。",
|
||||
"url": "https://www.tianyuancha.cn/inquire/marriage",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>婚前背景核验_婚姻关联司法风险筛查_情感综合保障_天远查</h1>
|
||||
<p>天远查婚恋风险报告为您提供深度的背景核实服务。基于合法公开数据,排查对象的重婚司法记录、家庭暴力涉诉历史、潜在债务风险及不良嗜好风险。拒绝盲目信任,用数据守护您的情感与财产安全。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
193
scripts/seo-static-generator/static-pages/inquire.html
Normal file
193
scripts/seo-static-generator/static-pages/inquire.html
Normal file
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>核验工具多场景数据核验服务天远查</title>
|
||||
<meta name="description" content="提供车辆、企业、个人等多场景核验,包括状态、信用、身份等查询,权威高效,保护隐私。">
|
||||
<meta name="keywords" content="核验工具,数据核验服务,车辆核验,企业核验,天远查">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/inquire">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/inquire">
|
||||
<meta property="og:title" content="核验工具多场景数据核验服务天远查">
|
||||
<meta property="og:description" content="提供车辆、企业、个人等多场景核验,包括状态、信用、身份等查询,权威高效,保护隐私。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/inquire">
|
||||
<meta property="twitter:title" content="核验工具多场景数据核验服务天远查">
|
||||
<meta property="twitter:description" content="提供车辆、企业、个人等多场景核验,包括状态、信用、身份等查询,权威高效,保护隐私。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "核验工具多场景数据核验服务天远查",
|
||||
"description": "提供车辆、企业、个人等多场景核验,包括状态、信用、身份等查询,权威高效,保护隐私。",
|
||||
"url": "https://www.tianyuancha.cn/inquire",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>核验工具多场景数据核验服务天远查</h1>
|
||||
<p>提供车辆、企业、个人等多场景核验,包括状态、信用、身份等查询,权威高效,保护隐私。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
5
scripts/seo-static-generator/static-pages/robots.txt
Normal file
5
scripts/seo-static-generator/static-pages/robots.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
User-agent: *
|
||||
Allow: /
|
||||
Disallow: /admin
|
||||
Disallow: /api
|
||||
Sitemap: https://www.tianyuancha.cn/sitemap.xml
|
||||
193
scripts/seo-static-generator/static-pages/service.html
Normal file
193
scripts/seo-static-generator/static-pages/service.html
Normal file
@@ -0,0 +1,193 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>客服中心 - 天远查在线客服 | 技术支持</title>
|
||||
<meta name="description" content="天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。">
|
||||
<meta name="keywords" content="客服中心, 在线客服, 技术支持, 问题反馈, 天远查客服">
|
||||
|
||||
<!-- Canonical URL -->
|
||||
<link rel="canonical" href="https://www.tianyuancha.cn/service">
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://www.tianyuancha.cn/service">
|
||||
<meta property="og:title" content="客服中心 - 天远查在线客服 | 技术支持">
|
||||
<meta property="og:description" content="天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。">
|
||||
<meta property="og:image" content="https://www.tianyuancha.cn/logo.png">
|
||||
<meta property="og:site_name" content="天远查">
|
||||
<meta property="og:locale" content="zh_CN">
|
||||
|
||||
<!-- Twitter -->
|
||||
<meta property="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:url" content="https://www.tianyuancha.cn/service">
|
||||
<meta property="twitter:title" content="客服中心 - 天远查在线客服 | 技术支持">
|
||||
<meta property="twitter:description" content="天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。">
|
||||
|
||||
<!-- Robots Meta -->
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta name="googlebot" content="index, follow">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.seo-container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
background: white;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.seo-header {
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
color: white;
|
||||
padding: 60px 20px;
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.seo-header h1 {
|
||||
font-size: 2.5em;
|
||||
margin-bottom: 10px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.seo-header p {
|
||||
font-size: 1.2em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.seo-content {
|
||||
padding: 40px 20px;
|
||||
}
|
||||
|
||||
.seo-content h2 {
|
||||
font-size: 1.8em;
|
||||
margin-bottom: 20px;
|
||||
color: #667eea;
|
||||
border-bottom: 3px solid #667eea;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.seo-content h3 {
|
||||
font-size: 1.4em;
|
||||
margin: 30px 0 15px;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.seo-content p {
|
||||
margin-bottom: 15px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-content ul, .seo-content ol {
|
||||
margin: 15px 0 15px 30px;
|
||||
}
|
||||
|
||||
.seo-content li {
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.8;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.seo-footer {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 40px 20px;
|
||||
text-align: center;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.seo-footer p {
|
||||
margin: 10px 0;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.seo-footer a {
|
||||
color: #667eea;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.seo-footer a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.redirect-notice {
|
||||
background: #fff3cd;
|
||||
border: 1px solid #ffc107;
|
||||
padding: 15px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.redirect-notice p {
|
||||
color: #856404;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<!-- Schema.org Structured Data -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "WebPage",
|
||||
"name": "客服中心 - 天远查在线客服 | 技术支持",
|
||||
"description": "天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。",
|
||||
"url": "https://www.tianyuancha.cn/service",
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="seo-container">
|
||||
<header class="seo-header">
|
||||
<h1>客服中心 - 天远查在线客服 | 技术支持</h1>
|
||||
<p>天远查客服中心,提供在线客服支持、技术咨询、问题反馈等服务,确保用户获得及时有效的帮助。</p>
|
||||
</header>
|
||||
|
||||
<main class="seo-content">
|
||||
[object Promise]
|
||||
|
||||
<div class="redirect-notice">
|
||||
<p>💡 访问完整功能请使用现代浏览器访问主站</p>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="seo-footer">
|
||||
<p>© 2024 天远查 版权所有</p>
|
||||
<p>
|
||||
<a href="https://www.tianyuancha.cn">天远查官网</a> |
|
||||
<a href="https://www.tianyuancha.cn/help">帮助中心</a> |
|
||||
<a href="https://www.tianyuancha.cn/privacyPolicy">隐私政策</a> |
|
||||
<a href="https://www.tianyuancha.cn/userAgreement">用户协议</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
63
scripts/seo-static-generator/static-pages/sitemap.xml
Normal file
63
scripts/seo-static-generator/static-pages/sitemap.xml
Normal file
@@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>1.0</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/inquire/category/lawsuit</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/inquire/marriage</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/inquire/category/vehicle</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/inquire/category/marriageStatus</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/agent</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/help</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/example</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/service</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.tianyuancha.cn/inquire</loc>
|
||||
<lastmod>2026-02-25</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
</urlset>
|
||||
280
scripts/seo-static-generator/testGenerator.js
Normal file
280
scripts/seo-static-generator/testGenerator.js
Normal file
@@ -0,0 +1,280 @@
|
||||
/**
|
||||
* 静态页面生成器测试脚本
|
||||
*/
|
||||
|
||||
import { generateAllPages, generatePage } from './generateStaticPages.js';
|
||||
import { generateStaticHTML } from './pageTemplates.js';
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
|
||||
console.log('='.repeat(60));
|
||||
console.log(' 天远查 - 静态页面生成器测试');
|
||||
console.log('='.repeat(60));
|
||||
console.log();
|
||||
|
||||
// 测试结果统计
|
||||
let passedTests = 0;
|
||||
let failedTests = 0;
|
||||
|
||||
// 测试函数
|
||||
function test(name, fn) {
|
||||
try {
|
||||
fn();
|
||||
console.log(`✅ ${name}`);
|
||||
passedTests++;
|
||||
} catch (error) {
|
||||
console.log(`❌ ${name}`);
|
||||
console.log(` 错误: ${error.message}`);
|
||||
failedTests++;
|
||||
}
|
||||
}
|
||||
|
||||
// 断言函数
|
||||
function assert(condition, message) {
|
||||
if (!condition) {
|
||||
throw new Error(message || '断言失败');
|
||||
}
|
||||
}
|
||||
|
||||
console.log('🧪 开始测试...\n');
|
||||
|
||||
// 测试 1: 测试基本的 HTML 生成
|
||||
test('测试基本的 HTML 生成', () => {
|
||||
const seoConfig = {
|
||||
title: '测试标题',
|
||||
description: '测试描述',
|
||||
keywords: '测试关键词'
|
||||
};
|
||||
|
||||
const html = generateStaticHTML(seoConfig, { path: '/test' });
|
||||
|
||||
assert(html.includes('<!DOCTYPE html>'), '应该包含 DOCTYPE 声明');
|
||||
assert(html.includes('测试标题'), '应该包含标题');
|
||||
assert(html.includes('测试描述'), '应该包含描述');
|
||||
assert(html.includes('测试关键词'), '应该包含关键词');
|
||||
assert(html.includes('og:title'), '应该包含 Open Graph 标签');
|
||||
assert(html.includes('twitter:card'), '应该包含 Twitter Cards 标签');
|
||||
assert(html.includes('application/ld+json'), '应该包含结构化数据');
|
||||
});
|
||||
|
||||
// 测试 2: 测试默认内容生成
|
||||
test('测试默认内容生成', () => {
|
||||
const seoConfig = {
|
||||
title: '测试页面',
|
||||
description: '这是一个测试页面',
|
||||
keywords: '测试'
|
||||
};
|
||||
|
||||
const html = generateStaticHTML(seoConfig, { path: '/test' });
|
||||
|
||||
assert(html.includes('关于测试页面'), '应该包含关于标题');
|
||||
assert(html.includes('核心功能'), '应该包含核心功能');
|
||||
assert(html.includes('为什么选择天远查?'), '应该包含选择理由');
|
||||
assert(html.includes('应用场景'), '应该包含应用场景');
|
||||
});
|
||||
|
||||
// 测试 3: 测试路由内容生成
|
||||
test('测试路由内容生成', () => {
|
||||
const seoConfig = {
|
||||
title: '司法涉诉核验',
|
||||
description: '司法风险检测中心',
|
||||
keywords: '司法,诉讼'
|
||||
};
|
||||
|
||||
const html = generateStaticHTML(seoConfig, {
|
||||
path: '/inquire/category/lawsuit',
|
||||
content: generateContentByRoute('/inquire/category/lawsuit', seoConfig)
|
||||
});
|
||||
|
||||
assert(html.includes('司法涉诉核验服务'), '应该包含司法涉诉标题');
|
||||
assert(html.includes('开庭公告查询'), '应该包含开庭公告');
|
||||
assert(html.includes('裁判文书查询'), '应该包含裁判文书');
|
||||
});
|
||||
|
||||
// 测试 4: 测试文件名生成
|
||||
test('测试文件名生成', () => {
|
||||
const paths = [
|
||||
{ input: '/', expected: 'index.html' },
|
||||
{ input: '/help', expected: 'help.html' },
|
||||
{ input: '/inquire/category/lawsuit', expected: 'inquire-category-lawsuit.html' },
|
||||
{ input: '/agent/promote', expected: 'agent-promote.html' }
|
||||
];
|
||||
|
||||
paths.forEach(({ input, expected }) => {
|
||||
const filename = input
|
||||
.replace(/^\//, '')
|
||||
.replace(/\/+/g, '-')
|
||||
.replace(/:/g, '-');
|
||||
const result = filename ? `${filename}.html` : 'index.html';
|
||||
|
||||
assert(result === expected, `路径 ${input} 应该生成文件名 ${expected}`);
|
||||
});
|
||||
});
|
||||
|
||||
// 测试 5: 测试静态页面目录创建
|
||||
test('测试静态页面目录创建', () => {
|
||||
const outputDir = path.join(__dirname, '../static-pages-test');
|
||||
|
||||
// 清理测试目录(如果存在)
|
||||
if (fs.existsSync(outputDir)) {
|
||||
fs.rmSync(outputDir, { recursive: true, force: true });
|
||||
}
|
||||
|
||||
// 创建目录
|
||||
if (!fs.existsSync(outputDir)) {
|
||||
fs.mkdirSync(outputDir, { recursive: true });
|
||||
}
|
||||
|
||||
assert(fs.existsSync(outputDir), '应该创建输出目录');
|
||||
|
||||
// 清理测试目录
|
||||
fs.rmSync(outputDir, { recursive: true, force: true });
|
||||
});
|
||||
|
||||
// 测试 6: 测试单个页面生成
|
||||
test('测试单个页面生成', () => {
|
||||
const testDir = path.join(__dirname, '../static-pages-test');
|
||||
|
||||
// 清理测试目录(如果存在)
|
||||
if (fs.existsSync(testDir)) {
|
||||
fs.rmSync(testDir, { recursive: true, force: true });
|
||||
}
|
||||
|
||||
fs.mkdirSync(testDir, { recursive: true });
|
||||
|
||||
const seoConfig = {
|
||||
title: '测试页面',
|
||||
description: '测试描述',
|
||||
keywords: '测试'
|
||||
};
|
||||
|
||||
const filepath = path.join(testDir, 'test.html');
|
||||
|
||||
// 临时修改 generatePage 的输出目录
|
||||
const originalDir = path.join(__dirname, '../static-pages');
|
||||
|
||||
// 生成测试文件
|
||||
const content = generateStaticHTML(seoConfig, { path: '/test' });
|
||||
fs.writeFileSync(filepath, content, 'utf-8');
|
||||
|
||||
assert(fs.existsSync(filepath), '应该生成测试文件');
|
||||
|
||||
// 验证文件内容
|
||||
const fileContent = fs.readFileSync(filepath, 'utf-8');
|
||||
assert(fileContent.includes('测试页面'), '文件应该包含标题');
|
||||
|
||||
// 清理测试目录
|
||||
fs.rmSync(testDir, { recursive: true, force: true });
|
||||
});
|
||||
|
||||
// 测试 7: 测试 SEO 配置完整性
|
||||
test('测试 SEO 配置完整性', () => {
|
||||
const seoConfigs = {
|
||||
'/': {
|
||||
title: '天远查官网_企业与婚姻关联风险核验_综合履约背景核验',
|
||||
description: '天远查官网(TianYuanCha)聚合官方公示数据...',
|
||||
keywords: '天远查,婚姻状态风险, 配偶背景核验'
|
||||
},
|
||||
'/inquire/category/lawsuit': {
|
||||
title: '司法涉诉核验_个人及企业法律诉讼记录_履约风险评估_天远查',
|
||||
description: '天远查司法风险检测中心...',
|
||||
keywords: '司法案件核验,法律诉讼记录'
|
||||
}
|
||||
};
|
||||
|
||||
for (const [path, config] of Object.entries(seoConfigs)) {
|
||||
assert(config.title, `路由 ${path} 应该有 title`);
|
||||
assert(config.description, `路由 ${path} 应该有 description`);
|
||||
assert(config.keywords, `路由 ${path} 应该有 keywords`);
|
||||
}
|
||||
});
|
||||
|
||||
// 测试 8: 测试 Open Graph 标签
|
||||
test('测试 Open Graph 标签', () => {
|
||||
const seoConfig = {
|
||||
title: '测试标题',
|
||||
description: '测试描述',
|
||||
keywords: '测试'
|
||||
};
|
||||
|
||||
const html = generateStaticHTML(seoConfig, { path: '/test' });
|
||||
|
||||
assert(html.includes('og:type'), '应该包含 og:type');
|
||||
assert(html.includes('og:url'), '应该包含 og:url');
|
||||
assert(html.includes('og:title'), '应该包含 og:title');
|
||||
assert(html.includes('og:description'), '应该包含 og:description');
|
||||
assert(html.includes('og:site_name'), '应该包含 og:site_name');
|
||||
assert(html.includes('og:locale'), '应该包含 og:locale');
|
||||
});
|
||||
|
||||
// 测试 9: 测试结构化数据
|
||||
test('测试结构化数据', () => {
|
||||
const seoConfig = {
|
||||
title: '测试标题',
|
||||
description: '测试描述',
|
||||
keywords: '测试'
|
||||
};
|
||||
|
||||
const html = generateStaticHTML(seoConfig, { path: '/test' });
|
||||
|
||||
assert(html.includes('@context'), '应该包含 @context');
|
||||
assert(html.includes('@type'), '应该包含 @type');
|
||||
assert(html.includes('WebPage'), '应该包含 WebPage 类型');
|
||||
assert(html.includes('Organization'), '应该包含 Organization 类型');
|
||||
});
|
||||
|
||||
// 测试 10: 测试 canonical URL
|
||||
test('测试 canonical URL', () => {
|
||||
const seoConfig = {
|
||||
title: '测试标题',
|
||||
description: '测试描述',
|
||||
keywords: '测试'
|
||||
};
|
||||
|
||||
const html = generateStaticHTML(seoConfig, {
|
||||
path: '/test/page',
|
||||
canonical: 'https://www.tianyuancha.cn'
|
||||
});
|
||||
|
||||
assert(html.includes('https://www.tianyuancha.cn/test/page'), '应该包含完整的 canonical URL');
|
||||
});
|
||||
|
||||
// 运行实际生成测试
|
||||
console.log('\n🚀 运行实际生成测试...\n');
|
||||
|
||||
test('生成所有静态页面', () => {
|
||||
try {
|
||||
generateAllPages();
|
||||
|
||||
const staticDir = path.join(__dirname, '../static-pages');
|
||||
assert(fs.existsSync(staticDir), '应该生成 static-pages 目录');
|
||||
|
||||
const files = fs.readdirSync(staticDir);
|
||||
assert(files.length > 0, '应该生成至少一个文件');
|
||||
assert(files.includes('index.html'), '应该生成 index.html');
|
||||
assert(files.includes('sitemap.xml'), '应该生成 sitemap.xml');
|
||||
assert(files.includes('robots.txt'), '应该生成 robots.txt');
|
||||
|
||||
console.log(` 生成了 ${files.length} 个文件`);
|
||||
} catch (error) {
|
||||
console.log(` 错误: ${error.message}`);
|
||||
throw error;
|
||||
}
|
||||
});
|
||||
|
||||
// 输出测试结果
|
||||
console.log('\n' + '='.repeat(60));
|
||||
console.log(' 测试结果');
|
||||
console.log('='.repeat(60));
|
||||
console.log(`✅ 通过: ${passedTests}`);
|
||||
console.log(`❌ 失败: ${failedTests}`);
|
||||
console.log(`📊 总计: ${passedTests + failedTests}`);
|
||||
console.log();
|
||||
|
||||
if (failedTests === 0) {
|
||||
console.log('🎉 所有测试通过!');
|
||||
process.exit(0);
|
||||
} else {
|
||||
console.log('⚠️ 部分测试失败,请检查错误信息');
|
||||
process.exit(1);
|
||||
}
|
||||
@@ -9,7 +9,7 @@ export function useSEO() {
|
||||
title: '天远查官网_企业与婚姻关联风险核验_综合履约背景核验',
|
||||
description: '天远查官网(TianYuanCha)聚合官方公示数据,专注于商业安全与资产背调。提供企业工商画像、婚姻状态关联风险、司法涉诉筛查及配偶债务核验。数据实时同步,助您精准规避投资、交易及家庭结合中的经济与法律风险。',
|
||||
keywords: '天远查,婚姻状态风险, 配偶背景核验,企业信用查询,司法诉讼记录,资产风险评估',
|
||||
url: 'https://www.zhinengcha.cn'
|
||||
url: 'https://www.tianyuancha.cn'
|
||||
}
|
||||
|
||||
// 页面SEO配置
|
||||
@@ -111,6 +111,7 @@ export function useSEO() {
|
||||
canonical.href = url
|
||||
}
|
||||
|
||||
|
||||
// 更新结构化数据
|
||||
const updateStructuredData = (config) => {
|
||||
// 移除现有的结构化数据
|
||||
@@ -121,6 +122,7 @@ export function useSEO() {
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
// 添加新的结构化数据
|
||||
const structuredData = {
|
||||
"@context": "https://schema.org",
|
||||
@@ -131,7 +133,7 @@ export function useSEO() {
|
||||
"mainEntity": {
|
||||
"@type": "Organization",
|
||||
"name": "天远查",
|
||||
"url": "https://www.zhinengcha.cn/",
|
||||
"url": "https://www.tianyuancha.cn/",
|
||||
"description": "专业大数据风险报告查询与代理平台,支持个人和企业多场景风控应用"
|
||||
}
|
||||
}
|
||||
@@ -209,7 +211,7 @@ export function useSEO() {
|
||||
|
||||
updateSEO({
|
||||
...config,
|
||||
url: `https://www.zhinengcha.cn${currentPath}`
|
||||
url: `https://www.tianyuancha.cn${currentPath}`
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -460,7 +460,7 @@ router.afterEach((to) => {
|
||||
const seoConfig = {
|
||||
title: `${to.meta.title} - 天远查`,
|
||||
description: `天远查${to.meta.title}页面,提供专业的大数据风险管控服务。`,
|
||||
url: `https://www.zhinengcha.cn${to.path}`
|
||||
url: `https://www.tianyuancha.cn${to.path}`
|
||||
}
|
||||
updateSEO(seoConfig)
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ onMounted(() => {
|
||||
title: '404 - 页面未找到 | 天远查',
|
||||
description: '抱歉,您访问的页面不存在。天远查专业大数据风险管控平台,提供大数据风险报告查询、婚姻状况查询、个人信用评估等服务。',
|
||||
keywords: '404, 页面未找到, 天远查, 大数据风险管控',
|
||||
url: 'https://www.zhinengcha.cn/404'
|
||||
url: 'https://www.tianyuancha.cn/404'
|
||||
})
|
||||
})
|
||||
</script>
|
||||
|
||||
@@ -15,8 +15,8 @@ export default defineConfig({
|
||||
strictPort: true, // 如果端口被占用则抛出错误而不是使用下一个可用端口
|
||||
proxy: {
|
||||
"/api/v1": {
|
||||
target: "http://127.0.0.1:8888", // 本地接口地址
|
||||
// target: "https://www.tianyuancha.cn", // 本地接口地址
|
||||
// target: "http://127.0.0.1:8888", // 本地接口地址
|
||||
target: "https://www.tianyuancha.cn", // 本地接口地址
|
||||
changeOrigin: true,
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user