Stombi Home Page

Archiver un site dynamique en site statique avec wget

Récuperer le site

1
wget -q --mirror -p --html-extension -e robots=off --base=./ -k -P ./ http://site.com/

Récuperer les URL

1
2
wget --spider --recursive --no-verbose --output-file=wget.log http://site.com
sed -n "s@.+ URL:([^ ]+) .+@1@p" wget.log | sed "s@&@&@" > sed.log

Créer un .htaccess avec des Redirect 301

1
2
3
4
sed -i 's/http://site.com///g' sed.log;
for f in `cat sed.log`;
  do echo "Redirect 301 /$f http://old.site.com/$f.html" >> .htaccess;
done;

Script complet

(static-website.sh) download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/bash

SITE_URL="http://www.site.net"
ARCHIVE_URL="http://old.site.net"

wget -q --mirror -p --html-extension -e robots=off --base=./ -k -P ./ ${SITE_URL}

wget --spider --recursive --no-verbose --output-file=wget.log ${SITE_URL}
sed -n "s@.\+ URL:\([^ ]\+\) .\+@\1@p" wget.log | sed "s@&@\&@" > sed.log

sed -i 's|'${SITE_URL}'||g' sed.log;

for f in $(cat sed.log);
  do echo "Redirect 301 $f ${ARCHIVE_URL}$f.html" >> newsite.htaccess;
done;

rm wget.log sed.log

Comments