如果你的网站有足够多优质内容、良好的sitemap和完善的内部链接,谷歌会找到它们并建立索引。随着网站内容增多,谷歌可能需要更长的时间来索引新页面。

Indexing API能够通过Google官方的API服务批量提交你的网址,相比等待sitemap更新和主动提交到GSC(Google Search Console)速度更快,更方便。虽然目前有很多能够协助网站开发者提交到Indexing API的在线服务,但是大部分价格比较贵,免费的限制也多。Github上已经有nodejs开发的提交Indexing API的工具,但是国内用户还是比较麻烦,还好现在已经有使用Github Action主动提交Indexing API的工具。

准备工作

1、在https://search.google.com/search-console创建GSC(Google Search Console)账号

2、创建Google Cloud账号,新建项目,每个项目每天可以索引200个页面,搜索Web Search Indexing API,激活该API,在 Credentials -> Create credentials-> Service account 创建 Service account、角色设置为Viewer。

google-indexing-api-with-github-action-5.png
google-indexing-api-with-github-action-1.png
google-indexing-api-with-github-action-2.png
3、记录Service account生成的邮箱地址,创建密钥,下载JSON保存到本机
google-indexing-api-with-github-action-3.png
google-indexing-api-with-github-action-4.png
4、在GSC(Google Search Console)设置中,选择用户和权限(Users and permissions),添加用户,邮箱为Service account生成的邮箱地址,权限为Owner
google-indexing-api-with-github-action-6.png
google-indexing-api-with-github-action-7.png

代码

准备工作完后就开始Github Action的配置,模板使用robingenz/action-google-indexing@v1.0.0,在Github中新建仓库,在Settings->Actions secrets and variables->Action 中创建secrets,名称为GCP_SERVICE_ACCOUNT_KEY,内容为保存到本机的JSON文件内容。

仓库新增.github/workflows/indexing.yml文件,siteUrl改为自己的网站地址,提交文件后会自动触发执行。

name: Google Indexing Action

on:
  push:
    branches:
      - main

jobs:
  index_site:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Index site on Google
        uses: robingenz/action-google-indexing@v1.0.0
        with:
          siteUrl: 'aciuz.com'
          gcpServiceAccountKey: ${{ secrets.GCP_SERVICE_ACCOUNT_KEY }}