Récupérer un site web perdu sans sauvegarde?


262

Malheureusement, notre fournisseur d'hébergement a subi une perte de données de 100%. J'ai donc perdu tout le contenu de deux sites Web de blogs hébergés:

(Oui, oui, je absolument aurais dû faire des sauvegardes hors site complet Malheureusement, toutes mes sauvegardes étaient sur le serveur lui - même donc enregistrer la conférence,.. Vous êtes 100% tout à fait raison, mais cela ne me permet pas au moment de Let. restez concentré sur la question ici!)

Je commence le lent et pénible processus de récupération du site Web à partir de caches de robots Web.

Il existe quelques outils automatisés permettant de récupérer un site Web à partir de caches, telles que Warrick (Yahoo, Bing, Google, etc.) , mais j'ai obtenu de mauvais résultats en utilisant ceci:

  • Mon adresse IP a été rapidement bannie de Google pour son utilisation
  • Je reçois beaucoup d'erreurs 500 et 503 et "attente 5 minutes…"
  • En fin de compte, je peux récupérer le contenu du texte plus rapidement à la main

J'ai eu beaucoup plus de chance en utilisant une liste de tous les articles de blog, en accédant au cache Google et en enregistrant chaque fichier au format HTML. Bien qu'il ya beaucoup de messages de blog, il n'y a pas que beaucoup, et je me dis que je mérite une certaine auto-flagellation pour ne pas avoir une meilleure stratégie de sauvegarde. Quoi qu’il en soit, l’important est que j’ai eu de la chance d’obtenir le texte d’un article de blog de cette façon et que je puisse définitivement extraire le texte des pages Web des caches Internet. Sur la base de ce que j’ai fait jusqu’à présent, je suis confiant de pouvoir récupérer tout le texte et tous les commentaires de blogs perdus .

Cependant, les images qui accompagnent chaque article de blog se révèlent… plus difficiles.

Des conseils généraux pour récupérer des pages de sites Web à partir de caches Internet, et en particulier des endroits pour récupérer des images archivées à partir de pages de sites Web ?

(Et encore une fois, s'il vous plaît, pas de cours magistraux supplémentaires. Vous avez tout à fait raison! Mais avoir raison ne résout pas mon problème immédiat… à moins que vous n'ayez une machine à remonter le temps…)


96
Quand quelqu'un comme Jeff Atwood lui-même peut perdre deux sites Web entiers d'un seul coup ... Eh bien. Je vais passer en revue mes propres procédures de sauvegarde, entre autres: P

240
@Phoshi: Jeff a quelques bons articles sur Coding Horror sur la sauvegarde. Vous devriez leur donner une lecture rapide.

34
Joshhunt gagne un (1) internet. Cette offre ne peut être combinée à d'autres offres, échangée ou substituée. Pas de chèque de pluie.
Adam Davis

28
Les efforts de certains vont aller, pour gagner le représentant sur le SU ...

26
Ne faites pas référence à ce que vous avez fait en tant que "sauvegardes" - si ces fichiers sont sur le même serveur, ils ne sont en aucun cas des "sauvegardes".

Réponses:


220

Voici mon inconditionnel dans le noir: configurez votre serveur Web pour qu'il renvoie 304 pour chaque demande d'image, puis associez la récupération à la source en publiant une liste d'URL quelque part et en demandant à tous vos lecteurs du podcast de charger chaque URL et de récolter les images. cette charge de leurs caches locales. (Cela ne peut fonctionner qu'après avoir restauré les pages HTML elles-mêmes, complétées par les <img ...>balises, ce que votre question semble impliquer que vous pourrez le faire.)

En gros, c’est une façon élégante de dire: «obtenez-le à partir des caches du navigateur Web de vos lecteurs». Vous avez de nombreux lecteurs et auditeurs de podcast, vous pouvez donc mobiliser efficacement un grand nombre de personnes susceptibles d'avoir consulté votre site Web récemment. Toutefois, il est difficile de rechercher et d'extraire manuellement des images dans les caches de différents navigateurs Web. Cette approche fonctionne mieux s'il est assez facile pour que de nombreuses personnes puissent l'essayer et y parvenir. Ainsi l'approche 304. Les lecteurs doivent simplement cliquer sur une série de liens et faire glisser les images chargées dans leur navigateur Web (ou cliquer avec le bouton droit de la souris et enregistrer sous, etc.), puis les envoyer par courrier électronique ou les télécharger sur un fichier. emplacement central que vous configurez, ou autre chose. Le principal inconvénient de cette approche est que les caches de navigateur Web ne remontent pas aussi loin dans le temps. Mais il suffit d’un lecteur qui a chargé un message de 2006 au cours des derniers jours pour sauver même une très vieille image. Avec un public assez nombreux, tout est possible.


52
+1 pour l'approche la plus créative. Pourrait réellement fonctionner puisque CH a beaucoup de lecteurs.

16
mis en œuvre ici? diovo.com/2009/12/…
Jeff Atwood

3
Je pense que vous pouvez explorer vos fichiers statiques pour les balises d’image et les copier dans une page d’images géante, au lieu de laisser tout le monde cliquer sur chaque lien. L'implémentation de diovo.com semble très impressionnante, espérons que cela fonctionnera pour vous.

2
WOW c'est une merde sorcière méchante je <3
Ahmad Alfy

4
En fait, vous devriez pouvoir récupérer des images en utilisant canvaset les envoyer chez vous par AJAX.
Tomáš Zato

65

Certains d'entre nous vous suivent avec un lecteur RSS et n'effacent pas les caches. J'ai des articles de blog qui semblent remonter à 2006. Aucune image, d'après ce que je peux voir, mais pourrait être meilleure que ce que vous faites maintenant.


+1 définitivement. Google Reader ne le fait pas, mais je parie qu'un ordinateur de bureau le ferait.

2
Vous pouvez également demander aux personnes de vérifier les caches de leur navigateur. Ceux qui visualisent le style rétro de Coding Horror pourraient avoir certaines des images en cache.

Les articles de blog de GReader datent de 2005, mais malheureusement, ils n’ont pas d’images, et ils ne me permettent pas de les exporter sous forme de séries de pages ... Je pourrais toutefois vous les envoyer par courrier électronique, Jeff. ..
Glen Solsberry

Oui, il y avait un "je vous enverrai ce que j'ai si vous le demandez." dans ma réponse aussi.

3
Trop de lecteurs RSS pensent que les images ne mourront jamais. Je sais que le mien fait :(

62

(1) Extrayez une liste des noms de fichiers de toutes les images manquantes à partir des sauvegardes HTML. Il vous restera quelque chose comme:

  • stay-puft-marshmallow-man.jpg
  • internet-properties-dialog.png
  • yahoo-homepage-small.png
  • password-show-animated.gif
  • tivo2.jpg
  • michael-abrash-graphics-program

(2) Effectuez une recherche d'images dans Google pour ces noms de fichiers. Il semble que BEAUCOUP d’entre eux ont été, euh, "reflétés" par d’autres blogueurs et sont prêts à être utilisés car ils portent le même nom de fichier .

(3) Vous pouvez le faire automatiquement si cela s'avère efficace pour, par exemple, plus de 10 images.


Ce serait très ironique s'il récupérait des images comme celle-ci.
Hashim

51

En accédant à Google Recherche d'images et en tapant, site:codinghorror.comvous pouvez au moins trouver les versions miniatures de toutes vos images. Non, cela n'aide pas forcément, mais cela vous donne un point de départ pour récupérer ces milliers d'images.

Images Codinghorror

Il semblerait que Google stocke une vignette plus grande dans certains cas:

Google contre Bing

Google est à gauche, Bing à droite.


2
Oui, dans le pire des cas, nous devrons augmenter la taille des vignettes de Google. J'entends que Bing stocke de plus grandes miniatures?
Jeff Atwood

Je ne sais pas; Je ne suis pas une sorte de gars. Je ne sais même pas s'ils font une recherche d'images comme Google. Je vais découvrir et mettre à jour ledit post.
George Stocker

18
Je ne sais pas si c'est toi. Mais Imageshack semble avoir beaucoup d'images de votre blog. profile.imageshack.us/user/codinghorror
Nick Berardi

Ils semblent avoir ce qui ressemble à 456 images en taille réelle. Cela pourrait être le meilleur pari pour tout récupérer. Peut-être qu'ils peuvent même vous fournir un dépotoir.
Nick Berardi

28
Commencez par utiliser les vignettes Google, puis utilisez tineye.com pour voir si quelqu'un héberge une copie.
sep332

40

Désolé d'entendre parler des blogs. Ne va pas donner des conférences. Mais j'ai trouvé ce qui semble être vos images sur Imageshack. Sont-ils vraiment à vous ou quelqu'un en a-t-il gardé une copie?

http://profile.imageshack.us/user/codinghorror

Ils semblent avoir ce qui ressemble à 456 images en taille réelle. Cela pourrait être le meilleur pari pour tout récupérer. Peut-être qu'ils peuvent même vous fournir un dépotoir.


37

Jeff, j'ai écrit quelque chose pour vous ici

En bref, ce que je vous propose de faire est:

  1. Configurez le serveur Web pour renvoyer 304 pour chaque demande d’image. 304 signifie que le fichier n'est pas modifié et que le navigateur va extraire le fichier de son cache s'il y est présent. (crédit: cette réponse SuperUser )

  2. Dans chaque page du site Web, ajoutez un petit script pour capturer les données d'image et les envoyer au serveur.

  3. Enregistrez les données d'image sur le serveur.

  4. Voila!

Vous pouvez obtenir les scripts à partir du lien donné.


La réponse du super utilisateur n'est pas liée.
Nathaniel

@Nathaniel: FIXED
alexanderpas

28

Essayez cette requête sur la Wayback Machine :

http://web.archive.org/web/*sa_re_im_/http://codinghorror.com/*

Cela vous donnera toutes les images de codinghorror.com archivées par archive.org. Cela renvoie 3878 images, dont certaines sont des doublons. Ce ne sera pas complet, mais un bon début non moins.

Pour les images restantes, vous pouvez utiliser les vignettes d'un cache de moteur de recherche, puis effectuer une recherche inversée à l'aide de celles-ci à l' adresse http://www.tineye.com/ . Vous lui donnez la vignette, qui vous donnera un aperçu et un pointeur sur les images très proches trouvées sur le Web.


1
retourne un 404 maintenant?
rogerdpack

J'ai créé un outil pour obtenir automatiquement une copie de sauvegarde de Wayback Machine: github.com/hartator/wayback-machine-downloader
Hartator

26

+1 sur la ddrecommandation si (1) le disque brut est disponible quelque part; et (2) les images étaient de simples fichiers. Ensuite, vous pouvez utiliser un outil de «découpage de données» médico-légal pour (par exemple) extraire toutes les plages crédibles qui semblent être des JPG / PNG / GIF. J'ai récupéré plus de 95% des photos sur un iPhone effacé de cette façon.

Les outils open source "premiers" et son successeur "scalpel" peuvent être utilisés à cet effet:

http://foremost.sourceforge.net/

http://www.digitalforensicssolutions.com/Scalpel/


2
Photorec peut également être utile une fois que vous obtenez des images DD.

avant tout est disponible via yum sur Fedora

26

Heureusement, les générations futures iront bien.

Même avec seulement une partie de ce gros rocher, les scientifiques / linguistes ont compris beaucoup de choses.

pierre de Rosette

Si quelques images manquent, laissez à quelqu'un le soin de comprendre dans quelques milliers d'années.

J'espère que vous rigolez un peu. :)


5
Ok, vous avez au moins un

21

Vous pouvez toujours essayer archive.org également. Utilisez la machine à remonter le chemin. Je l'ai utilisé pour récupérer des images de mes sites Web.


3
Ne semble pas avoir beaucoup de cache pour CodingHorror, au moins. Je vois des images pour blog.stackoverflow cependant.

J'ai reconstruit un site web en utilisant une machine de retour sur Internet une fois, mais j'ai essayé plusieurs fois depuis et il
n'archive

On dirait que ça remonte à 2004 ici web.archive.org/web * / codinghorror.com

Dieu merci, il n'y avait pas de fichier robots.txt, hein? :)
Synetech

14

Donc, dans le pire des cas, vous ne pouvez rien récupérer. Zut.

Essayez de récupérer les minis google et de les mettre dans TinEye , le moteur de recherche d'images inversées. Espérons que cela devrait contenir tous les doublons ou les reprises que les gens ont faits.


14

C'est un long plan, mais vous pourriez envisager:

  • Affichage de la liste exacte des images manquantes
  • externalisez le processus de récupération via le cache Internet de tous vos lecteurs.

Par exemple, voir la visionneuse de cache Nirsoft Mozilla :

texte alternatif
(source: nirsoft.net )

Il peut rapidement déterrer toute image "blog.stackoverflow.com" que l'on pourrait encore avoir au moyen d'une simple ligne de commande:

MozillaCacheView.exe -folder "C:\Documents and Settings\Administrator\Local Settings\Application Data\Mozilla\Firefox\Profiles\acf2c3u2.default\Cache" 
/copycache "http://blog.stackoverflow.com" "image" /CopyFilesFolder "c:\temp\blogso" /UseWebSiteDirStructure 0

Remarque: ils ont le même explorateur de cache pour Chrome .

texte alternatif
(source: nirsoft.net )

(Je dois avoir 15 jours de photos blog.stackoverflow.com)

Et Internet Explorer ou Opera .


Ensuite, mettez à jour la liste publique pour refléter ce que les lecteurs rapportent trouver dans leur cache.


12

Dans le passé, j'ai utilisé http://www.archive.org/ pour extraire les images en cache. C'est un peu hasardeux mais cela a fonctionné pour moi.
En outre, lorsque vous essayez de récupérer des photos que j'ai utilisées sur un ancien site, www.tineye.com est idéal lorsque je ne dispose que des vignettes et que j'ai besoin des images en taille réelle.

J'espère que ceci vous aide. Bonne chance.


J'ai parcouru archive.org il y a quelques minutes à la recherche d'images codinghorror.com et les quelques publications sur lesquelles j'ai cliqué n'étaient pas diffusées.
George Stocker

Archive.org publie les données plusieurs mois après leur première indexation.
Christian

10

Ce n'est probablement pas la solution la plus simple ni la plus complète, mais des services comme Evernote enregistrent généralement le texte et les images lorsqu'ils sont stockés dans l'application. Certains lecteurs utiles qui ont sauvegardé vos articles pourraient peut-être enregistrer les images et vous les renvoyer. ?


10

J'ai eu de grandes expériences avec archive.org . Même si vous ne pouvez pas extraire tous les articles de votre blog du site, ils conservent des instantanés périodiques:

texte alternatif

De cette façon, vous pouvez consulter chaque page et voir les articles de blog que vous avez publiés. Avec les noms de tous les messages, vous pouvez facilement les trouver dans le cache de Google si archive.org ne l’a pas. Archive tente de conserver les images, le cache de Google contient des images et je n'ai pas vidé mon cache récemment pour pouvoir vous aider avec les articles de blog les plus récents :)


J'ai essayé d'obtenir des données sur le site Web d'une entreprise avec laquelle je travaillais il y a quelque temps. C'était bon pour le texte, moins pour les images. Mais YMMV
ChrisF

Je crois que le cache Web de Google ne stocke pas les images.
Nathaniel


8

Une suggestion pour l'avenir: j'utilise Windows Live Writer pour bloguer et cela enregistre les copies locales des publications sur ma machine, en plus de les publier sur le blog.


De plus, utiliser Windows Live Writer n’est que bon sens.

7

Il y a environ cinq ans, l'incarnation d'un disque dur externe sur lequel je stockais toutes mes photos numériques a échoué. J'ai créé une image du disque dur à l'aide d' ddun outil rudimentaire permettant de récupérer tout ce qui ressemblait à une image JPEG. J'ai obtenu la plupart de mes photos avec ça.

La question est donc de savoir si vous pouvez obtenir une copie de l’image de disque de la machine virtuelle contenant les images.



7

Je suggère la combinaison de archive.org et une requête anonymizer comme [Tor] [2]. Je suggère d'utiliser anonymizer car de cette manière, chacune de vos requêtes aura une adresse IP et un emplacement aléatoires, ce qui vous évitera d'être banni par un archive.org (comme Google) pour un nombre anormalement élevé de requêtes.

Bonne chance, il y a beaucoup de joyaux dans ce blog.


Etant donné que Jeff veut faire un don à archive.org, abuser de l'anonymat n'est peut-être pas absolument inacceptable. Mais je veux toujours vous donner un coup de pied pour cela. : - |

6

La machine à remonter va en avoir. Le cache Google et les caches similaires en auront.

Une des choses les plus efficaces que vous puissiez faire est d’envoyer par courrier électronique les affiches originales pour demander de l’aide.

J'ai en fait des recommandations d'infrastructure, car tout est nettoyé après. Le problème fondamental n’est pas vraiment les sauvegardes, c’est le manque de réplication de site et d’audit. Si vous m'envoyez un e-mail avec le contenu du champ e-mail privé, plus tard, lorsque vous serez de retour sur vos pieds, j'aimerais discuter de la question avec vous.


6

Si vos images ont été stockées sur un service externe tel que Flickr ou un CDN (comme indiqué dans l'un de vos podcasts), vous pouvez toujours disposer des ressources images qui s'y trouvent.

Certaines images peuvent être trouvées en effectuant une recherche sur Google Images et en cliquant sur "Trouver des images similaires" . Il existe peut-être des copies sur d'autres sites.


5

archive.org cache parfois des images. Obtenez chaque URL manuellement (ou écrivez un court script) et interrogez-la comme suit:

string.Format ("GET / * / {0}", nextUri)

Bien sûr, cela va être très pénible à parcourir.

J'en ai peut-être dans la mémoire cache de mon navigateur. Si je le fais, je les hébergerai quelque part.


4

Si vous espérez essayer de supprimer les caches des utilisateurs, vous pouvez configurer le serveur pour qu'il réponde 304 Not Modifiedà toutes les requêtes conditionnelles-GET ('If-Modified-Since' ou 'If-None-Match'), auxquelles les navigateurs se servent revalider leur matériel mis en cache.

Si vos en-têtes de mise en cache initiaux sur du contenu statique, tels que des images, étaient assez libéraux (permettant de mettre des éléments en cache pendant des jours ou des mois), vous pourriez continuer à recevoir des demandes de revalidation pendant un certain temps. Définissez un cookie sur ces demandes et appelez ces utilisateurs à exécuter un script sur leur cache pour extraire les images qu'ils possèdent encore.

Attention, cependant: au moment où vous commencez à mettre en place un contenu textuel avec des ressources en ligne qui ne sont pas encore présentes, vous pouvez effacer ces versions mises en cache lorsque les revalidateurs atteignent 404.



4

Au risque de souligner l'évidence, essayez d'explorer les sauvegardes de votre propre ordinateur pour les images. Je sais que ma stratégie de sauvegarde est suffisamment aléatoire pour avoir plusieurs copies d'un grand nombre de fichiers traîner sur des lecteurs externes, des disques gravés et des fichiers zip / tar. Bonne chance!


4

J'ai réussi à récupérer ces fichiers de mon cache Safari sur Snow Leopard:

bad-code-offset-back.jpg
bad-code-offset-front.jpg
code-whitespace-invisible.png
code-whitespace-visible.png
coding-horror-official-logo-small.png
coding-horror-text.png
codinghorror-search-logo1.png
crucial-ssd-128gb-ct128m225.jpg
google-microformat-results-forum.png
google-microformat-results-review.png
kraken-cthulhu.jpg
mail.png
powered-by-crystaltech-web-hosting.png
ssd-vs-magnetic-graph.png

Si quelqu'un d'autre veut essayer, j'ai écrit un script Python pour l'extraire dans ~ / codinghorror / filename, que j'ai mis en ligne ici .

J'espère que ça aide.


3

Avez-vous eu la chance de voir si votre fournisseur d'hébergement disposait d'une sauvegarde (certaines versions plus anciennes)?


ça n'a pas l'air bien .. leur programme de sauvegarde n'a pas pu sauvegarder les fichiers du disque dur de la machine virtuelle, donc il n'y a pas de sauvegardes.
Jeff Atwood

2

Combien valent ces données pour vous? Si cela vaut une somme importante (en milliers de dollars), envisagez de demander à votre fournisseur d’hébergement le disque dur utilisé pour stocker les données de votre site Web (en cas de perte de données due à une défaillance matérielle). Vous pouvez ensuite prendre le lecteur vers ONTRACK ou un autre service de récupération de données pour voir ce que vous pouvez obtenir hors du lecteur. Cela pourrait être difficile à négocier en raison de la possibilité que des données non récupérées d’autres personnes soient également présentes sur le disque, mais si vous vous en souciez vraiment, vous pourrez probablement résoudre le problème.


le serveur était une VM autant que je sache.
Splattne

1
@splattne malgré tout, il y a une chance non-nulle qu'une grande partie des données puisse être récupérée.

Devrait être un service hautement spécialisé.

2

Je suis vraiment désolé d'entendre cela et je suis très ennuyé pour vous et le timing - je voulais une copie hors connexion de quelques-uns de vos messages et HTTrack sur l'ensemble de votre site, mais j'ai dû sortir (c'était il y a quelques semaines) et Je l'ai arrêté

Si l'hôte est en demi-descente - et par le fait même, je suppose que vous êtes un bon client ... je leur demanderais de vous envoyer les disques durs (car je suppose qu'ils devraient utiliser RAID) ou de récupérer eux-mêmes.

Bien que ce ne soit peut-être pas un processus rapide, je l'ai fait avec un hôte pour un client et j'ai pu récupérer des bases de données entières intactes ... mais rien n'a été écrasé).

Quoiqu'il arrive - Bonne chance à tous vos fans sur les sites SO!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.