În acest articol, vom examina un exemplu de creare a unui script php pentru încărcarea fișierelor pe server. Exemplul nostru simplu de încărcare a fișierelor va avea 2 fișiere: form (form.html), php script download (uploader.php).
Acum vom analiza totul în detaliu. În primul rând, analizați fișierul form.html formular:
După cum puteți vedea acest lucru este un cod HTML simplu, nu este nimic complex aici, numai dacă formularul este de a încărca fișiere pe server, acesta trebuie să fie specificat atributul enctype = „multipart / form-date“.
Formularul nostru va arata astfel:
Exemplu script de descărcare PHP fișier
Acum, să examinăm un fișier php care va încărca fișiere pe server. Mai jos este furnizat codul sursă:
Cum funcționează scriptul de descărcare a fișierelor PHP?
uploader.php un simplu fișier php script de încărcare de pe serverul care va descărca fișierele noastre într-un anumit director al site-ului, care este indicat string $ target_path = „uploaded_files /“;
Apoi, mutăm fișierul descărcat utilizând move_uploaded_file (), primul său argument este fișierul descărcat, al doilea este calea către dosarul site-ului la care vom încărca fișierul.
Ei bine, de la sine facem o ieșire elementară a mesajelor cu ajutorul lui dacă / altceva, deci a fost clar dacă fișierul nostru a fost încărcat sau nu.
Protecție împotriva atacurilor de hacking la descărcarea unui fișier
Vom lua în considerare nu numai protecția în termeni de hacking hacks, ci și alte probleme nedorite care apar atunci când descărcați fișiere pe server.
Fișierul shell PHP
Aceasta este prima problemă cu încărcarea fișierelor pe server. Când fișierul de descărcare are un shell php, și aceasta nu înseamnă că extensia sa va fi php. Poate arata ca imagine.jpg (.gif Png ...). Dar în interiorul arata astfel:
Unii meșteri pot executa, de asemenea, comenzi pe server cu ajutorul navigării prin url:
Pentru protecție, puteți implementa o verificare a fișierelor MIME. Vedeți exemplul de mai jos:
Această bucată de cod php verifică dacă fișierul GIF descărcat este un fișier. Inserați acest cod înainte de scriptul de descărcare a fișierului php. Firește, puteți schimba scanarea în jpg, png sau alte fișiere de care aveți nevoie.
Într-adevăr, această metodă de protecție poate fi eludată dacă trimiteți un antet de antet, cu instrucțiuni MIME. Pentru a face acest lucru, trebuie să verificați disponibilitatea