目 录CONTENT

文章目录

解决Halo的sitemap无法被谷歌抓取

起因

其实这是一个老问题了,每次把站点地图的网址提交给谷歌总是报错:

神奇的是同样的网址给bing就能过,也不知道谷歌抽了什么风==。不过后来随着站点推送插件的出现,这个问题我就一直没管了,直到前两天换服务器才想起来这个久违的问题,再次尝试解决。

解决方案

前几日在浏览插件市场的时候,发现了一个叫静态网络服务的插件,简单来说就是方便你用Halo部署一些静态网页,于是我突发奇想,如果我把sitemap的网页内容复制下来,重新发布到一个新的的静态网页中,会不会成功?

说干就干,我复制了sitemap.xml的源代码,把它粘贴到一个新的目录下,比如/sitemap/sitemap.xml,结果居然成了,这真是让人摸不着头脑:

不管怎么说,虽然方法有些奇怪,但是结果是好的,接下来就是把过程写成代码然后丢到定时任务执行就是了:

import requests
import os

# 设置XML文件的URL和保存目录
url = ''  # 替换为实际的XML文件URL
save_directory = '/opt/1panel/apps/halo/halo/data/static/sitemap/'  # 替换为你想要保存的目录
file_name = 'sitemap.xml'  # 保存的文件名

# 创建保存目录(如果不存在)
if not os.path.exists(save_directory):
    os.makedirs(save_directory)

# 获取XML文件
response = requests.get(url,verify=False)

# 检查请求是否成功
if response.status_code == 200:
    # 保存文件
    file_path = os.path.join(save_directory, file_name)
    with open(file_path, 'wb') as file:
        file.write(response.content)
    print(f'文件已保存到: {file_path}')
else:
    print(f'无法访问文件,状态码: {response.status_code}')

0

评论区