Kā konfigurēt Fastcgi moduli un PHP, lai mitinātu PHP lietojumprogrammas IIS 7 un augstāk

Šajā rakstā jūs uzzināsit par FastCGI elementa konfigurēšanas līdzekļiem, kā arī par to, kā konfigurēt PHP, lai tas varētu uzņemt visas PHP lietojumprogrammas IIS 7 tīmekļa serverī un jaunākās versijas..


IIS platformā FastCGI elements ļauj iespējot tos plaši izmantotos lietojumprogrammu ietvarus, kas vienlaikus piedāvā atbalstu FastCGI elementiem, un ļauj elementiem izmitināt uzticamā un augstas veiktspējas veidā tīmekļa Web serverī. IIS. FastCGI paredz apmaiņu ar kopējo vārtejas saskarni (CGI), kas ir augstākās klases līdzeklis ārējo lietojumprogrammu saskarnei ar šiem Web serveriem, kuru IIS atbalsta jau kopš pirmās reizes, kad tā tika izlaista..

CGI programmas ir faili, kurus var izpildīt un ne vairāk kā reizes; Web serveri palaiž tos katram pieprasījumam, kas nosaka pieprasījuma apstrādi un īpašu atbilžu ģenerēšanu, kas pēc tam tiek nosūtīti atpakaļ šim lietotājam. Sakarā ar to, ka daudzu vītņu izpildīšana neatbalsta daudzus no šiem ietvariem, CGI tad palīdzētu viņiem uzticami izpildīt IIS platformu, precīzi izpildot vienu pieprasījumu katram procesam. Sakarā ar izdevumiem, kas saistīti ar katra vaicājuma sākšanu un arī viena procesa slēgšanu, tas rada ļoti sliktu rezultātu.

Paredzot līdzekļus, ar kuru palīdzību process atkal un atkal tiek izmantots daudzu pieprasījumu apstrādei, FastCGI atrisina visas ar darbību saistītās problēmas, kas ir kopīgas ar CGI. Paredzot procesu kopumu, ko var izmantot atkārtoti, un pārliecinoties, ka tikai pieprasījums tiek apstrādāts tikai vienā procesā, FastCGI saglabā saderību līdzās tām bibliotēkām, kuras ir “drošas pavedieniem”..

Drošības izolācija PHP vietnēm

Visi IIS ieteikumi vispārējās drošības izolēšanai ir saskaņā ar ieteikumiem, kas izmantoti Web vietņu, kas atbalsta PHP, izolēšanai vidē, kuru var koplietot mitināšanai. Ieteikums PHP vietņu izolēšanai dalīta mitināšanas vidē ir konsekvents. Tādējādi šādi ieteikumi:

  • Pārliecinieties, ka izmantojat vienu lietojumprogrammu kopu tikai vienai vietnei.
  • Pārliecinieties, ka lietojumprogrammu pūlā jūs izmantojat īpašu lietotāja kontu
  • Lai izmantotu lietojumprogrammu kopas identitāti, konfigurējiet anonīmu lietotāja identitāti.
  • Pārliecinieties, ka php.ini failā ir iespējota uzdošanās par FastCGI, tādējādi: (fastcgi.impersonate = 1)

PHP procesa pārstrādes uzvedība

Pārliecinieties, ka pirms sākat vietējās PHP pārstrādi, FastCGI jau ir pārstrādājis php-cgi.exe procesus. FastCGI sistēmas pārstrādes izturēšanos regulē ar “instanceMaxRequests” konfigurācijas atribūtiem. Tagad šis īpašums precizē to vaicājumu skaitu, kurus FastCGI var pārvaldīt pirms pārstrādes.

Arī PHP ir saistīta pārstrādes līdzekļu sistēma, ko regulē vide PHP_FCGI_MAX_REQUESTS. Pārliecinoties, ka instanceMaxRequests ir iestatījums, kas ir vienāds vai mazāks par PHP_FCGI_MAX_REQUESTS, jūs varat būt pārliecināts, ka vietējās PHP pārstrādes loģika nekad netiks aktivizēta.

Lai konfigurētu FastCGI iestatījumus, varat izmantot AppCmd komandas Line tool vai IIS Manager.

A: Kā izmantot IIS pārvaldnieku, lai konfigurētu FastCGI pārstrādes iestatījumus

1. solis: atlasiet FastCGI iestatījumi

Pārliecinieties, vai IIS administrēšanas pakotne ir instalēta uz jums piederošā servera un noklikšķiniet uz IIS pārvaldnieka, lai to atvērtu. Pēc tam divreiz noklikšķiniet uz FastCGI iestatījumi servera līmenī.

2. solis: atlasiet opciju Rediģēt

Izvēlieties konkrēto FastCGI lietotni, kuru vēlaties konfigurēt, un pēc tam atlasiet paneli ar atzīmi “Darbība” un izvēlieties rediģēšanas opciju.

3. solis: konfigurējiet “instanceMaxRequests"

Iekš Rediģēt programmu FastCGI dialoglodziņš, integrējiet 10000 kā instanceMaxRequestssetup un izvēlieties cilni ar atzīmi “Pārlūkot”, kas atrodas tuvu vides mainīgo iestatījumiem..

4. solis: pievienojiet vidi

Priekš EnvironmentVariables kolekcijas redaktors, dialoglodziņā integrējiet "PHP_FCGI_MAX_REQUESTS"vides mainīgais un atlasiet tā vērtību 10000.

Tas ir svarīgi, jo, ja nekonfigurējat iestatījumu, sistēma automātiski jums piemēros zemāk norādīto noklusējuma iestatījumu:

Par theinstanceMaxRequests = "200"

Priekš PHP_FCGI_MAX_REQUESTS = “500” (galvenokārt izmanto PHP konfigurācijās).

Kā konfigurēt FastCGI pārstrādes iestatījumus, izmantojot komandrindu

Lai konfigurētu PHP un FastCGI pārstrādes paradumus, izmantojiet AppCmd izmantojot šādas komandas:

consoleCopy

C:>% windir% system32inetsrvappcmd set config -section: system.webServer / fastCgi /[fullPath=’c:{php_folder}php-cgi.exe”.instanceMaxRequests:10000

C:>% windir% system32inetsrvappcmd.exe iestatīt config -section: system.webServer / fastCgi /+"[fullPath = ‘C: {php_folder} php-cgi.exe’]. environmentVariables. [name = ‘PHP_FCGI_MAX_REQUESTS’, value = ‘10000’]"

PHP versiju iespējošana

Lielākā daļa PHP atbalstīto lietojumprogrammu ir atkarīgas no funkcijām vai funkcijām, kurām ir pieejamas tikai noteiktas PHP versijas. Lai konkrētais serveris mitinātu šos lietojumprogrammu veidus, ir jāiespējo dažādas PHP versijas, un tām arī vajadzētu darboties vienlaicīgi ar to. Vairāku PHP versiju darbināšana tajā pašā Web serverī tiek pilnībā atbalstīta IIS FastCGI apdarinātājā..

Kā piemēru var minēt gadījumus, kad jums ir plāns integrēt PHP 5.2.5, 5.2.1 un 4.4.8, visi kā nedroši pavedieniem jūsu piederošajā tīmekļa serverī. Lai atļautu šo konkrēto konfigurāciju, faila sistēmā un dažādās mapēs vispirms jāievieto līdzvērtīgi PHP binārie faili. (piemēram, C: \ php525 \, C: \ php521 un C: \ php448 \ nts). Un pēc tam katrai versijai ir jāizveido dažādi procesa baseini FastCGI lietojumprogrammām.

consoleCopy

C:>% windir% system32inetsrvappcmd set config /section:system.webServer/fastCGI /+[fullPath=’c:php525ntsphp-cgi.exe ‘]

C:>% windir% system32inetsrvappcmd set config /section:system.webServer/fastCGI /+[fullPath=’c:php521php-cgi.exe ‘]

C:>% windir% system32inetsrvappcmd set config /section:system.webServer/fastCGI /+[fullPath=’c:php448php.exe ‘]

Situācijā, kad jums ir trīs vietnes “1. vietne”, “2. vietne” un “3. vietne” un katrai vietnei ir jāizmanto atsevišķa PHP versija. Pēc tam katrā no šīm vietnēm var definēt apstrādātāja kartēšanu, lai atsauktos uz atbilstošo FastCGI lietotnes procesu kopu..

Rūpīgi ievērojiet, ka tas attiecas uz katru procesa baseinu

programmai FastCGI tiek izveidota unikāla identitāte, apvienojot argumentu un fullPath rekvizītus.

C:>% windir% system32inetsrvappcmd set config1 site -section: system.webServer / handlers /+"..[nosaukums = ‘PHP448_via_FastCGI’, ceļš = ‘*. php’, darbības vārds = ‘*’, moduļi = ‘FastCgiModule’, scriptProcessor = ‘c: php448php.exe’, resourceType = ‘Vai nu’]

C:>% windir% system32inetsrvappcmd set config2 site -section: system.webServer / handlers /+"..[nosaukums = ‘PHP521_via_FastCGI’, ceļš = ‘*. php’, darbības vārds = ‘*’, moduļi = ‘FastCgiModule’, scriptProcessor = ‘c: php521php-cgi.exe’, resourceType = ‘Vai nu’]

C:>% windir% system32inetsrvappcmd set config3 site -section: system.webServer / handlers /+"..[nosaukums = ‘PHP525nts_via_FastCGI’, ceļš = ‘*. php’, darbības vārds = ‘*’, moduļi = ‘FastCgiModule’, scriptProcessor = ‘c: php525ntsphp-cgi.exe’, resourceType = ‘Vai nu’]

PHP drošības ieteikumi

Lai nodrošinātu, ka, instalējot PHP, jums ir stingra drošība, zemāk norādītajiem iestatījumiem būs ļoti liela palīdzība. Pirmais solis, lai to izdarītu, ir atrast un noklikšķināt uz atvērtā faila php.ini un pēc tam rediģēt konfigurācijas iestatījumus, kas norādīti zemāk.

allow_url_fopen = Izslēgt Allow_url_include = Izslēgts

Šis iestatījums tiek izmantots, lai atspējotu attālos vietrāžus URL, kurus izmanto failu apstrādes funkcijām, un tas var izraisīt koda ievadīšanas ievainojamības.

register_globals = Izslēgts

Iestatījumu izmanto, lai atspējotu register_globals

open_basedir ="c: inetpub"

Šis iestatījums tiek izmantots, lai ierobežotu apgabalus, kurus failu sistēmā var rakstīt un lasīt PHP procesi.

safe_mode = Izslēgts safe_mode_gid = Izslēgts
Iestatījumu izmanto, lai atspējotu drošo režīmu.
max_execution_time = 30 max_input_time = 60
Iestatījumu izmanto, lai ierobežotu skripta izpildes laiku
memory_limit = 16M upload_max_filesize = 2M post_max_size = 8M max_input_nesting_levels = 64

Šis iestatījums tiek izmantots, lai ierobežotu atmiņas izmantošanu un failu lielumu

display_errors = Izslēgta log_errors = On error_log ="C: izvēles iespēja"

Šis iestatījums tiek izmantots, lai konfigurētu reģistrēšanu un kļūdu ziņojumus

fastcgi.logging = 0

Šis iestatījums liks IIS FastCGI modulim neizpildīt nevienu pieprasījumu, kad PHP, izmantojot FastCGI protokolu, nosūta datus par stderr. Tas arī atspējo FastCGI reģistrēšanu, tādējādi neļaujot PHP nosūtīt kļūdas informāciju pa stderr un spējot ģenerēt 500 atbildes kodus klientam.

expose_php = Izslēgts

Šis iestatījums tiek izmantots, lai paslēptu PHP klātbūtni.

Secinājums

Tur jums tas ir, visi padomi un darbības, kas palīdzēs jums konfigurēt Fastcgi moduli un PHP, lai mitinātu PHP lietojumprogrammas IIS 7 un augstāk. Jums vajadzētu būt iespējai veikt darbību, ja līdz beigām esat izpildījis šajā rakstā norādītās darbības. Tomēr, ja gadās, ka jūs saņemat krājumus, nekautrējieties atstāt komentāru, lai saņemtu palīdzību no kopienas locekļa

Apskatiet šos trīs labākos tīmekļa mitināšanas pakalpojumus

FastComet

Sākuma cena:
2,95 USD


Uzticamība
9.7


Cenu noteikšana
9.5


Lietotāju draudzīgs
9.7


Atbalsts
9.7


Iespējas
9.6

Lasīt atsauksmes

Apmeklējiet vietni FastComet

A2 mitināšana

Sākuma cena:
3,92 USD


Uzticamība
9.3


Cenu noteikšana
9.0


Lietotāju draudzīgs
9.3


Atbalsts
9.3


Iespējas
9.3

Lasīt atsauksmes

Apmeklējiet vietni A2 Hostings

ChemiCloud

Sākuma cena:
2,76 USD


Uzticamība
10


Cenu noteikšana
9.9


Lietotāju draudzīgs
9.9


Atbalsts
10


Iespējas
9.9

Lasīt atsauksmes

Apmeklējiet vietni ChemiCloud

Saistītie padomi

  • Kā izmantot FastCGI, lai mitinātu PHP lietojumprogrammas IIS 7
    starpposms
  • Kā instalēt un konfigurēt MySQL PHP lietojumprogrammām operētājsistēmā Windows IIS 7
    starpposms
  • Kā instalēt MySQL Windows Web serverī, kurā darbojas Apache
    jauniņais
  • Kā PHP Composer instalēt uz CentOS 7 VPS vai Dedicated Server
    starpposms
  • Kā vienlaikus atteikties no visiem WordPress lietotājiem
    starpposms
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me