Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Mirror strony,tworzenie katalogów,zapisywanie zdalnej grafik
Forum PHP.pl > Forum > PHP
depablo
Witam

Potrzebuję zrobić skrypt do robienia mirroru strony. To znaczy żeby cała struktura strony (wszystkie pliki html, cała grafika, katalogi) była przeniesiona "lustrzanie" na inny sewer, żeby została zachowana hierarchia katalogów.

W związku z tym mam kilka pytań.

W pliku html na pobieranej stronie znajduję sobie na przykład następującą ścieżkę:
$ciag = "gfx/gify/biuro/logo.gif".
Za pomocą komend dirname i basename, rozpoznaję strukturę katalogu i nazwę pliku. Teraz pytanie, w jaki sposób stworzyć to drzewko katalogów? Ja robię tak, rozbijam ten ciag za pomocą explode na tablice, i tworzę poszczególne katalogi. Może jest jakieś lepsze rozwiązanie. Możecie coś poradzić?

Zapisywanie zdalnych grafik:
Ja robię to tak:
[php:1:d8b808b266]<?php
ob_start();

include ("http://www.strona.pl/plik.gif");

$wszystko = ob_get_contents();
ob_end_clean();
$graf = fopen ("grafa.gif", "w");

fputs ($graf, "$wszystko");
fclose ($graf);
?>[/php:1:d8b808b266]

Skrytp działa, ale może jest jakieś inne rozwiązanie?

A tak wogóle czy istnieją jakieś gotowe skrypty do mirrorowania stron? Byłbym bardzo wdzięczny.

Pozdrawiam
Paweł
scanner
Jeśli to Twoja strona, to skopiuj ją poprzez FTP. Będzie szybciej. A jeśli nie Twoja.. hmm...

Pozatym poczytaj "man wget".
depablo
Właśnie nie moja, a poza tym nie jedna. To ma być skrytp uniwersalny. Myślałem też nad opcją sprawdzania modyfikacji plików (sprawdza jeśli plik oryginalny jest nowszy niż na mirrorze to ładuje od nowa), ale nie wiem jak pobrać datę modyfikacji pliku znajdującego się na mirrorze.

Pozdrawiam
Paweł
Jabol
a funkcja copy() (lub cp(), już nie pamiętam, miesza mi sie) działa na zdalnym serwerze czy nie??
scanner
Jak dla mnie sys=>wget tongue.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.