Upload b. dużych plików |
Upload b. dużych plików |
14.12.2003, 06:08:52
Post
#1
|
|
Administrator serwera Grupa: Przyjaciele php.pl Postów: 909 Pomógł: 0 Dołączył: 12.08.2003 Skąd: /var/www/wroclaw.php Ostrzeżenie: (0%) |
W jaki sposób pobrać na serwer plik, który ma ~100 MB?
Dodam tylko, że MUSI się to odbywać przez stronę WWW! Niestety niema innej możliwości... Poradzicie coś? Ja zastanawiałem się nad uploadem przez php, ale jakie jest zużycie pamięci przy takiej operacji i w jaki sposób zmienić wielkość pobieranego pliku tylko dla jednego katalogu? Mam co prawda Apache2, ale nie chciałbym stosować VirtualHostów...i tak mam już ich troszkę... -------------------- Powrót do przeszłości :)
|
|
|
14.12.2003, 10:16:25
Post
#2
|
|
Grupa: Zarejestrowani Postów: 636 Pomógł: 0 Dołączył: 22.10.2003 Skąd: Katowice Ostrzeżenie: (0%) |
W php.ini masz domyslnie:
Kod upload_max_filesize = 2M
Wystarczy zmienic i po sprawie - to jest ogolnie ... A do jednego katalogu to musisz sie pobawic ifami... np: [php:1:299ed842f9]<?php $folder_docelowy = 'img/'; for($i=0; $i < count($_FILES['upload']['tmp_name'];$i++){ if($folder_docelowy == 'img/' && $_FILES['upload']['size'][$i] < 2000000){ move_uploaded_file($_FILES['upload']['tmp_name'][$i], $folder_docelowy.$_FILES['upload']['name'][$i]); }else{ echo 'za duzy'; } } ?>[/php:1:299ed842f9] |
|
|
14.12.2003, 11:39:40
Post
#3
|
|
Grupa: Zarejestrowani Postów: 127 Pomógł: 0 Dołączył: 19.11.2003 Skąd: Poznań Ostrzeżenie: (0%) |
Cytat Ja zastanawiałem się nad uploadem przez php, ale jakie jest zużycie pamięci przy takiej operacji i w jaki sposób zmienić wielkość pobieranego pliku tylko dla jednego katalogu?
Pewnie wpłynie Poczytaj o czymś co nazywa się WebDAV (http://www.webdav.org) to jest metoda na m.in. przesyłanie plików przez HTTP. W konkretnej implementacji może zainteresować Cię pewnie Slide z projektu Jakarta (http://jakarta.apache.org/slide/index.html) - możesz np. stworzyć aplet w Javie który działając na przeglądarce będzie wysyłał pliki na serwer. Pytanie tylko jak często taki upload będzie miał miejsce ? Jeśli masowo to poczytaj o slide jesli raz na jakiś czas to chyba upload w php wystarczy. Przyznam że nie testowałem tego na tak dużych plikach.. ale zobaczyć zawsze można. Napisz coś więcej jeśli zdecydujesz się na php i zrobisz testy. -------------------- Enceladus
Warsztat: bez warsztatu Aktua |
|
|
14.12.2003, 15:32:43
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) |
Hmm a czy nie lepiej postawić serwer FTP?? Jeżeli przerwiesz upload, to będziesz mogł bez problemu kontynuować, poza tym nie obciąża tak pamięci jak załadowanie dużego pliku. Nie wydaje mi się, żeby zwiększenia limitu pliku i tak przyjał taki rozmiar...
Ja zrobiłem sobie serwer FTP i ejstem zadowolony. Zawsze możesz z poziomu php sprawdzić,czy plik już jest. -------------------- |
|
|
14.12.2003, 18:05:58
Post
#5
|
|
Administrator serwera Grupa: Przyjaciele php.pl Postów: 909 Pomógł: 0 Dołączył: 12.08.2003 Skąd: /var/www/wroclaw.php Ostrzeżenie: (0%) |
Skrypt będzie działał tylko w sieci lokalnej...
Zastanawiam się jeszcze nad napisaniem klienta FTP w PHPGTK, ale puki co się jeszcze z tym wstrzymuje... Wiązało by się to z koniecznością instalowania interpretera PHPGTK na wszystkich kompach, które miałyby obsługiwać wspomnianą funkcję... P.S. WebDAV działa tylko (win32) dla Apache 1.3 (mod_dav) -------------------- Powrót do przeszłości :)
|
|
|
14.12.2003, 18:08:38
Post
#6
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) |
No to FTP... Nie wymaga żadnych dodatkowych rzeczy na innych kompach - a na każdym znajdziesie jakiś klient FTP. Polecam serwer Bulletproof FTP - mam i działa ładnie, nawet na starym kompie.
-------------------- |
|
|
14.12.2003, 18:35:08
Post
#7
|
|
Administrator serwera Grupa: Przyjaciele php.pl Postów: 909 Pomógł: 0 Dołączył: 12.08.2003 Skąd: /var/www/wroclaw.php Ostrzeżenie: (0%) |
Cytat Polecam serwer Bulletproof FTP - mam i działa ładnie, nawet na starym kompie.
Czyżbyś co 30 dni ponownie go instalował... to jest TRIAL... no chyba, że kupiłeś licencję... P.S. Ja korzystam z CesarFTP - bezpłatny, w miarę szybki i co najważniejsze działa... -------------------- Powrót do przeszłości :)
|
|
|
14.12.2003, 18:50:59
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) |
Cytat Czyżbyś co 30 dni ponownie go instalował... to jest TRIAL... no chyba, że kupiłeś licencję...
Ja go potrzebowałem przez pewien czas - teraz już nie... -------------------- |
|
|
14.12.2003, 19:16:26
Post
#9
|
|
Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) |
Jeśli masz dostęp do php w wersji CLI, możesz sam obsłuzyć pliki wysyłane przez POST. Skrypt CGI otrzymuje je w postaci MIME-owej na standardowe wejście, więc nie ma problemu z ich parsowaniem i obsługą.
enceladus: WebDAV to protokół zdalnego dostępu do plików przez HTTP. Do ściągania/wysyłania plików wystarczy sam goły protokół HTTP. Podobnie Java w tym miejscu jest przesadą. |
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 15:24 |