sh 镜像一个站点。从基本URL和$ URL / sitemap.xml开始

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh 镜像一个站点。从基本URL和$ URL / sitemap.xml开始相关的知识,希望对你有一定的参考价值。

# use wget to mirror a site
#   $1 is site URL
#     - format is http(s)://www.sitename.com/ (or no slash at end)
#   ${1%%+(/)} removes all slashes at end
#   ${1%/} removes 1 slash at end
Mirror_Start=`date`
MirrorLog="`basename $1`/_MirrorSite.log"
mkdir `basename $1`
MirrorDir="${1%/}"
# With Fix of URLs after download
WgetParms=" -E -Kk --mirror -p -e robots=off"
# Without Fix of URLs after download
#WgetParms=" --mirror -e robots=off"
# Set extglob setting in bash for pattern matching (used for "${1%/}" )
shopt -s extglob
# Mirror from default home page
wget $WgetParms $1 > $MirrorLog
# Mirror from /sitemap.xml if it exists
echo '========================== Trying sitemap.xml =============================' | tee -a $MirrorLog
if wget -q -O- "$MirrorDir/sitemap.xml" ; then
        cat sitemap.xml | grep -o '<loc>.*</loc>' | grep -o 'http[^<"]*' | xargs wget $WgetParms >>$MirrorLog
        echo 'Sitemap='"|$MirrorDir/sitemap.xml|"
else
        echo 'Sitemap='"|$MirrorDir/sitemap.xml| FAILED! Error=$?" | tee -a $MirrorLog
fi
if wget -q -O- "$MirrorDir/sitemap/" ; then
        cat sitemap | grep -o '<loc>.*</loc>' | grep -o 'http[^<"]*' | xargs wget $WgetParms >>$MirrorLog
        echo 'Sitemap='"|$MirrorDir/sitemap/|"
else
        echo 'Sitemap='"|$MirrorDir/sitemap/| FAILED! Error=$?" | tee -a $MirrorLog
fi

echo $Mirror_Start "<-- Start time" | tee -a $MirrorLog
echo `date` "<---- End Time" | tee -a $MirrorLog

以上是关于sh 镜像一个站点。从基本URL和$ URL / sitemap.xml开始的主要内容,如果未能解决你的问题,请参考以下文章

如何在 MVC 中获取站点的基本 URL [重复]

nginx站点目录及文件URL访问控制

从 localhost 开发站点时更改了 WordPress 地址 (URL) 和站点地址 (URL)。现在,建立数据库连接时出错

PHP 从多个 URL 获取站点标题

第六篇:配置Docker容器加速器

Django 如何构建依赖于站点的 URL?