Apache下通过shell脚本提交网站404死链

news/2024/5/20 21:07:23/文章来源:https://blog.csdn.net/weixin_30883777/article/details/98188815

网站运营人员对于死链这个概念一定不陌生,网站的一些数据删除或页面改版等都容易制造死链,影响用户体验不说,过多的死链还会影响到网站的整体权重或排名。

 

百度站长平台提供的死链提交工具,可将网站存在的死链(协议死链、404页面)进行提交,可快速删除死链,帮助网站SEO优化。在提交死链的文件中逐个手动填写死链的话太麻烦,工作中我们提倡复杂自动化,所以本文我们一起交流分享Apache服务中通过shell脚本整理网站死链,便于我们提交。

 

 

1.配置Apache记录搜索引擎

Apache是目前网站建设最为主流的web服务,但是apache的日志文件默认是不记录百度、谷歌等各大搜索引擎的爬取程序的,所以首先需要我们设置Apache的配置文件。

找到Apache的配置文件httpd.conf,在配置文件中找到下面两行:

 CustomLog "logs/access_log" common#CustomLog "logs/access_log" combined

默认采用的是common,这里我们只需要将common这一行前面加#注释掉,然后将combined这一行前的#去掉即可。然后保存重启Apache服务。

注:如果你的服务器上添加了多个站点,每个站点有单独的配置文件,则我们只需要在相应站点的配置文件中设置CustomLog项即可,例如:

vim /usr/local/apache/conf/vhost/www.chanzhi.org.confServerAdmin [email protected] DocumentRoot "/data/wwwroot/www.chanzhi.org"ServerName www.chanzhi.orgServerAlias chanzhi.orgErrorLog "/data/wwwlogs/www.chanzhi.org_error_apache.log"CustomLog "/data/wwwlogs/www.chanzhi.org_apache.log" combinedSetOutputFilter DEFLATEOptions FollowSymLinks ExecCGIRequire all grantedAllowOverride AllOrder allow,denyAllow from allDirectoryIndex index.html index.php

下面是配置前后的网站日志记录格式:

配置前:

 

配置后:

 

2.编写shell脚本

我们通过shell脚本获取网站日志中指定爬虫的抓取记录,然后汇总到一个文件中,便于后期使用。代码如下,比如保存为deathlink.sh

 1 #!/bin/bash
 2 #初始化变量
 3 #定义蜘蛛UA信息(默认是百度蜘蛛)
 4 UA='+http://www.baidu.com/search/spider.html'
 5  
 6 #前一天的日期(apache日志)
 7 DATE=`date +%Y%m%d -d "1 day ago"`
 8  
 9 #定义日志路径
10 logfile=/data/wwwlogs/www.chanzhi.org_apache.log-${DATE}.log
11  
12 #定义死链文件存放路径
13 deathfile=/data/wwwroot/www.chanzhi.org/deathlink.txt
14  
15 #定义网站访问地址
16 website=http://www.chanzhi.org
17  
18 #分析日志并保存死链数据
19 for url in `awk -v str="${UA}" '$9=="404" && $15~str {print $7}' ${logfile}`
20 do
21   grep -q "$url" ${deathfile} || echo ${website}${url} >>${deathfile}
22 done

大家在使用该脚本时,根据自己服务器情况调整下路径和字段即可,然后执行脚本,:

bash deathlink.sh

 

3.提交死链

执行上面脚本时候,就会在指定目录下生成包含所有获取的404页面链接的文件,每个连接占一行。例如:

 

最后在站长平台提交死链页面中,填写自己的死链文件地址即可,例如:

 

 


 

百度在审核通过之后,会将已经收录的失效链接删除,以避免失效页面链接对网站造成不良的影响。

总结:

本文和大家分享了在Apache服务环境下,如何利用shell脚本自动获取百度蜘蛛等爬虫抓取的死链,并生成汇总文件提交给搜索引擎。如果大家还有其他更好的方法或者疑问,欢迎一起分享交流。

 


转载于:https://www.cnblogs.com/chanzhi/p/7605171.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_827978.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django的安装使用,以及建立本地网站

一、安装Django pip install django 完成后即可 二、pycharm 建立django 点击file ——>new project 选择django项目——>more setting填写appname 生成以下项目结构 -views.py中处理视图逻辑,一般为大量函数方法。一般被urls处理调用,收到请求&am…

看透 Spring MVC 源代码分析与实践 —— 网站基础知识

网站架构及其演变过程友情提示:欢迎关注公众号【芋道源码】。?关注后,拉你进【源码圈】微信群讨论技术和源码。友情提示:欢迎关注公众号【芋道源码】。?关注后,拉你进【源码圈】微信群讨论技术和源码。友情提示:欢迎…

某政府网站信息文章标题、链接、刊布时间等信息获取

目录一、需求信息二、过程感触三、实战code一、需求信息 需要信息: 每个内容下开篇的索引号、发布机构、组配分类、标题、发布时间和链接地址,部分实例如下图: 上图中左侧的目录结构对应的刊布信息中的如下信息: 题外话&#x…

大型分布式网站术语分析 15 条,你知道几条?

点击上方“芋道源码”,选择“置顶公众号”技术文章第一时间送达!源码精品专栏 精尽 Dubbo 原理与源码专栏( 已经完成 69 篇,预计总共 75 篇 )中文详细注释的开源项目Java 并发源码合集RocketMQ 源码合集Sharding-JDBC 源码解析合集Spring MVC…

几个大型网站的Feeds(Timeline)设计简单对比

点击上方“芋道源码”,选择“置顶公众号”技术文章第一时间送达!源码精品专栏 精尽 Dubbo 原理与源码专栏( 已经完成 69 篇,预计总共 75 篇 )中文详细注释的开源项目Java 并发源码合集RocketMQ 源码合集Sharding-JDBC 源码解析合集Spring MVC…

基于LAMP环境发布一个Discuz论坛网站

一、LAMP是什么 1、LAMP是常见的Web服务器环境解决方案,用于创建和管理Web应用程序的开源开发平台。Linux用作后端操作系统,Apache是​​Web服务器,MySQL是数据库,PHP是脚本语言。 2、LAMP 为 Linux、Apache、MySQL、PHP 的简称…

尾随《大型网站技术架构》作者,从零单排「大数据」

李智慧大佬,《大型网站技术架构》(艿艿的架构启蒙读物)的作者,豆瓣评分 7.9 分,出了「大数据」专栏。所以,如果你数据量挺大的,可以扫码买一买。如果你数据量不大,但是想膨胀膨胀&am…

大型网站架构演进的五大阶段盘点

点击上方“芋道源码”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏 精尽 Dubbo 原理与源码 69 篇精尽 Netty 原理与源码 61 篇中文详细注释的开源项目Java 并发源码合集RocketMQ 源码合集Sharding-JDBC 源码解析合集Spring MVC …

初步了解网站压力测试工具

http://www.51testing.com/html/index.html(51测试网) 一、ab网站压力测试 ab是apache自带的压力测试工具,ab是apachebench命令缩写。它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器进行压力测试。比如nginx、tomcat、IIS等。…

用户在电商网站中购买成功了,那么 TA 在微服务中经历了什么?

点击上方“芋道源码”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏 原创 | Java 2019 超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析消息中间件 RocketMQ 源码解析数据库…

Python采集网站随机header

不废话直接代码: import randomclass UserAgent:def __init__(self):self.headers ["Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36","Mozilla/5.0 (Macintosh; Intel Mac OS X…

分享Html模板5合一模板---50电影模板、56个游、86个体育项目、95个音乐网站、116个时尚

模板下载链接:https://pan.baidu.com/s/1zNvc5K8tpWbxAKuIziGgjg 密码:agk4 50电影模板Html模板! 56个游戏Html模板 86个体育项目Html模板 95个音乐网站Html模板 116个时尚Html模板 我就不相信没有你需要的! 50电影模板Html模板! 儿童…

《大型网站系统与Java中间件》读书笔记(上)

前言 只有光头才能变强。 文本已收录至我的GitHub仓库,欢迎Star:github.com/ZhongFuChen… (想自学习编程的小伙伴请搜索圈T社区,更多行业相关资讯更有行业相关免费视频教程。完全免费哦!) 一、为什么分布式&#xff…

《大型网站系统与Java中间件》读书笔记 (中)

前言 只有光头才能变强。 文本已收录至我的GitHub仓库,欢迎Star:github.com/ZhongFuChen… 回顾上一篇: 《大型网站系统与Java中间件》读书笔记(一) 这周周末读了第四章,现在过来做做笔记,希望…

利用node.js写爬虫 爬取某相亲网站全部交友信息

点击查看爬取世纪佳缘相亲交友信息 利用node.js,写了一个爬虫js。1个小时左右的时间,便爬取了2000多条交友信息,包括网名,年龄,图片,学历,工资等。当然,爬取的速度和网速有很大的关…

分享21个广告排行、15个交友会员、25个网站导航和39个文件管理PHP源码,总有一款适合你

链接:https://pan.baidu.com/s/1aMHf6wDNbHm-2upU287w2A 提取码:px8q 分享21个广告排行、15个交友会员、25个网站导航和39个文件管理PHP源码,总有一款适合你 下面是文件的名字,我放了一些图片,文章里不是所有的图主要…

支付宝记---电脑网站支付(.NET)

根据商品信息和价格生成支付宝支付的二维码 2019年夏,张渔歌仄伏于家中。越明年,疫情依旧,渔歌隧研究支付宝支付。其中心酸不言表,属予作文以记之。 一、准备工作 1、支付宝开发平台https://open.alipay.com/。需要进行企业级的…

Web Monitor/Dev/Test Tool Collection 网站/网页监控/开发/测试工具集合

HttpWatch HttpWatch是强大的网页数据分析工具. 包括网页摘要.Cookies管理.缓存管理.消息头发送/接受.字符查询.POST 数据和目录管理功能.报告输出. Features: Easily monitor HTTPS, HTTP and SPDY without using proxies or changing network settingsSupports IE/Firefox on…

Java 爬虫遇到需要登录的网站,该怎么办?

这是 Java 网络爬虫系列博文的第二篇,在上一篇 Java 网络爬虫,就是这么的简单 中,我们简单的学习了一下如何利用 Java 进行网络爬虫。在这一篇中我们将简单的聊一聊在网络爬虫时,遇到需要登录的网站,我们该怎么办&…

【Python】Flask+Gunicorn搭建简单网站

1.安装Flask第三方库 pip3 install Flask 2.创建Flask应用程序 项目结构如上图所示,其中static用来放置静态文件,如js文件、css文件以及图片等,templates文件夹用来放置模板文件,即html文件。 在项目中导入Flask第三方库&#…