PHP INFO PHP. Dăm fișiere eficient cu PHP. Folosim modulul Web Server

Oricine software.Doriți să rulați pe serverul dvs. web are anumite cerințe pe care trebuie să le potrivi. De exemplu, WordPress necesită versiunea PHP 5.2.4 și mai mare. În funcție de server, puteți schimba unele setări PHP, altele, dimpotrivă, schimbarea este interzisă, cu toate acestea, puteți obține informații despre fișierul phpinfo. În acest manual, veți învăța cum să creați un fișier phpinfo și să aflați valorile și starea modulelor PHP. De asemenea, poate fi utilă pentru informații despre găzduirea contului dvs., cum ar fi max_execution_time, memorie_limit, post_max_size și celălalt.

Înainte de a începe acest ghid, veți avea nevoie de următoarele:

  • Accesați panoul de control al contului dvs. de găzduire sau FTP

Opțiunea 1 - Verificarea informațiilor PHP prin intermediul panoului de control al găzduirii

În Hostinger, informații despre PHP contul dvs. pot fi găsite în secțiune Avansat → Informații PHP. Aceasta este o funcție foarte convenabilă, deoarece nu va trebui să creați fișiere suplimentare pe găzduirea dvs.

După aceasta, vă mutați la pagină cu toate informațiile necesare despre versiunea dvs. PHP, module și valori. Pentru a căuta un anumit modul sau funcție, utilizați căutarea apăsând comanda rapidă de la tastatură. Ctrl + F..

Felicitări! Ați învățat cum să accesați informații despre PHP prin intermediul panoului de control Hostinger.

Opțiunea 2 - Verificarea informațiilor PHP prin crearea unui fișier phpinfo.php

Nu vă faceți griji dacă platforma dvs. de găzduire nu acceptă caracteristica prezentată în Opțiunea 1.. Același rezultat poate fi realizat prin crearea fișier special. În interiorul contului dvs. Gazduire. Fișierul va afișa, de asemenea, toate informațiile despre PHP-ul dvs. și va fi disponibil prin browser.

Pasul 2.1 - Crearea unui fișier phpinfo

Există mai multe modalități de a crea un fișier phpinfo. În acest ghid, vom folosi pentru aceasta. Cu toate acestea, același rezultat poate fi realizat prin crearea unui fișier pe dvs. computerul local și încărcarea în continuare a fișierului pe server prin intermediul serverului.

Introduceți panoul de control al găzduirii dvs. și deschideți Manager de fișiere . apasa butonul Fișier nou. Pentru a crea un fișier nou.

În primul câmp, specificați calea în care va fi creat un fișier nou. Apoi, în câmp Numele noului fișier introduce phpinfo.php.. În majoritatea cazurilor, puteți lăsa calea neschimbată. / public_html.. În acest caz, fișierul va fi creat în directorul rădăcină al site-ului dvs.

Pasul 2.2 - Fișier de editare

În această etapă aveți deja un fișier gol phpinfo.php. în catalog public_html.. Copiați următorul cod în fișier și faceți clic pe pictograma. SalvațiÎn colțul din stânga al ecranului.

Asta-i tot, ați creat cu succes un fișier PHP care afișează toți parametrii PHP. Așa cum am menționat mai devreme, același rezultat poate fi realizat cu:

  1. Utilizați oricare editor de text Și creați un fișier. phpinfo.php. Pe calculatorul tau.
  2. Adăugați următorul cod în fișier:
  1. Descărcați fișierul utilizând FTP în catalogul dvs. public_html..

Pasul 2.3 - Verificarea informațiilor despre PHP printr-un browser

Dacă totul a fost făcut corect, acum puteți accesa fișierul creat prin adăugarea la sfârșitul numelui dvs. de domeniu / P.hpinfo.php.. De exemplu, http: //vashdomen.ru/phpinfo.php.

Trebuie să vedeți un rezultat similar când deschideți această pagină printr-un browser:

Pe această pagină puteți vedea toate setările PHP.

Concluzie

A terminat acest ghid. Ați învățat cum să creați un fișier phpinfo și să verificați informațiile despre setările PHP. Aceasta informatie Este util dacă doriți să aflați setările de hosting sau de rulare software care necesită anumite module PHP.

(PHP 3, PHP 4, PHP 5)

phpinfo - afișează o mulțime de informații despre PHP.

Descriere

int phpinfo ()

Afișaje un numar mare de Informații despre starea actuală a PHP. Aceasta include informații despre opțiunile și extensiile de compilare PHP, versiunea PHP, informații despre server și mediul (dacă sunt compilate ca un modul), PHP Mediu, Versiune OS, Opțiuni de configurare a calea, masterat și locale, capace de licență HTTP și PHP. Deoarece fiecare sistem este configurat în propriul său mod, Phpinfo () este utilizat de obicei pentru a verifica configurația și disponibilitatea variabilelor predefinite în acest sistem. De asemenea, Phpinfo () este o utilitate importantă de depanare, deoarece conține toate datele EGPC (mediul, Post, Cookie, Server). Producția poate fi specializată prin transferarea unuia sau mai multor constant Valorile de biți rezumate în opțional ce parametru. De asemenea, puteți combina valorile constante sau biți corespunzătoare prin operație.

Tabelul 1. Phpinfo () Opțiuni
Nume (Constance) Actualizarea informațiilor Info_General1st Configuration, PHP.ini Plasament, Building / Build Data, server web, sistem, etc.Info_credits2 LANDSPHP 4.SM. De asemenea, phpcredits () .info_configuration4tecenți Valorile directivei locale și master PHP. Cm. De asemenea, modulele INI_GET () .Info_module8wed și setările corespunzătoare .Info_environment16Environment Informații variabile disponibile în $ _env .info_variables32 Afișează toate variabilele predefinite de la EGPC-uri (mediu, get, post, cookie, server) De asemenea, licență FAQ .info_all-1 atârnă deasupra celor specificate. Aceasta este valoarea implicită.

Notă: Părțile din informațiile afișate sunt deconectate la instalarea configurației Expose_PhP este dezactivată. Aceasta include siglele și împrumuturile PHP și Zend. Cm. de asemenea

Dacă aveți nevoie pentru a oferi fișierelor direct de către serverul web, dar cu folosind PHP. (De exemplu, pentru a colecta statistici de descărcare), cer pisică.

1. Utilizarea ReadFile ()

Metoda este bună ceea ce funcționează din cutie. Este necesar doar să scrieți fișierul dvs. trimiterea unui fișier (un exemplu ușor modificat din documentația oficială):

Function File_Force_Download ($ FILE) (iF_exists ($ File)) (// Resetați tamponul de ieșire PHP pentru a evita depășirea memoriei alocate scriptului // dacă acest lucru nu face ca fișierul să fie citit complet în memorie! Dacă (Ob_get_Level ( ) (Ob_end_clean ();) // forțarea browserului să arate fereastra de stocare a fișierelor antetului ("Descrierea conținutului: Transfer de fișier."); Antet (" tip de conținut: aplicație / octet-stream "); antet (" conținut-dispoziție: atașament; fișiername \u003d ". Numele de bază (fișierul $)); antet (" CONTEVE-transfer-encoding: binar ") ; Antet ("expiră: 0"); antet ("cache-control: must-reevaluat"); antet ("PRAGMA: public"); antet ("conținut-lungime:". Fișier (fișier $)); // Citiți fișierul și trimiteți-l la utilizatorul ReadFile (fișierul $); ieșire;))
În acest fel, puteți chiar să trimiteți fișiere mari.Deoarece PHP va citi fișierul și va da imediat utilizatorului în părți. Documentația afirmă în mod clar că readfile () nu ar trebui Creați probleme de memorie.

Caracteristici:

  • Fișierul este citit în funcția tampon intern Readfile (), dimensiunea căreia este de 8kb (mulțumiri 2fast4bbbit)

2. Citiți și trimiteți un fișier manual

Metoda folosește același Drupal la trimiterea de fișiere de la privat sistemul de fișiere (Fișierele nu sunt disponibile direct prin referință):

Function File_Force_Download ($ FILE) (iF_exists ($ File)) (// Resetați tamponul de ieșire PHP pentru a evita depășirea memoriei alocate scriptului // dacă acest lucru nu face ca fișierul să fie citit complet în memorie! Dacă (Ob_get_Level ( )) (Ob_end_clean ();) // forțarea browserului pentru a afișa fereastra de stocare a fișierelor antetului ("Descrierea conținutului: transfer de fișiere"); antet ("tip conținut: aplicație / octet-stream"); \u200b\u200bantet ("conținut -Dispoziție: atașament; Filename \u003d ". Nume de bază (fișier $)); antet (" codificare-transfer de conținut: binar "); antet (" cache-control: must-reevaluat "); antet (" PRAGMA: PUBLIC ") ; Antet ("conținut-lungime:". Fișier ($ fișier)); // am citit fișierul și îl trimitem utilizatorului dacă ($ fd \u003d fopen ($ fișier, rb)) (în timp ce (FD FD ) (Imprimați FREAD ($ FD, 1024);) FLOSE ($ FD);) Ieșire;))
Caracteristici:

  • Scriptul așteaptă ca întregul fișier să fie citit și dat utilizatorului.
  • Vă permite să salvați memoria serverului

3. Utilizați modulul Web Server

3a. Apache.
Modulul XsendFile vă permite să trimiteți Apache trimite un fișier utilizând un antet special. Există versiuni pe UNIX și Windows, sub versiunea 2.0. *, 2.2. * Și 2.4. *

În setările gazdă, trebuie să activați interceptarea titlului utilizând directiva:
Xsendfile pe.
De asemenea, puteți specifica lista albă a directorului, fișierele în care pot fi procesate. Important: Dacă aveți un server bazat pe Windows, calea ar trebui să includă o literă disc în majuscule.

Descrierea opțiunilor posibile pe site-ul dezvoltatorului: https://tn123.org/mod_xsendfile/

Un exemplu de trimitere a unui fișier:

Function File_Force_Download (File_exists (fișier $) (antet ("X-Tenderfile:" \u003d ". Numele de bază (fișierul $)); ieșire;))

3b. Nginx.
Nginx poate trimite fișiere din cutie printr-un antet special.

Pentru a lucra corect, este necesar să interziceți accesul direct la dosar fișier de configurare.:
Locație / protejată / (internă, rădăcină / unele / cale;)
Un exemplu de trimitere a unui fișier (fișier trebuie să fie în directorul / unele / calea / protejat):

Function File_Force_Download (File_exists ($ FILE)) (antet ("X-Accel-Redirect:". $ Fișier); antet ("tip de conținut: aplicație / octet-flux"); antet ("conținut -dispposition: atașament; nume de fișier \u003d ". Numele de bază (fișierul $)); ieșire;))
Mai multe informații despre pagina de documentație oficială

Caracteristici:

  • Scriptul este finalizat imediat după executarea tuturor instrucțiunilor.
  • Fișierul fizic este trimis de serverul web și nu PHP
  • Memorarea minimă de memorie și resursele serverului
  • Viteza maxima

Actualizați: Habrayuser Ilyaplot dă sfat utilEste mai bine să trimiteți nici o aplicație / octet-stream, ci un fișier de tip MIME real. De exemplu, va permite înlocuitorul browserului programe necesare În dialog pentru a salva fișierul.