Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Kopiowanie plików Serwer1 -> Serwer2
Forum PHP.pl > Forum > PHP
Pyton_000
Witam smile.gif Mam mały problemik smile.gif Nigdzie nie moge znaleźć swojego problemu i ew. wskazówek do rozwiązania.

Piszę skrypt do kopiowania plików z jednego serwera na inny. Coś takiego jak mini instalator który wwala się na serwer a on dociąga sob
e pliki z repozytorium.
Mały fragment:

  1. <?php
  2. $uchwyt = @fopen ("./temp/file_info.conf", "r");
  3. while (($data = fgetcsv($uchwyt, 1000, ";")) !== FALSE) {
  4. // Struktura pliku CSV:
  5. // katalog;oryginalna_nazwa_pliku;docelowa_nazwa_pliku
  6. // dojdą tam jeszcze sumy MD5 itp. ale to nie ważne, uprościłem maksymalnie.
  7. $num = count($data);
  8. for ($i=0; $i < $num; $i++) {
  9. copy('http://' . $_POST['server'] . '/' . $data[0] . '/' . $data[1], 'test/' . $data[0] . '/' . $data[2]);
  10. // copy('http://serwer_jakis_tam.com.pl/katalog/plik_test.ph_', 'test/katalog/oryginal.php');
  11. }
  12. }
  13. fclose ($uchwyt);
  14. ?>


Tym kopiuje pliki...

Wszystko gra i śmiga ładnie ale...
po skopiowaniu plików na serwer docelowy prawa do plików ma user 1000 (apache), a nie tak jak powinno mieć 1114 (w moim przypadku multibb), i jest potem problem. Bo jesli nie nadamy od razu plikom CHMO 0777 to pliki nie będą chciały się usunąć bo właścicielem nie jestem (łacząc się przez FTP)

Może ktoś mi podpowie jak wybrnąć ?
Łączenie się z kntem FTP `anonymouse` nie pójdzie bo nie chce umieszczać repozytorium w anonymouse, a robienie oddzielnego konta FTP mija się z celem.

Zastanawia mnie pomysł zrobienie repozytorium na czymś podobnym jakie ma linux, tylko nie wiem bo nie obracam się w temacie a nie wiem jak tego szukać...
Przez fsockopen też nie bo nie wiem jak zrobić kopiowanie smile.gif Bo towieranie i file_get_content mija się z celem, bo tych plików jest za dużo i są troche większe (1-2MB) i małe (kilka KB)

Prosze o porade i naprowadzenie troche.
SirZooro
Spróbuj użyć chown.
Pyton_000
sprawdzałem już chown ale nie działa, bo tej funkcji może używać tylko root, a skrypt działa na użyszkodniku `apache`
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.