Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z przesyłaniem plików przez formularz
Forum PHP.pl > Forum > PHP
TomASS
Cześć,

Mam taki problem. W niektórych porach dnia u jednego z moich klientów występuje wzmożony ruch www w sieci. Jest to spowodowane np. cyklicznym (raz dziennie) ściąganiem oraz wysyłaniem raportów. Taki wzmożony ruch trwa około 1-1,5h. Nie mam na to wpływu. W tym czasie użytkownicy w tej samej sieci co 30min muszą ładować "duże" (ok 0,5-1Mb) pliki przez formularz:

  1. <form method="post" action="Action.php" enctype="multipart/form-data">
  2. <input type="file" name="pliczek"/><br/><br/>
  3. <input type="submit" id="submitBtn" value="importuj" class="userButton"/>
  4. </form>


po stronie php (plik Action.php) obsługuję to tak:
  1. fName = 'plikTestowy.xls';
  2. move_uploaded_file($_FILES['pliczek']['tmp_name'],"./upload/".$fName."_utf16");
  3. $path = "upload/".$fName."_utf16";;
  4. $path2 = "upload/".$fName."_utf8";
  5.  
  6. file_put_contents($path2, iconv('utf-16', 'utf-8', file_get_contents($path)));
  7. $rekordy= File($path2);

W momencie wzmożonego ruchu, po jakimś czasie (oko 30-40sekund) połączenie jest zrywane (po stronie klienta) z uwagi na nasycenie łącza. W pozostałych godzinach (poza "szczytem") wszystko działa jak należy.
Co można z takim faktem zrobić?
Mam takie pomysły:
- wykorzystanie CGI do ładowania plików (ale czy to coś da? przecież transfer będzie szedł po tym samym porcie 80 i też może zerwać połączenie)
- zmiana portu i ustawienie w sieci klienta priorytetu na port oraz IP mojego serwera

Czy mogę prosić Was o jakiś pomysł? Z góry dziękuje.
Hekko
A nie jest przypadkiem przekraczany limit max_execution_time ?
TomASS
nie jest - ustawione jest na 3600 sekund
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.