Setările serverului pentru a lucra cu cgi-script-uri

Setările serverului pentru lucrul cu scripturile CGI

Pentru a executa scripturi CGI, serverul Apache trebuie configurat corect. Mai întâi, serverul trebuie să fie compilat cu modulul de execuție a scriptului CGI (de obicei, activat în mod implicit) și, în al doilea rând, în fișierele de configurare a serverului, specificați opțiunile pentru a controla executarea scripturilor CGI.

În această secțiune, înțelegem că serverul este construit cu modulul CGI-script, așa că ne vom concentra atenția asupra setărilor serverului.

În versiunile Apache, începând de la 1.2.6, toate directivele de configurare a serverului pot fi incluse într-un fișier httpd.conf. Cu toate acestea, metoda tradițională de configurare care este moștenită de la un server NCSA este utilizarea a trei fișiere de configurare care răspund:
  • pentru configurarea serverului în sine (httpd.conf)
  • pentru configurarea resurselor site-ului Web (srm.conf)
  • pentru setarea controlului accesului la resurse (access.conf)

Pentru gazdele virtuale, toate directivele sunt plasate în fișierul httpd.conf în secțiunile de descriere a fiecăruia dintre gazdele virtuale.

Acest fișier definește scripturi pentru manipularea metodelor de acces non-standard (PUT sau DELETE), precum și descrieri de lucru cu scripturi CGI pentru gazde virtuale.

Pentru a specifica scriptul pentru procesarea unei metode nestandard, utilizați directiva Script:

Script PUT put_script.cgi

În loc de PUT, puteți specifica DELETE sau altă metodă de acces aici. Când accesați această metodă de acces, se numește un script, care este specificat ca al doilea argument.

Directivele pentru descrierea lucrării cu scripturi pentru gazde virtuale sunt plasate în interiorul containerului VirtualHost:

În acest container, puteți plasa toate directivele care sunt plasate pentru serverul principal în fișierele httpd.conf, srm.conf, access.conf.

Acest fișier definește configurația resurselor gestionate de server. Scripturile fac parte din aceste resurse. Directorul script este implicit la directiva ScriptAlias:

ScriptAlias ​​cgi-bin / usr / local / etc / httpd / cgi-bin

Acest director este definit URL sinonim (primul parametru al directivei), care este asociată cu calea reală la sistemul de fișiere al directorului de instalare calculator, în cazul în care este operat serverul (al doilea argument). De exemplu.

se referă la fișier:

În plus față de plasarea standard a scriptului, care este definită prin ScriptAlias, script-urile pot fi plasate într-un director arbitrar, în interiorul arborelui de directoare al serverului.

Arborele de directoare al serverului este definit de directiva DocumentRoot:

DocumentRoot / usr / kiae
sau
DocumentRoot kiae

În primul caz, este specificată calea completă de la rădăcina sistemului de fișiere, iar în al doilea, calea relativă, adică din directorul de acasă al serverului.

Pentru a rula scripturi, trebuie să adăugați un handler (handler) pentru a rula scripturi din directorul specificat:

În plus, cu o extensie de fișier, puteți asocia un tip MIME, prin care serverul recunoaște că este un script:

Aplicația AddType / x-www-form-urlencoded .pl

În acest caz, atribuim o extensie * .pl la scripturile CGI. Extensia implicită a scripturilor este extensia * .cgi în mod prestabilit.

Cea mai importantă directivă din acest fișier în ceea ce privește execuția scripturilor este Opțiuni. Se folosește în interiorul containerului:

În acest caz, execuția scripturilor CGI va fi permisă pentru directorul / usr / local / etc / httpd / htdocs.

Articole similare