PHP 5 instalēšana 3. Instalēšana vecākās Windows OS versijās

Šī rokasgrāmatas sadaļa attiecas uz Windows 98 / Me un Windows NT / 2000 / XP / 2003. PHP nedarbosies 16 bitu platformās, piemēram, Windows 3.1, un dažreiz mēs Windows atbalstītās platformas saucam par Win32.

Komentēt:

Operētājsistēma Windows XP / 2003 vairs netiek atbalstīta PHP 5.5.0.

Komentēt:

Operētājsistēma Windows 98 / Me / NT4 / 2000 vairs netiek atbalstīta PHP 5.3.0.

Komentēt:

Windows 95 vairs netiek atbalstīts PHP 4.3.0.

Ja jums ir izstrādes vide, piemēram, Microsoft Visual Studio, varat arī izveidot PHP no avota.

Kad esat instalējis PHP operētājsistēmā Windows, varat arī lejupielādēt dažādus paplašinājumus, lai nodrošinātu papildu funkcionalitāti.

Manuāla uzstādīšanas rokasgrāmata

Šajā sadaļā ir instrukcijas, kā manuāli instalēt un konfigurēt PHP sistēmā Microsoft Windows.

PHP izplatīšanas pakotnes izvēle un lejupielāde

Lejupielādējiet PHP izplatīšanu kā ZIP arhīvu no. Pastāv vairākas dažādas zip pakotņu versijas - izvēlieties versiju, kas piemērota jūsu tīmekļa serverim:

PHP pakotnes struktūra un saturs

Izpakojiet zip arhīva saturu izvēlētajā direktorijā, piemēram, C: \\ PHP \\. No arhīva izvilkto mapju un failu struktūra izskatīsies šādi:

1. piemērs PHP 5 pakotnes struktūra

c: \\ php | + - dev | | | | -php5ts.lib - php5.lib versija bez vairāku pavedienu atbalsta | + - ext - DLL moduļi PHP | | | | -php_bz2.dll | | | | -php_cpdf.dll | | | | -... | + - ekstras - tukšas | + - bumbieris ir PIRMA sākotnējā kopija | | | -go-pear.bat - PEAR instalācijas skripts | | -... | | -php-cgi.exe - izpildāms CGI | | -php-win.exe - izpilda skriptus bez atvērtas konsoles | | -php.exe - izpildāms PHP komandrindas (CLI) | -... | | -php.ini-development - noklusējuma php.ini iestatījumi | | -php.ini-production - ieteicamie php.ini iestatījumi | | -php5apache2_2.dll - tikai vairāku pavedienu versijā | | -php5apache2_2_filter.dll - pieejams tikai vairāku pavedienu versijā | | -... | | -php5ts.dll - kodols PHP DLL (php5.dll versijā bez daudzsavienojuma atbalsta) | | -...

Zemāk ir saraksts ar moduļiem un izpildāmajiem failiem, kas iekļauti PHP zip izplatījumā:

    php-cgi.exe ir izpildāms CGI fails, ko var izmantot, palaižot PHP IIS, izmantojot CGI vai FastCGI.

    php-win.exe ir izpildāms PHP fails PHP skriptu izpildei, neizmantojot konsoli (piemēram, PHP lietojumprogrammas, izmantojot Windows GUI).

    php.exe ir izpildāms PHP fails PHP skriptu izpildīšanai konsolē (CLI).

    php5apache2_2.dll - Apache 2.2.X modulis.

    php5apache2_2_filter.dll - Apache 2.2.X filtrs.

Php.ini faila maiņa

Kad php pakotnes saturs ir izvilkts, tajā pašā mapē izveidojiet php.ini-production kopiju ar nosaukumu php.ini. Ja nepieciešams, ir iespējams arī ievietot php.ini jebkurā citā vietā pēc jūsu izvēles, taču tam būs nepieciešama papildu konfigurācija, kas ir aprakstīta sadaļā PHP konfigurācija.

Php.ini failā ir PHP izpildes kārtulas un instrukcijas darbam ar vidi, kurā tas darbojas. Zemāk ir daži no php.ini iestatījumiem, kas var uzlabot PHP veiktspēju sistēmā Windows. Daži no tiem nav obligāti. Ir daudz citu direktīvu, kas var būt noderīgas jūsu vidē. Plašāku informāciju skatiet php.ini direktīvu sarakstā.

Obligātās direktīvas:

    paplašinājuma_dir \u003d <путь к директории модулей> - extension_dir norāda direktoriju, kurā atrodas PHP moduļi. Ceļš var būt absolūts (piemēram, "C: \\ PHP \\ ext") vai relatīvs (piemēram, ". \\ Ext"). Php.ini izmantotajiem moduļiem jāatrodas paplašinājumā_dir.

    pagarinājums \u003d xxxxx.dll - Katram spraudnim jānorāda direktīva "extension \u003d". Ar šo direktīvu apzīmētie paplašinājuma_dir moduļi tiek ielādēti PHP palaišanas laikā.

    log_errors \u003d Ieslēgts - PHP ir kļūdu reģistrēšanas mehānisms, ko var izmantot, lai kļūdas saglabātu failā vai nosūtītu pakalpojumam (piemēram, syslog). Mehānisms izmanto arī error_log direktīvas vērtību. Kad PHP izpilda IIS, log_errors ir jāiespējo ar pareizu error_log.

    error_log \u003d <пусть к файлу лога ошибок> - error_log ir nepieciešams, lai norādītu absolūto vai relatīvo ceļu uz failu, kurā reģistrētas PHP kļūdas. Šim failam jābūt rakstāmam tīmekļa serverī. Visbiežāk šī faila atrašanās vietas ir dažādi pagaidu TEMP direktoriji, piemēram, "C: \\ inetpub \\ temp \\ php-errors.log".

    cgi.force_redirect \u003d 0 - Šī direktīva ir nepieciešama izpildei saskaņā ar IIS. Tas ir direktoriju aizsardzības mehānisms, kas nepieciešams daudziem citiem tīmekļa serveriem. Tomēr, iespējojot to IIS, sistēmā Windows tiks radītas PHP kļūdas.

    cgi.fix_pathinfo \u003d 1 - Nodrošina PATH_INFO atbalstu saskaņā ar CGI specifikāciju. IIS FastCGI izmanto šo iestatījumu.

    fastcgi.impersonate \u003d 1 - FastCGI saskaņā ar IIS atbalsta spēju identificēt zvanītāja drošības marķierus. Tas ļauj IIS noteikt drošības kontekstu, saskaņā ar kuru tiek veikts pieprasījums.

    fastcgi.logging \u003d 0 - IIS ir jāatspējo FastCGI reģistrēšana. Ja ierakstīšana ir iespējota, FastCGI atzīst visus jebkuras klases ziņojumus par kļūdām, kuru dēļ IIS mest HTTP 500 izņēmumu.

Izvēles direktīvas

    maks. izpildes laiks \u003d ## - Šī direktīva nosaka maksimālo izpildes laiku jebkuram PHP skriptam. Noklusējums ir 30 sekundes. Palieliniet šo vērtību, ja jūsu PHP lietojumprogrammai jādarbojas ilgāk.

    atmiņas_limits \u003d ### M - PHP procesam pieejamais atmiņas apjoms MB. Noklusējums ir 128, kas ir pietiekami lielākajai daļai PHP lietojumprogrammu. Dažām sarežģītām lietojumprogrammām var būt nepieciešams vairāk atmiņas.

    display_errors \u003d Izslēgts - Direktīva nosaka, kuras kļūdas būtu jāatgriež tīmekļa serverim turpmākai reģistrēšanai. Ja iestatīts uz “Ieslēgts”, PHP ziņo par visu veidu kļūdām, kas norādītas direktīvā error_reporting. Drošības apsvērumu dēļ ražošanas serveros ieteicams to iestatīt uz “Izslēgts”, lai novērstu kļūdu izvades pārsūtīšanu galalietotājam, jo \u200b\u200btajos var būt informācija, kas varētu apdraudēt lietojumprogrammas drošību.

    open_basedir \u003d <пути к директориям, разделенные точкой с запятой> piemēram, openbasedir \u003d "C: \\ inetpub \\ wwwroot; C: \\ inetpub \\ temp". Šī direktīva nosaka ceļu uz direktorijiem, kuros PHP darbības ir atļautas failu sistēmā. Jebkura darbība ar failiem un direktorijiem ārpus norādītajiem ceļiem radīs kļūdu. Šī direktīva ir īpaši noderīga, lai novērstu piekļuvi instalētajai PHP koplietošanas mitināšanas vidēs, lai PHP skripti nevarētu piekļūt failiem, kas atrodas ārpus vietnes saknes direktorija.

    upload_max_filesize \u003d ### M un post_max_size \u003d ### M - attiecīgi maksimālais atļautais augšupielādētā faila un nosūtīto datu lielums. Lai PHP lietojumprogrammas apstrādātu lielus lejupielādējamus failus, piemēram, attēlus vai video failus, šo direktīvu vērtības ir jāpalielina.

Pēc PHP instalēšanas savā sistēmā nākamais solis ir izvēlēties tīmekļa serveri un pēc tam to konfigurēt darbam ar PHP. Šī raksta satura rādītājā atlasiet konkrētu tīmekļa serveri.

Microsoft IIS 5.1 un IIS 6.0

Šajā sadaļā ir instrukcijas, kā manuāli iestatīt interneta informācijas pakalpojumus (IIS) 5.1 un IIS 6.0 darbam ar PHP operētājsistēmā Microsoft Windows XP un Windows Server 2003. Norādījumus par IIS 7.0 un jaunāku versiju iestatīšanu operētājsistēmās Windows Vista, Windows Server 2008, Windows 7 un Windows Server 2008 R2 attiecas uz Microsoft IIS 7.0 un jaunākām versijām.

IIS konfigurēšana PHP pieprasījumu apstrādei

Lejupielādējiet un instalējiet PHP saskaņā ar instrukcijām, kas aprakstītas manuālās instalēšanas darbībās

Komentēt:

Izmantojot IIS, ieteicams veidot PHP bez pavedieniem. Nekontrolējamas konstrukcijas ir pieejamas vietnē

Konfigurējiet CGI un FastCGI specifiskos iestatījumus php.ini failā, kā parādīts zemāk:

2. piemērs: CGI un FastCGI iestatījumi php.ini

FastCGI atbalsta iespējošana IIS

Instalējot IIS, pēc noklusējuma FastCGI modulis ir atspējots. Metodes, kā to iespējot, atšķiras atkarībā no izmantotās Windows versijas.

Lai iespējotu FastCGI atbalstu operētājsistēmās Windows Vista SP1 un Windows 7:

    Izvēlnē "Sākt" atlasiet "Palaist", parādītajā logā no tastatūras ievadiet "optionalfeatures.exe" un noklikšķiniet uz "Labi";

    Atvērtajā logā "Windows komponenti" atveriet mapi "Internet Information Services", "Internet Services", "Application Development Components" un atzīmējiet izvēles rūtiņu blakus "CGI";

    Noklikšķiniet uz Labi un pagaidiet, līdz instalēšanas process būs pabeigts.


Lai iespējotu FastCGI atbalstu operētājsistēmās Windows Server 2008 un Windows Server 2008 R2:

    Sistēmā Windows atveriet izvēlni Sākt, atlasiet “Palaist”, tastatūrā ierakstiet “CompMgmtLauncher” un noklikšķiniet uz “Labi”;

    Ja cilnē "Lomas" loma "Web Server (IIS)" nav norādīta, pievienojiet to, atlasot "Pievienot lomas";

    Ja ir loma "Tīmekļa serveris (IIS)", atlasiet "Atlasīt lomu pakalpojumu" un atzīmējiet izvēles rūtiņu blakus "CGI" grupā "Lietojumprogrammu izstrādes komponenti";


IIS konfigurēšana PHP pieprasījumu apstrādei

Lejupielādējiet un instalējiet PHP atbilstoši instrukcijām instalācijas aprakstā

Komentēt:

Mainiet CGI un FastCGI iestatījumus php.ini failā, kā parādīts zemāk:

8. piemērs: CGI un FastCGI iestatījumi php.ini

fastcgi.impersonate \u003d 1 fastcgi.logging \u003d 0 cgi.fix_pathinfo \u003d 1 cgi.force_redirect \u003d 0

Konfigurējiet PHP IIS apstrādātāju, izmantojot IIS pārvaldības saskarni vai komandrindu.

IIS pārvaldības saskarnes izmantošana, lai izveidotu PHP apdarinātāju

Šīs darbības ļaus izveidot IIS apstrādātāju PHP IIS pārvaldības saskarnē:



Komandrindas izmantošana, lai izveidotu PHP apstrādātāja kartēšanu

Izmantojiet tālāk norādītās komandas, lai izveidotu IIS FastCGI procesu kopu, kas PHP pieprasījumiem izmantos izpildāmo failu php-cgi.exe. Nomainiet parametra fullPath vērtību ar absolūto ceļu uz failu php-cgi.exe.

9. piemērs. IIS FastCGI procesu kopas izveide

% windir% \\ system32 \\ inetsrv \\ appcmd set config /section:system.webServer/fastCGI ^ / +

IIS konfigurēšana rīkoties ar konkrētiem PHP pieprasījumiem no komandrindas ir parādīta zemāk. Nomainiet parametra scriptProcessor vērtību ar absolūto ceļu uz failu php-cgi.exe.

10. piemērs. PHP pieprasījumu apstrādātāja kartēšanas izveide

% windir% \\ system32 \\ inetsrv \\ appcmd set config /section:system.webServer/handlers ^ / +

Šī komanda izveido apstrādātāja kartēšanu IIS * .php failiem, kurus ģenerē un apstrādā FastCGI modulis.

Komentēt:

Šis solis pabeidz instalēšanu un konfigurēšanu. Šīs instrukcijas nav obligātas, taču ir ļoti ieteicamas, lai sasniegtu optimālu PHP funkcionalitāti un veiktspēju IIS.

Failu sistēmas skats un piekļuve

Izmantojot IIS, ieteicams PHP iespējot FastCGI skatu. To kontrolē php.ini failā esošā direktīva fastcgi.impersonate. Kad ir iespējota uzdošanās, PHP veiks visas failu sistēmas darbības kontā, kas tika norādīts IIS autentifikācijas laikā. Tas nodrošina, ka ar vienotu PHP procesu visām IIS vietnēm šo vietņu PHP skriptiem nebūs piekļuves viens otra failiem, kamēr IIS katrai vietnei izmanto atšķirīgus kontus.

Piemēram, noklusējuma IIS 7 iestatījumos anonīma autentifikācija ir iespējota standarta IUSR lietotājam. Tas nozīmē, ka, dodot IIS atļauju izpildīt PHP skriptu, jums arī jāpiešķir IUSR konta lasīšanas atļaujas šim skriptam. Ja PHP lietojumprogrammai ir nepieciešams rakstīt uz dažiem failiem vai mapēm, IUSR kontam tām jāpiešķir rakstīšanas atļaujas.

Lai izlemtu, kurš lietotājs tiek izmantots autentifikācijai IIS 7, varat izmantot šīs komandas. Nomainiet “Noklusējuma vietne” ar tās IIS vietnes nosaukumu, ar kuru strādājat. Izvades XML konfigurācijā skatiet atribūtu userName.

11. piemērs Konta noteikšana, ko IIS izmanto anonīmai autentifikācijai

% windir% \\ system32 \\ inetsrv \\ appcmd.exe saraksta konfigurācija "Noklusējuma vietne" ^ / section: anonymousAuthentication

Komentēt:

Ja atribūta userName trūkst elementā anonymousAuthentication vai tas ir iestatīts uz tukšu virkni, tad šīs vietnes lietojumprogrammu kopas identitāte tiek izmantota kā anonīma.

Lai mainītu piekļuves iestatījumus failiem vai mapēm, izmantojiet lietotāja saskarni programmā Windows Explorer vai komandu icacls.

12. piemērs. Failu atļauju konfigurēšana

icacls C: \\ inetpub \\ wwwroot \\ upload / piešķirt IUSR: (OI) (CI) (M)

Nosakot index.php kā noklusējuma dokumentu IIS

Pēc noklusējuma IIS nenosaka noklusējuma dokumenta nosaukumu, lai apstrādātu HTTP pieprasījumus. PHP lietojumprogrammās pēc noklusējuma parasti tiek izmantots index.php dokuments. Lai pievienotu index.php noklusējuma IIS dokumentu lapai, izmantojiet šādu komandu:

13. piemērs. Index.php iestatīšana kā noklusējuma dokuments IIS

% windir% \\ system32 \\ inetsrv \\ appcmd.exe iestatiet config ^ sadaļu: system.webServer / defaultDocument / + "faili". ^ / saistīt: apphost

FastCGI un PHP konfigurācija ar procesa atjaunošanu

IIS FastCGI iestatījumu konfigurēšana PHP procesu pārstrādei, izmantojot komandas, ir parādīta zemāk. Opcija FastCGI instanceMaxRequests nosaka maksimālo pieprasījumu skaitu, ko var apstrādāt viens process php-cgi.exe, līdz IIS sāk tos atspējot. PHP vides mainīgais PHP_FCGI_MAX_REQUESTS nosaka, cik pieprasījumu apstrādās viens process php-cgi.exe, līdz tas sāks tos dzēst. Protams, FastCGI instanceMaxRequests iestatītā vērtība ir mazāka vai vienāda ar PHP_FCGI_MAX_REQUESTS.

14. piemērs FastCGI un PHP atkārtotas izveides konfigurēšana

% windir% \\ system32 \\ inetsrv \\ appcmd.exe set config sadaļa: system.webServer / fastCgi ^ /.instanceMaxRequests:10000% windir% \\ system32 \\ inetsrv \\ appcmd.exe set config sadaļa: system.webServer / fastCgi ^ / + ". environmentVariables. ^"

FastCGI taimauta iestatīšana

FastCGI taimauta parametra palielināšana tiek veikta, ja ir ilgstošs PHP skripts. Divi parametri kontrolē taimautu, tie ir: activityTimeout un requestTimeout. Izmantojiet tālāk norādītās komandas, lai mainītu taimauta iestatījumus. Protams, parametra fullPath vērtība ir jāaizstāj ar pilnu ceļu uz failu php-cgi.exe.

15. piemērs. FastCGI taimauta iestatījumu konfigurēšana

% windir% \\ system32 \\ inetsrv \\ appcmd.exe set config sadaļa: system.webServer / fastCgi ^ /.activityTimeout:"90 "/ comm: apphost% windir% \\ system32 \\ inetsrv \\ appcmd.exe set config sadaļa: sistēma .webServer / fastCgi ^ /.requestTimeout:"90 "/ saistīt: apphost

Mainīt faila php.ini atrašanās vietu

Ir divi veidi, kā konfigurēt PHP darbam ar Apache 1.3.x operētājsistēmā Windows. Pirmais ir izmantot bināro CGI (php.exe PHP 4 un php-cgi.exe PHP 5), otrais ir Apache Module DLL. Abos gadījumos jums ir jārediģē httpd.conf, lai konfigurētu Apache darbam ar PHP un restartētu serveri.

Pašlaik SAPI modulis operētājsistēmā Windows ir stabilāks, tāpēc iesakām to izmantot CGI vietā, jo tas ir pārredzamāks un drošāks.

Lai gan PHP konfigurēšanai Apache ir vairākas iespējas, iesācējiem tās ir diezgan vienkāršas. Lūdzu, skatiet Apache dokumentāciju, lai saņemtu papildu konfigurācijas instrukcijas.

Pēc konfigurācijas faila modificēšanas neaizmirstiet restartēt serveri. Piemēram, pēc komandām NET STOP PIEEJA un NET SĀKT PIEEJUja Apache darbojas kā Windows pakalpojums vai izmanto regulārus saīsnes.

Komentēt:

Instalējiet PHP kā Apache moduli

Apache httpd.conf failam jāpievieno šādas rindas:

17. piemērs PHP kā Apache 1.3.x modulis

Tas pieņem, ka PHP ir instalēts c: \\ php. Mainiet ceļu, ja tā nav.

# Pievienojiet sadaļas LoadModule beigām # Neaizmirstiet nokopēt šo failu no sapi direktorija! LoadModule php4_module "C: /php/php4apache.dll" # Pievienojiet sadaļas AddModule beigām AddModule mod_php4.c

# Pievienojiet sadaļas LoadModule beigām LoadModule php5_module "C: /php/php5apache.dll" # Pievienojiet sadaļas AddModule beigām AddModule mod_php5.c

Abām versijām:

# Pievienojiet šo rindu iekšpusē nosacītā lencīte AddType lietojumprogramma / x-httpd-php .php # Sintaksē iezīmētiem .phps failiem pievienojiet arī AddType lietojumprogrammu / x-httpd-php-source .phps

Instalēšana kā CGI binārs fails

Ja PHP tiek izpakots C: \\ php \\, kā aprakstīts sadaļā Manuālās instalēšanas darbības, Apache konfigurācijas failam jāpievieno šādas rindas:

18. piemērs PHP un Apache 1.3.x kā CGI

Ņemiet vērā, ka iepriekšminētā saraksta otrā rindiņa jau atrodas vietnē httpd.conf, taču tā tiek komentēta. Neaizmirstiet arī aizstāt c: / php / ar savu faktisko PHP ceļu.

Uzmanību

"CGI Security"

Instalējot PHP kā CGI, sintakses izcelšanai PHP avotos nav tik ērtu iespēju kā instalējot kā moduli. Ja vēlaties to izmantot, jums jāizmanto funkcija highlight_file ()... Lai to izdarītu, vienkārši izveidojiet PHP skriptu ar šādu kodu: .

Apache 2.x operētājsistēmā Microsoft Windows

Šajā sadaļā ir sniegti norādījumi par PHP instalēšanu Apache 2.x Microsoft Windows sistēmās.

Komentēt: Apache 2.2 atbalsts

Apache 2.2 lietotājiem jāņem vērā, ka Apache 2.2 DLL sauc par php5apache2_2.dll, nevis php5apache2.dll, un tas ir pieejams tikai PHP 5.2.0 un jaunākām versijām.

Mēs ļoti iesakām izlasīt »Apache dokumentāciju, lai gūtu pamata izpratni par Apache 2.x serveri. Pirms šīs palīdzības lasīšanas apskatiet arī Windows ieteikumus Apache 2.x.

Apache 2.x ir paredzēts darbam ar Windows servera versijām, piemēram, Windows NT 4.0, Windows 2000, Windows XP vai Windows 7. Lai gan Apache 2.x var izmantot operētājsistēmā Windows 9x, šīs platformas netiek pilnībā atbalstītas, un dažas funkcijas nedarbosies pareizi. Šo situāciju nav paredzēts novērst.

Lejupielādējiet jaunāko versiju »Apache 2.x un pareizo PHP versiju. Izpildiet Soli pa solim instalēšanas rokasgrāmatu un atgriezieties, lai turpinātu integrēt PHP un Apache.

Ir trīs veidi, kā instalēt PHP Apache operētājsistēmā Windows. Jūs varat palaist PHP kā apdarinātāju, piemēram, CGI, vai zem FastCGI.

Komentēt: Atcerieties, ka, norādot ceļus Windows Apache konfigurācijas failos, visi pretējie slīpsvītras, piemēram, c: \\ directory \\ file.ext, ir jāmaina, lai pārsūtītu slīpsvītras: c: /directory/file.ext. Ceļiem ar direktorijiem var būt nepieciešama arī beigu slīpsvītra.

Instalējiet PHP kā apstrādātāju Apache

Lai ielādētu Apache 2.x PHP moduli, Apache konfigurācijas failā httpd.conf jāpievieno šādas rindas:

19. piemērs. PHP kā Apache 2.x apdarinātājs

# LoadModule php5_module "c: /php/php5apache2.dll" AddHandler lietojumprogramma / x-httpd-php .php # konfigurēt ceļu uz php.ini PHPIniDir "C: / php"

Komentēt: Neaizmirstiet iepriekš minētajā piemērā iekļaut faktisko ceļu uz PHP direktoriju, nevis C: / php /. Pārliecinieties, vai direktīvā LoadModule tiek izmantota vai nu php5apache2.dll, vai php5apache2_2.dll, un pārliecinieties, vai norādītais fails faktiski atrodas direktīvā norādītajā ceļā.

Iepriekš minētā konfigurācija ļaus PHP analizēt jebkuru failu, kuram ir .php paplašinājums, pat ja ir citi paplašinājumi. Piemēram, failu ar nosaukumu example.php.txt darbinās PHP dzinējs. Lai nodrošinātu, ka tikai faili, kas ir pagarinājums .php tiks palaists, izmantojiet šādu konfigurāciju:

SetHandler lietojumprogramma / x-httpd-php

Darbojas PHP kā CGI

Lai iegūtu pilnīgāku izpratni par CGI palaišanu Apache, skatiet Apache CGI dokumentāciju.

Lai palaistu PHP kā CGI, php-cgi faili jāievieto direktorijā, kas apzīmēts kā CGI katalogs, izmantojot ScriptAlilas direktīvu.

Pēc tam jums jāpievieno rindiņa #! PHP failos, kas norāda uz izpildāmā PHP atrašanās vietu.

20. piemērs PHP kā CGI zem Apache 2.x

#! C: /php/php.exe

Uzmanību

Izmantojot CGI iestatījumu, jūsu serveris ir pakļauts vairākām iespējamām ievainojamībām. Lūdzu, skatiet sadaļu "CGI drošība", lai uzzinātu, kā jūs varat pasargāt sevi no šādiem uzbrukumiem.

Palaist PHP zem FastCGI

PHP palaišanai FastCGI sistēmā ir vairākas priekšrocības, salīdzinot ar tā darbību kā CGI. Uzstādīšana ir diezgan vienkārša:

NSAPI iestatīšana Sun, iPlanet un Netscape serveros

Lai instalētu PHP ar NSAPI, rīkojieties šādi:

  • Kopējiet php4ts.dll savā sistēmas saknē (direktorijā, kurā instalējāt sistēmu Windows)
  • No komandrindas izveidojiet failu asociāciju. Ierakstiet šādas divas rindas:

    assoc .php \u003d PHPScript ftype PHPScript \u003d c: \\ php \\ php.exe% 1% *

  • Netscape Enterprise Administration Server izveidojiet jaunu mīmikas tipu (Kategorija: tips, Satura tips: magnus-internal / x-httpd-php, Faila sufikss: php).
  • Rediģējiet magnus.conf (serveriem\u003e \u003d 6) vai obj.conf (serveriem< 6) and add the following: You should place the lines after mīmu veidi init.

    Init fn \u003d "load-moduļi" funcs \u003d "php4_init, php4_execute, php4_auth_trans" shlib \u003d "c: /php/sapi/php4nsapi.dll" Init fn \u003d "php4_init" LateInit \u003d "jā" errorString \u003d "Neizdevās inicializēt PHP! "

    (PHP\u003e \u003d 4.3.3) php_ini parametrs nav obligāts, taču ar to jūs varat ievietot savu php.ini savā tīmekļa servera konfigurācijas direktorijā.

    Konfigurējiet noklusējuma objektu obj.conf (virtuālo serveru klasēm viņu vserver.obj.conf): section, place this line necessarily after all "ObjectType" and before all "AddLog" lines:

    Service fn="php4_execute" type="magnus-internal/x-httpd-php"

    (PHP >= 4.3.3) As additional parameters you can add some special php.ini -values, for example you can set a docroot="/path/to/docroot" specific to the context php4_execute is called. For boolean ini-keys please use 0/1 as value, not "On","Off",... (this will not work correctly), e.g. zlib.output_compression=1 instead of zlib.output_compression="On"

    This is only needed if you want to configure a directory that only consists of PHP scripts (same like a cgi-bin directory):

    ObjectType fn="force-type" type="magnus-internal/x-httpd-php" Service fn=php4_execute

    Pēc tam jūs varat konfigurēt direktoriju administrācijas serverī un piešķirt tam stilu x-httpd-php... Visi tajā esošie faili tiks izpildīti kā PHP. Tas ir jauki, lai paslēptu PHP lietojumu, pārdēvējot failus uz .html.

  • Restartējiet tīmekļa pakalpojumu un lietojiet izmaiņas
  • Dariet to katram tīmekļa servera gadījumam, kuru vēlaties, lai palaistu PHP
  • Komentēt:

    PHP izmantotais kaudzes lielums ir atkarīgs no tīmekļa servera konfigurācijas. Ja rodas avārijas ar ļoti lieliem PHP skriptiem, ieteicams tos paaugstināt ar administratora serveri (sadaļā "MAGNUS EDITOR").

    CGI vide un ieteiktās izmaiņas php.ini

    Rakstot PHP skriptus, svarīgi ir fakts, ka Sun JSWS / Sun ONE WS / iPlanet / Netscape ir tīmekļa vietne ar daudzu pavedienu. Tāpēc visi pieprasījumi darbojas vienā un tajā pašā procesa telpā (paša tīmekļa servera telpā), un šai vietai ir tikai viena vide. Ja vēlaties iegūt CGI mainīgos, piemēram, PATH_INFO, HTTP_HOST utt. tas nav pareizs veids, kā to izmēģināt vecajā PHP veidā ar getenv () vai līdzīgā veidā (reģistrējiet globālos datus videi, $ _ENV). Jūs iegūtu tikai darbojošā tīmekļa servera vidi bez derīgiem CGI mainīgajiem!

    Komentēt:

    Kāpēc vidē ir (nederīgi) CGI mainīgie?

    Atbilde: Tas ir tāpēc, ka sākāt tīmekļa servera procesu no administratora servera, kurā darbojas tīmekļa servera palaišanas skripts, kuru vēlaties sākt kā CGI skriptu (CGI skripts administratora servera iekšpusē!). Tāpēc sāktā tīmekļa servera vidē ir daži CGI vides mainīgie. To varat pārbaudīt, palaižot tīmekļa serveri nevis no administrēšanas servera. Izmantojiet komandrindu kā root lietotāju un sāciet to manuāli - jūs redzēsiet, ka nav CGI līdzīgu vides mainīgo.

    Vienkārši nomainiet skriptus, lai iegūtu CGI mainīgos pareizā veidā PHP 4.x, izmantojot superglobālo $ _SERVER. Ja jums ir vecāki skripti, kas izmanto $ HTTP_HOST utt., Ieslēdziet to register_globals un mainiet mainīgo secību arī (svarīgi: noņemt "E" no tā, jo jums šeit nav vajadzīga vide):

    variables_order \u003d "GPCS" register_globals \u003d Ieslēgts

    Īpaša izmantošana kļūdu lapām vai pašizveidotiem direktoriju sarakstiem (PHP\u003e \u003d 4.3.3)

    Lai ģenerētu kļūdas lapas, varat izmantot PHP "404 nav atrasts" vai tamlīdzīgi. Pievienojiet šādu rindu obj.conf objektam katrai kļūdas lapai, kuru vēlaties pārrakstīt:

    Kļūda fn \u003d "php4_execute" code \u003d XXX script \u003d "/ path / to / script.php"

    Kur XXX ir HTTP kļūdas kods. Lūdzu, izdzēsiet citus Kļūda kas varētu traucēt jūsu rīcību. Ja vēlaties ievietot lapu visām iespējamām kļūdām, atstājiet kods parametrs out. Jūsu skripts var iegūt HTTP statusa kodu ar $ _SERVER ["ERROR_TYPE"].

    Vēl viena iespēja ir ģenerēt pašizveidotus direktoriju sarakstus. Vienkārši izveidojiet PHP skriptu, kurā tiek parādīts direktoriju saraksts, un aizstājiet atbilstošo noklusējuma Pakalpojuma rindu type \u003d "magnus-internal / directory" obj.conf ar šādu tekstu:

    Pakalpojums fn \u003d "php4_execute" type \u003d "magnus-internal / directory" script \u003d "/ path / to / script.php"

    Gan kļūdu, gan direktoriju saraksta lapām sākotnējais URI un tulkotais URI atrodas mainīgajos $ _SERVER ["PATH_INFO"] un $ _SERVER ["PATH_TRANSLATED"].

    Šajā sarakstā aprakstīta ISAPI moduļa instalēšana darbam ar Sambar serveri operētājsistēmā Windows.

      Sambar instalācijas direktorijā atrodiet failu ar nosaukumu mappings.ini (konfigurācijas mapē).

      Atveriet mappings.ini un pievienojiet šādu rindu zem :

      22. piemērs. Sambar ISAPI konfigurācija

      # PHP 4 * .php \u003d c: \\ php \\ php4isapi.dll # PHP 5 * .php \u003d c: \\ php \\ php5isapi.dll

      (Ja PHP ir instalēts c: \\ php.)

      Restartējiet Sambar, lai izmaiņas stātos spēkā.

    Komentēt:

    Ja vēlaties izmantot PHP, lai sazinātos ar resursiem citos tīkla datoros, jums jāmaina konts, kuru izmanto servera serviss Sambar. Pēc noklusējuma tā ir LocalSystem, un attālie resursi nebūs pieejami. Kontu var rediģēt, izmantojot Windows vadības paneļa administrēšanas utilītas opciju Pakalpojumi.

    Xitami uz Microsoft Windows

    Šajā sadaļā ir piezīmes un triki, kas īpaši raksturīgi »Xitami Windows platformā.

    Šajā kontrolsarakstā ir aprakstīts, kā instalēt PHP CGI bibliotēku tā, lai tā darbotos ar Xitami operētājsistēmā Windows.

    Komentēt: Svarīgi CGI lietotājiem

    PHP moduļu instalēšana sistēmā Windows

    Pēc PHP un tīmekļa servera instalēšanas operētājsistēmā Windows OS, iespējams, būs jāinstalē daži moduļi, lai pievienotu funkcionalitāti. Jūs varat izvēlēties, kuri moduļi tiks ielādēti, kad sāksies PHP, modificējot savu php.ini failu. Izmantojot šo funkciju, jūs varat arī dinamiski ielādēt moduļus skriptos

    Mēs turpinām veidot vietējo WAMP serveri vietējā mašīnā (personālajā datorā). Šajā rakstā mēs instalējam PHP tulku, jeb burtu [P] WAMP saīsinājumā.

    Atgādināšu, ka Apache + MySQL + PHP montāža ir nepieciešama, lai izveidotu vietni savā datorā kā vietējo serveri. Uzdevums ir interesants daudziem un bieži tiek izmantots, strādājot pie projektiem. AMP pašsamontēšana ir sarežģīts uzdevums, kas saistīts ar datora iestatīšanu un tā pastāvīgo veselību. Daudziem tas ir vieglāk nekā strādāt ar attāliem serveriem, jo \u200b\u200bdatora palīdzība vienmēr ir pieejama. Turklāt darbs ar vietējo serveri ir bezmaksas.

    Iepriekšējos rakstos es jums teicu, kā, kā. Vietējo serveri mēs veidojam operētājsistēmā Windows 7. Ir pienācis laiks instalēt PHP.

    Mēs instalēsim PHP sistēmas diskā izveidotajā php mapē: C: \\ Program Files \\ PHP.

    Kur iegūt PHP

    Mēs izmantojam jaunāko php versiju tikai oficiālajā vietnē, šeit ir saite: https://php.net/downloads.php... vēl viens: https://windows.php.net/download#php-7.0. Mēs neņemsim jaunāko php7.0 versiju, ņemsim ne tik "revolucionāro" PHP 5.6 (5.6.20). Es veicu montāžu Windows 7 32 bitu arhitektūrai ar iebūvētu Windows instalēšanas programmu.

    Instalējiet PHP ar Installer (MSI)

    Jaunākais PHP ar instalētāju un pats galvenais ar Apache 2.2 moduli. tas ir php-5.3.10-nts-Win32-VC9-x86.msi. Mēs to ņemam šeit: https://windows.php.net/downloads/releases/archives/ un ielieciet to.

    Piezīme: Mēs izvēlamies ar Apache 2.2 moduli, jo WAMP veidojam uz Apache 2.2, kuru jau esam instalējuši.

    PHP instalēšana, izmantojot instalētāju (MSI), ir vienkārša, vairākos logos:

    1. Palaidiet lejupielādēto failu php-5.3.10-nts-Win32-VC9-x86.msi.

    Pirmais PHP-5.3.10 instalēšanas logs

    2. Iepazīstieties ar licenci un piekrītot tai, dodieties tālāk, noklikšķinot uz pogas "Nākamais".

    3. Šajā lapā iestatiet mapi, kurā instalējat PHP. Ļaujiet tam būt direktorija:

    4. Nākamajā lapā atlasiet izmantojamo tīmekļa serveri. Mūsu asamblejā tas ir Apache2.

    5. Šajā lapā mums jāizvēlas mums vajadzīgie PHP moduļi. Drošības apsvērumu dēļ mēs izvēlamies visu.

    6. Noklikšķiniet uz "Instalēt"


    Noklikšķiniet uz Instalēt, lai instalētu php-5.3.10
    Mēs redzam instalēšanas loga procesu php-5.3.10

    Viss! PHP instalēšana vietējā datorā ir pabeigta.

    PHP ir saīsinājums no hiperteksta procesora (hiperteksta procesora). Tā ir vispārējas nozīmes atvērtā koda skriptu valoda, kas tiek plaši izmantota tīmekļa izstrādē, pateicoties spējai iegult HTML. Izmanto, lai rakstītu iepriekš uzrakstītas programmas, kuras vēlāk tiek izmantotas uzdevumu automatizēšanai. PHP skriptus parasti izmanto Linux, Unix, Windows, Mac OS un citās operētājsistēmās. Lietojot PHP tīmekļa izstrādē, varat izvēlēties savu tīmekļa serveri un galveno operētājsistēmu.

    Tālāk ir aprakstīta pakāpeniska procedūra PHP 5.6 versiju instalēšanai operētājsistēmā Ubuntu 18. Šajā rakstā minētās komandas un procedūras tiek izpildītas operētājsistēmā Ubuntu 18.06 LTS.

    Šajā rakstā tiek izmantota Ubuntu komandrinda Terminal. Lietotni Terminal var atvērt, izmantojot sistēmas izvēlni vai īsinājumtaustiņu Ctrl + Alt + t.

    PHP var lejupielādēt no oficiālās vietnes http://php.net/releases/ avota formā un apkopot. Mēs aprakstīsim PHP instalēšanu caur Ondrej PPA repozitoriju kā gatavu paketi.

    Uzstādīšana

    Lai instalētu PHP 5.6, jums jāpievieno sistēma Personīgo paku arhīvs (PPA) - krātuve ar neoficiālām pakotnēm no izstrādātājiem, kuri vēlas publicēt savus pakotnes.

    Lai strādātu ar PPA, jāinstalē šāda programmatūra:

    Sudo apt-get instalējiet programmatūras īpašības-common

    Pēc tam jūs varat pievienot ondrej / php repozitoriju.

    Sudo add-apt-repository ppa: ondrej / php

    Šajā repozitorijā ir visas pašreizējās PHP versijas.

    Pēc Ondrej krātuves pievienošanas jums jāatjaunina sistēmas krātuvju indekss. Tas ir nepieciešams, lai instalētu jaunāko pieejamo programmatūras versiju. Ievadiet šādu komandu:

    sudo apt-get atjauninājums


    Tiešā saite: php-5.3.10-Win32-VC9-x86.zip
    Tajā pašā laikā nekavējoties lejupielādējiet dokumentāciju krievu valodā .chm formātā, tā jums būs nepieciešama, studējot un strādājot: php_enhanced_ru.chm

    Izpakojiet arhīvu vēlamajā direktorijā (sākotnēji tiek ieteikts “C: \\ php”). Atveriet konfigurācijas failu ar ieteicamajiem iestatījumiem - "php.ini-development" (atrodas izplatīšanas komplekta saknē), pārdēvējiet to par php.ini un veiciet šādas izmaiņas.

    Php.ini pārskatīšana:

    1. Atrodiet līniju:
      post_max_size \u003d 8M
      Palieliniet maksimālo ar POST metodi pieņemto datu apjomu līdz 16 MB, mainot to uz:
      post_max_size \u003d 16M
    2. Atrodiet līniju:
      ; include_path \u003d ".; c: \\ php \\ ietver"
      Atzīmējiet to, noņemot semikolu līnijas priekšā.
      (Brīdinājuma izņēmums! Pretējā slīpsvītra, norādot ceļu):
      include_path \u003d ".; c: \\ php \\ ietver"
      Izveidojiet tukšu direktoriju "C: \\ php \\ ietver", lai saglabātu iekļautās klases.
    3. Atrodiet līniju:
      paplašinājuma_dir \u003d "./"
      Iestatiet šīs direktīvas vērtību ceļam uz mapi ar paplašinājumiem:
      extension_dir \u003d "C: / php / ext"
    4. Atrodiet līniju:
      ; upload_tmp_dir \u003d
      Noņemiet no tā komentāru un vērtībā norādiet šādu ceļu:
      upload_tmp_dir \u003d "C: / php / upload"
      Izveidojiet tukšu mapi "C: \\ php \\ upload", lai saglabātu pagaidu failus, kas augšupielādēti, izmantojot HTTP.
    5. Atrodiet līniju:
      upload_max_filesize \u003d 2M
      Palieliniet maksimāli atļauto augšupielādes lielumu līdz 16 MB:
      upload_max_filesize \u003d 16M
    6. Pievienojiet paplašinājumu bibliotēkas datus, bez komentāriem:
      paplašinājums \u003d php_bz2.dll
      paplašinājums \u003d php_curl.dll
      paplašinājums \u003d php_gd2.dll
      paplašinājums \u003d php_mbstring.dll
      paplašinājums \u003d php_mysql.dll
      paplašinājums \u003d php_mysqli.dll
    7. Atrodiet līniju:
      ; date.timezone \u003d
      Nekomentējiet un iestatiet savas atrašanās vietas laika joslu (laika joslu sarakstu skatiet dokumentācijā):
      date.timezone \u003d "Eiropa / Maskava"
    8. Atrodiet līniju:
      ; session.save_path \u003d "/ tmp"
      Nekomentējiet un iestatiet šīs direktīvas vērtību uz šādu ceļu:
      session.save_path \u003d "C: / php / tmp"
      Lai saglabātu pagaidu sesijas failus, izveidojiet tukšu mapi "C: \\ php \\ tmp".
    Saglabājiet izmaiņas un aizveriet failu php.ini.

    Pēc tam direktorija ar instalēto PHP tulku jāpievieno operētājsistēmas PATH. Lai to izdarītu, dodieties uz "Sākt" -\u003e "Vadības panelis" -\u003e "Sistēma", atveriet cilni "Papildu", noklikšķiniet uz " Vides mainīgie "sadaļā" Sistēmas mainīgie "veiciet dubultklikšķi uz līnijas" Ceļš ", laukā" Mainīgā vērtība "pievienojiet papildus pastāv, ceļš uz direktoriju ar instalētu PHP, piemēram, "C: \\ php" (bez pēdiņām). Ņemiet vērā, ka ceļus atdala semikola rakstzīme. Restartējiet operētājsistēmu, lai izmaiņas stātos spēkā.

    Ceļa virknes piemērs:
    % SystemRoot% \\ system32;% SystemRoot%;% SystemRoot% \\ System32 \\ Wbem; C: \\ php; C: \\ Program Files \\ MySQL \\ MySQL Server 5.5 \\ bin

    PHP tulka uzstādīšana un konfigurēšana - pabeigta.

    Pievienoto bibliotēku apraksts:

    php_bz2.dll - Ar šo paplašinājumu PHP varēs izveidot un izpakot arhīvus bzip2 formātā.

    php_curl.dll - Ļoti svarīga un nepieciešama bibliotēka, kas ļauj izveidot savienojumu un strādāt ar serveriem, izmantojot milzīgu skaitu interneta protokolu.

    php_gd2.dll - Vēl viena neaizstājama bibliotēka, kas ļauj strādāt ar grafiku. Vai jūs domājāt, ka HTML lapas varat ģenerēt tikai PHP? Bet nē! Izmantojot PHP, jūs varat darīt gandrīz visu, ieskaitot zīmēšanu.

    php_mbstring.dll - Bibliotēkā ir funkcijas darbam ar daudzbaitu kodējumiem, kas ietver austrumu valodu (japāņu, ķīniešu, korejiešu), Unicode (UTF-8) un citu kodējumus.

    php_mysql.dll - Bibliotēkas nosaukums runā pats par sevi - tas ir nepieciešams darbam ar MySQL serveri.

    php_mysqli.dll - Šī bibliotēka ir iepriekšējās paplašinājums, un tā satur papildu PHP funkcijas darbam ar MySQL servera 4.1.3 un jaunāku versiju.

    Šīm bibliotēkām vajadzētu būt pietiekamām, lai PHP darbotos pareizi. Laika gaitā, ja radīsies vajadzība, jūs varēsiet savienot papildu bibliotēkas, taču nevajadzētu tās visas savienot uzreiz ar domu, ka putru nebojāsiet ar sviestu, šajā gadījumā pārmērīgs pievienoto bibliotēku skaits var ievērojami palēnināt PHP darbību.

    «

    Šajā rakstā ir sniegta detalizēta instrukcija par PHP instalēšanu darbam ar Apache HTTP Server sistēmā Windows. Šī procedūra ir pārbaudīta gan Windows XP, gan Vista. Tiek pieņemts, ka esat jau pabeidzis Apache instalēšanu.

    PHP 5 konfigurācijas darbības

    1. Lejupielādējiet PHP 5

    Pirms sākat, lejupielādējiet PHP 5 kopiju no lejupielādēt lapas... Lejupielādējiet aizsargāto VC6 pakotni sadaļā Windows Binaries - tas ir, neielādējiet instalēšanas programmu. Piemēram, atlasiet paketi ar atzīmi “ PHP 5.2.5 zip pakete", Ja pašreizējā versija ir 5.2.5.

    Piezīme: Lūdzu, ņemiet vērā, ka es neesmu pārbaudījis zemāk aprakstīto procedūru ar PHP 5.3, tikai ar 5.2.5, kas bija jaunākā versija rakstīšanas laikā. Teorētiski PHP 7 instalēšanai ir jāveic tās pašas darbības.

    2. Instalējiet PHP 5

    Cietajā diskā izveidojiet mapi PHP. Es iesaku c: php, lai gan jūs varat izmantot citu mapes nosaukumu un atrašanās vietu. Es personīgi gribētu neizmantot nosaukumus ar atstarpēm.

    Izvelciet visus failus no lejupielādētā arhīva uz šo mapi. Lai to izdarītu, vienkārši veiciet dubultklikšķi uz zip faila. Un pēc tam velciet visus failus mapē c: php.

    3. Tiem, kas atjaunina pakotni: Izdzēsiet veco PHP.INI failu no Windows direktorija

    Ja migrējat uz PHP 5 no vecākas versijas, pārejiet uz Windows direktoriju ( parasti c: logi) un izdzēsiet visus php.ini failus, kurus iepriekš tur ievietojāt.

    4. PHP konfigurācija

    Pārejiet uz mapi c: php un izveidojiet php.ini ieteiktā faila kopiju. Nosauciet jauno php.ini failu. Tagad jums vajadzētu būt failam c: phpphp.in ar tādu pašu saturu kā c: phpphp.ini-ieteicams.

    Piezīme. Ja izmantojat Apache 1, php.ini fails jāpārvieto uz Windows direktoriju ( c: logi), vai iestatiet PATH vides mainīgo iekļaut c: php. Ja nezināt, kā to izdarīt, vienkārši pārvietojiet failu php.ini uz mapi c: Windows. Jums tas nav jādara, ja izmantojat Apache 2, jo vēlāk Apache 2 konfigurācijas failā direktīvu norādīsim ar faila php.ini atrašanās vietu.

    Lai instalētu PHP operētājsistēmā Windows 7, izmantojot teksta redaktoru ( piemēram, piemēram, Notepad, kuru var atrast izvēlnes Sākt sadaļā “Sistēma”)? atveriet failu php.ini. Iespējams, failā būs jāveic šādas izmaiņas:

    a) Ieskaitot īsus atvērtus tagus

    Atrodiet šādu rindu:

    short_open_tag \u003d Izslēgts

    Ja short_open_tag ir izslēgta, tagi, piemēram, “

    Tā kā daudzi trešo pušu PHP skripti izmanto “

    short_open_tag \u003d Ieslēgts

    b) Burvju pēdiņas

    Instalējot Apache PHP pēc noklusējuma, ienākošie dati netiek automātiski aizvērti ar slīpsvītru. Ja vēlaties, lai jūsu ievads tiktu pievienots ar atpakaļ slīpsvītru (""), piemēram, lai atveidotu mitināšanas iestatījumus, meklējiet šādu rindu:

    magic_quotes_gpc \u003d Izslēgts

    un aizstājiet to ar:

    magic_quotes_gpc \u003d Ieslēgts

    Tas nav ieteicams to darīt, ja hostingā šis parametrs nav norādīts. Pat ja iestatīts uz Izslēgts, jūs joprojām varat izmantot PHP pievieno funkciju “laslashes ”)lai pievienotu slīpsvītru konkrētiem datiem.

    c) Globālo mainīgo izmantošana

    Pēc veco skriptu izpildes tiek pieņemts, ka visiem datiem, kas iesniegti, izmantojot veidlapu, automātiski būs PHP mainīgais ar tādu pašu nosaukumu. Piemēram, ja veidlapai ir ievades lauks ar nosaukumu “kaut kas”, vecie PHP skripti pieņem, ka PHP procesors automātiski izveidos mainīgo ar nosaukumu $ kaut kas satur tajā laukā norādīto vērtību.

    Ja izmantojat šādus skriptus, jums jāatrod šāda rinda:

    register_globals \u003d Izslēgts

    un mainiet to uz:

    register_globals \u003d Ieslēgts

    Brīdinājums: instalējot PHP sistēmā Windows, nedariet to, ja vien jums nav trešo pušu skriptu, kuriem tas nepieciešams, lai darbotos. Rakstot jaunus skriptus, vienmēr ir labāk pieņemt, ka elements register_globals ir iestatīts uz “ Izslēgts«.

    d) Kļūdu displejs

    Tiešsaistes vietnē skriptu kļūdas parasti tiek reģistrētas, netiek parādītas PHP kļūdu failā. Bet vietējā mašīnā, kamēr jūs pārbaudāt un atkļūdojat PHP skriptu, ērtāk ir nosūtīt kļūdas ziņojumus, kad tie tiek atklāti tieši pārlūkprogrammas logā. Tādā veidā jūs nepalaidīsit garām kļūdas, pat ja aizmirsīsit pārbaudīt kļūdu žurnāla failu.

    Lai PHP parādītu kļūdu ziņojumus tieši pārlūkprogrammas logā, atrodiet šādu rindu:

    display_errors \u003d Izslēgts

    un mainiet to uz:

    display_errors \u003d Ieslēgts

    Šim parametram aktīvajā vietnē vienmēr jābūt iestatītam uz Izslēgts.

    e) Sesijas ceļš

    Ja skripts izmanto sesijas, atrodiet šādu rindu:

    ; session.save_path \u003d "/ tmp"

    session.save_path norāda mapi, kurā PHP saglabā sesijas failus. Tā kā sistēmā Windows / tmp mape nepastāv, jums jāinstalē cita mape. Viens veids ir izveidot mapi ar nosaukumu c: tmp ( kā iepriekš mēs izveidojām c: php) un norādiet šo mapi šim parametram. Ja jūs to izdarīsit, mainiet šo rindu šādi:

    session.save_path \u003d "c: tmp"

    Ņemiet vērā, ka papildus ceļa maiņai es arī no virknes izņēmu semikolu (";") prefiksu.

    Varat arī izmantot pašreizējo TEMP mapi savā datorā. Vai arī izveidojiet tmp mapi savā PHP direktorijā, piemēram, c: phptmp, un attiecīgi pielāgojiet konfigurācijas failu. Ir daudz iespēju. Ja jūs nevarat izlemt, kuru izvēlēties, vienkārši izveidojiet c: php un dariet, kā jau teicu iepriekš.

    f) SMTP serveris

    Instalējot PHP 5 5, ja skripts izmanto funkciju mail () un vēlaties, lai funkcija veiksmīgi nosūtītu pastu uz vietējo mašīnu, atrodiet šo sadaļu:

    ; Tikai Win32. SMTP \u003d localhost smtp_port \u003d 25; Tikai Win32. ; sendmail_from \u003d [e-pasts aizsargāts]

    Mainiet to, lai iekļautu jūsu SMTP servera adresi un e-pasta kontu. Piemēram, ja jūsu SMTP servera mail.example.comun e-pasta adresi [e-pasts aizsargāts] , mainiet kodu šādi:

    SMTP \u003d mail.example.com smtp_port \u003d 25 sendmail_from \u003d [e-pasts aizsargāts]

    Ņemiet vērā, ka pēc tam, kad skripts mēģina izmantot funkciju mail (), tam būs nepieciešams izveidot savienojumu ar jūsu ISP, lai tas veiksmīgi darbotos. Ja nemainīsit iepriekš minētās rindas un mēģināsit skriptā izmantot funkciju mail (), funkcija atgriezīs kļūdas kodu un parādīs kļūdas ziņojumu.

    Kā iestatīt Apache PHP 5

    Apache PHP instalēšanai ir divi veidi. Pirmkārt: iestatiet to, lai sāktu PHP tulks kā Apache moduli. Otrkārt, konfigurējiet to, lai tulks darbotos kā binārs CGI. Ir jāpiemēro tikai viens no tiem. Izvēlieties moduļa metodi, ja hostingā kā Apache modulis ir instalēta arī PHP, vai izmantojiet CGI metodi, ja tā ir ieviesta mitināšanas sistēmā.

    a) Palaist PHP 5 kā Apache moduli

    Lai konfigurētu Apache ielādēt PHP kā moduli PHP skriptu parsēšanai, izmantojiet ASCII teksta redaktoru, lai atvērtu Apache konfigurācijas failu httpd.conf.

    Ja izmantojat Apache 1.x, fails atrodas mapē c: Program FilesApache GroupApacheconf... Apache 2.0.x lietotāji to var atrast mapē C: Program FilesApache GroupApache2confun Apache 2.2.x lietotāji atrodas mapē C: Program FilesApache Software FoundationApache2.2conf... Parasti tas atrodas direktorijas conf mapē, kurā ir instalēta Apache.

    Atrodiet faila sadaļu ar priekšrakstiem LoadModule. Deklarācijas, pirms kurām ir jaukšanas simbols "#", tiek uzskatītas par komentētām.

    Ja izmantojat Apache 1.x, pēc visiem LoadModule priekšrakstiem pievienojiet šādu rindu:

    LoadModule php5_module "c: /php/php5apache.dll"

    Ja izmantojat Apache 2.0.x, pēc visiem LoadModule priekšrakstiem pievienojiet šādu rindu:

    LoadModule php5_module "c: /php/php5apache2.dll"

    Ja izmantojat Apache 2.2.x, pievienojiet šādu rindu:

    LoadModule php5_module "c: /php/php5apache2_2.dll"

    Ņemiet vērā, ka šajā PHP instalēšanas piemērā tradicionālā Windows atpakaļslīpsvītras ("") vietā tiek izmantota rakstzīme uz priekšu ("/"). Tā nav drukas kļūda.

    Ja izmantojat Apache 1.x, atrodiet paziņojumu sēriju "AddModule" un pēc visām rindām pievienojiet šo.

    AddModule mod_php5.c

    Pēc tam failā atrodiet bloku AddType un aiz pēdējā AddType paziņojuma pievienojiet šādu rindu. Tas jādara neatkarīgi no tā, kuru Apache versiju jūs izmantojat. Apache 2.2.x sadaļā jums jāatrod rindas AddType ... Pievienojiet rindiņu tieši pirms aizvēršanas šai sadaļai.

    Ja jums nepieciešams atbalsts citu failu tipiem, piemēram, .phtml, pievienojiet tos sarakstam, piemēram, šādi:

    Tiem, kas izmanto kādu no Apache 2 versijām, jānorāda PHP ini faila atrašanās vieta. Pievienojiet šo rindiņu savas httpd.conf beigās.

    PHPIniDir "c: / php"

    Ja izmantojāt citu direktoriju, c: / php būs jāmaina uz pareizo ceļu. Neaizmirstiet izmantot slīpsvītru uz priekšu ("/").

    Ja izmantojat Apache 1, failu php.ini jau esat ievietojis Windows mapē vai kaut kur PATH. Tāpēc PHP būs jāatrod pašam.

    Darbojas PHP 5 kā CGI binārs

    Ja esat konfigurējis PHP 5 ielādi kā Apache moduli, varat izlaist šo sadaļu. Tas ir paredzēts tiem, kas vēlas konfigurēt PHP darboties kā CGI bināram.

    Procedūra, instalējot PHP 7, ir vienāda gan Apache 1.x, gan visām 2.x sērijas versijām.

    Atrodiet Apache konfigurācijas faila daļu, kurā ir sadaļa ScriptAlias. Pievienojiet zem rindas tieši aiz rindas ScriptAlias \u200b\u200b“ cgi-bin". Ja izmantojat Apache 2.2.x, pārliecinieties, vai līnija ir pirms aizvēršanas sadaļai .

    Piezīme: ja PHP esat instalējis citā vietā, piemēram, c: Program Filesphp, jums jānorāda atbilstošais ceļš, nevis c: / php / (piemēram, c: Program Filesphp)... Atcerieties, ka šeit mēs izmantojam vienkāršu slīpsvītru uz priekšu ("/"), nevis Windows slīpsvītru ("").

    ScriptAlias \u200b\u200b/ php / "c: / php /"

    Apache ir jākonfigurē PHP MIME tips. Atrodiet komentāru bloku AddType, kurā izskaidrots tā lietojums, un zem tā pievienojiet šādu rindu. Apache 2.2.x atrodiet AddType rindas zem ... Pievienojiet zem līnijas tieši pirms aizvēršanas šai sadaļai.

    AddType lietojumprogramma / x-httpd-php .php

    Tāpat kā instalējot PHP kā Apache moduli, varat pievienot visus paplašinājumus, lai Apache tos atpazītu kā PHP skriptus, piemēram:

    Lietojumprogramma AddType / x-httpd-php .phtml

    Tad jums jāpasaka serverim izpildīt PHP izpildāmo failu katru reizi, kad tas sastopas ar PHP skriptu. Pievienojiet failam šādu kodu, piemēram, pēc komentāru bloka, kurā paskaidrots “ Darbība«.

    Ja izmantojat Apache 2.2.x, pievienojiet kodu tūlīt pēc iepriekš minētā paziņojuma AddType; Apache 2.2.x nav komentāru bloka " Darbība«.

    Darbības lietojumprogramma / x-httpd-php "/php/php-cgi.exe"

    Piezīme: "/ php /" daļa tiks atpazīta kā ScriptAlias, sava veida makro, kuru Apache paplašinās līdz "c: / php /" ( vai "c: / Program Files / php /", ja tur esat instalējis PHP). Citiem vārdiem sakot, neievietojiet šajā direktīvā ceļu "c: /php/php.exe" "C: / Program Files / php / php.exe"un izmantojiet "/php/php-cgi.exe".

    Ja izmantojat Apache 2.2.x, failā httpd.conf atrodiet šo sadaļu:

    Pievienojiet rindas zemāk tieši pēc tikko atrastās sadaļas.

    AllowOverride None Opcijas Neviena secība neatļauj, noraidīt Allow no visām

    c) Noklusējuma rādītāja lapas iestatīšana

    Šajā sadaļā ir norādīta iespēja instalēt PHP sistēmā Windows gan kā Apache moduli, gan kā bināru CGI.

    Ja veidojat failu index.php un vēlaties, lai Apache to ielādētu kā vietnes sākumlapu, failam httpd.conf būs jāpievieno vēl viena rindiņa. Atrodiet līniju, kas sākas ar " DirectoryIndex", Un pievienot" index.php»Uz failu sarakstu. Piemēram, ja jums bija šāds kods:

    DirectoryIndex index.html