2011-01-22 10 views
9

Ho bisogno di archiviare le pagine complete incluse le immagini collegate ecc. Sul mio server linux. Alla ricerca della soluzione migliore. C'è un modo per salvare tutte le risorse e ricollegarle tutte per funzionare nella stessa directory?Qual è il modo migliore per salvare una pagina Web completa su un server Linux?

Ho pensato di usare il ricciolo, ma non sono sicuro di come fare tutto questo. Inoltre, avrò forse bisogno di PHP-DOM?

C'è un modo per utilizzare firefox sul server e copiare i file temporanei dopo che l'indirizzo è stato caricato o simile?

Qualsiasi ingresso è benvenuto.

Edit:

Sembra come se wget è 'non' andare a lavorare come hanno bisogno di essere reso i file. Ho Firefox installato sul server, c'è un modo per caricare l'URL in Firefox e quindi prendere i file temporanei e cancellare i file temporanei dopo?

+0

Tutto il contenuto è statico o esiste anche un contenuto dinamico (PHP, JSP, ecc.)? – thkala

+0

Questo fa parte di un'app Web client, quindi potrebbe esserci qualcosa. Sarebbe meglio usare javascript o java o simili per inviare lo stato corrente del browser al server e poi fare ciò che è necessario. – Tomas

+1

Ci sono altre alternative in [ottenere un browser reso html + javascript] (https://stackoverflow.com/q/18720218) –

risposta

12

wget può fare che, ad esempio:

wget -r http://example.com/ 

Ciò rispecchiare l'intero sito example.com.

Alcune opzioni interessanti sono:

-Dexample.com: non seguono i link di altri domini
--html-extension: rinomina pagine con testo/html tipo di contenuto per .html

manuale: http://www.gnu.org/software/wget/manual/

+0

Ragazzi/ragazze, wget sta ottenendo il sito completo. Voglio dargli una singola pagina e ottenere il contenuto di quella pagina. Mi sto perdendo qualcosa qui? – Tomas

+0

usa '-l 1'; limiterà il mirroring a 1 livello – arnaud576875

+1

'wget -m' che è attualmente equivalente a' -r -N -l inf --no-remove-listing' – mb21

2
wget -r http://yoursite.com 

Dovrebbe essere sufficiente e prendere le immagini/i media. Ci sono molte opzioni che puoi nutrire.

Nota: credo che wget né alcun altro programma supporti il ​​download di immagini specificate tramite CSS, quindi potrebbe essere necessario farlo manualmente.

Qui possono essere alcuni argomenti utili: http://www.linuxjournal.com/content/downloading-entire-web-site-wget

+0

'wget' scarica qualsiasi immagine sia all'interno di HTML o CSS quando viene utilizzata con l'opzione' -p'. – SuB

5

Se tutto il contenuto nella pagina web era statica, si potrebbe ottenere intorno a questo problema con qualcosa di simile wget:

$ wget -r -l 10 -p http://my.web.page.com/ 

o qualche variazione dello stesso.

Poiché si dispone anche di pagine dinamiche, non è possibile archiviare in genere tale pagina Web utilizzando wget o qualsiasi semplice client HTTP. Un archivio appropriato deve incorporare il contenuto del database di back-end e qualsiasi script sul lato server. Ciò significa che l'unico modo per farlo correttamente è copiare i file di supporto sul lato server. Questo include almeno la radice del documento del server HTTP e qualsiasi file di database.

EDIT:

Come un work-around, è possibile modificare la vostra pagina web in modo che un utente opportunamente privilegiato potrebbe scaricare tutti i file lato server, così come una discarica in modalità testo del database di supporto (ad esempio, un dump SQL). È necessario prendere estremo per evitare di aprire buchi di sicurezza attraverso questo sistema di archiviazione.

Se si utilizza un provider di hosting virtuale, la maggior parte fornisce una sorta di interfaccia Web che consente il backup dell'intero sito. Se si utilizza un server effettivo, è possibile installare un gran numero di soluzioni di backup, incluse alcune basate sul Web per i siti ospitati.

4

Uso seguente comando:

wget -E -k -p http://yoursite.com 

Usa -E per regolare le estensioni. Utilizzare -k per convertire i collegamenti per caricare la pagina dal proprio archivio. Utilizzare -p per scaricare tutti gli oggetti all'interno della pagina.

Si noti che questo comando non scarica altre pagine con collegamenti ipertestuali nella pagina specificata. Significa che questo comando scarica solo oggetti necessari per caricare correttamente la pagina specificata.

Problemi correlati