Go achomair: Chun PHP a fhorbairt go háitiúil tá trí bhealach choitianta ann: an freastalaí gréasáin ionsuite (php -S) do thurgnaimh thapa, na híomhánna oifigiúla PHP Docker do thimpeallachtaí in-athchruthaithe agus uirlisí ar nós DDEV, a chruthaíonn timpeallachtaí tionscadail réidh do WordPress, TYPO3, Shopware nó Laravel. Tá an chomhoiriúnacht níos tábhachtaí ná an uirlis: ba cheart go ritheann an leagan PHP céanna leis na heisínteachtaí céanna go háitiúil agus beo. Don tslándáil, áfach, is é an t-am rite ar an bhfreastalaí a chuireann i gcónaí ar deireadh.
Cén fáth timpeallacht forbartha ar leith?
Tá sé contúirteach athruithe a dhéanamh go díreach ar an bhfreastalaí beo: tá gach botún clóscríbhneoireachta infheicthe láithreach do chustaiméirí, agus is minic a fhanann comhaid tástála. Scarann timpeallacht áitiúil triail ón oibriú. Is í an áit freisin ina ndéantar leaganacha nua PHP agus nuashonruithe slándála a thástáil ar dtús.
Do bhainistíocht agus do cheannaireacht TF, dá bhrí sin, ní hé an cheist an bhfuil timpeallacht forbartha ann, ach an bhfreagraíonn sí don chóras beo. Folaíonn timpeallacht áitiúil le PHP 8.4, agus 8.1 fós ag rith beo, fadhbanna in ionad iad a léiriú. Baineann an rud céanna le leagan an bhunachair sonraí, an fhreastalaí gréasáin agus eisínteachtaí ar nós intl, gd nó pdo_mysql: d'fhéadfadh eisínteacht amháin a bheith ar iarraidh ina chúis nach dtugtar earráid faoi deara go dtí go bhfuil sé beo.
Na roghanna i mbeagán focal
| Rogha | Oiriúnach do | Láidreachtaí | Teorainneacha |
|---|---|---|---|
Freastalaí ionsuite php -S |
turgnaimh ghearra, scripteanna beaga | gan bogearraí breise a shuiteáil | ní chuireann sé in ionad Nginx ná Apache, ní do líonraí poiblí |
| Íomhá oifigiúil Docker | foirne, timpeallachtaí in-athchruthaithe | leagan inchinntithe le clib, gar d'oibriú coimeádáin | cumraíocht agus comhoibriú roinnt coimeádán a thógáil tú féin |
| DDEV | tionscadail CMS agus creata | cineálacha tionscadail réidh, bunachar sonraí agus freastalaí gréasáin san áireamh | éilíonn sé Docker, coinbhinsiúin féin |
| PHP suiteáilte go háitiúil | forbróirí aonair | tapa, díreach | deacair leaganacha roinnt tionscadal a choimeád i gcomhthreo |
An freastalaí gréasáin ionsuite
Ó PHP 5.4 i leith tá freastalaí gréasáin beag sa líne ordaithe. Tosaíonn sé san eolaire reatha nó le -t i ndoiciméadeolaire eile:
php -S localhost:8000 -t public/
Mar rogha, tabhair script ródaire a ritheann ar dtús le gach iarratas. Tá an lámhleabhar soiléir sa rangú: ba cheart don fhreastalaí tacú le forbairt, ní freastalaí gréasáin iomlán é agus níor cheart é a úsáid i líonra poiblí. Ceangail é le localhost dá bhrí sin, ní le 0.0.0.0, nó d'fhéadfadh sé a bheith inrochtana i WiFi na cuideachta nó an óstáin. Tuilleadh faoin líne ordaithe ag PHP ar an líne ordaithe.
Docker: íomhánna oifigiúla PHP
Tá na híomhánna oifigiúla ar fáil i roinnt leaganacha: cli don líne ordaithe, apache le Apache agus mod_php, fpm don oibriú taobh thiar de Nginx nó seachfhreastalaí eile, móide leaganacha Alpine d'íomhánna beaga. Tús tapa le Apache:
docker run --rm -p 8080:80 -v "$PWD":/var/www/html php:8.4-apache
Tá na teimpléid php.ini-development agus php.ini-production sna híomhánna san eolaire $PHP_INI_DIR. Go háitiúil tá an teimpléad forbartha ciallmhar, mar go dtaispeánann sé earráidí. Don táirgeadh molann doiciméadú na híomhá go sainráite an teimpléad táirgthe. Suiteálann tú eisínteachtaí leis na scripteanna cúnta a thagann leis, docker-php-ext-configure, docker-php-ext-install agus docker-php-ext-enable. Míníonn Íomhánna oifigiúla PHP Docker conas a oibríonn clibeanna agus digests.
DDEV: timpeallachtaí réidh do CMS agus creataí
Tógann DDEV ar Docker agus socraíonn sé freastalaí gréasáin, PHP, bunachar sonraí agus seirbhísí cúnta do thionscadal. Leanann na treoracha tús tapa beagnach i gcónaí an patrún céanna:
ddev config --project-type=wordpress --docroot=web
ddev start
ddev composer install
ddev launch
Mar chineálacha tionscadail aithníonn DDEV wordpress, typo3, shopware6, laravel, symfony, drupal11, magento2 agus an cineál ginearálta php, i measc nithe eile. Socraíonn tú an leagan PHP i .ddev/config.yaml; de réir an doiciméadaithe tá leaganacha ó 5.6 go 8.5 indéanta, is é 8.4 an réamhshocrú:
# .ddev/config.yaml (sliocht)
php_version: "8.3"
webserver_type: nginx-fpm # nó apache-fpm
Ar an gcaoi sin freagraíonn an timpeallacht áitiúil don leagan beo, fiú mura é an ceann is nuaí é.
Forbairt áitiúil, staid an phaistithe agus PHP2Shell
Tar éis PHP2Shell chuir roinnt soláthraithe ardáin in iúl botún smaoinimh tipiciúil. Leagann Vercel béim de réir a bhulletin nach leor nuashonrú ar an timpeallacht fhorbartha áitiúil, ar chód an fheidhmchláir ná ar na breiseáin; is é an t-am rite PHP a sheachadann i ndáiríre atá cinntitheach. Ní chosnaíonn PHP 8.4.27 go háitiúil an freastalaí le 8.4.26.
Ar an láimh eile tugann an timpeallacht fhorbartha rioscaí dá cuid féin léi a fhéadfaidh dul isteach sa táirgeadh:
- Ini forbartha sa táirgeadh: Tá
display_errorsar siúl iphp.ini-development. Má théann an comhad seo ar an bhfreastalaí, feiceann cuairteoirí cosáin agus teachtaireachtaí earráide. Féach Aschur earráidí a mhúchadh sa táirgeadh. - Comhaid thástála dearmadta: Níl baint ag comhaid
phpinfo(), dumpaí bunachair sonraí ná comhaid.envle sonraí rochtana leis an imscaradh. - Freastalaithe forbartha oscailte:
php -Snó coimeádáin le poirt fhoilsithe ar ríomhairí sa líonra. - Íomhánna imithe i léig: Ní nuashonraítear íomhánna áitiúla leo féin; tar éis eisiúint slándála PHP ba cheart an timpeallacht fhorbartha a aththógáil freisin, ionas go ritheann tástálacha leis an leagan ceartaithe.
Socraigh an leagan PHP in aon áit amháin, mar shampla sa Dockerfile nó in .ddev/config.yaml, agus athraigh é le nuashonruithe in éineacht le cumraíocht an fhreastalaí.
Conas a chabhraíonn PHP SOS go praiticiúil?
Sa chonradh cothabhála slándála cinntímid go n-oireann forbairt agus oibriú dá chéile:
- Comparáid: Cuirimid leagan PHP agus eisínteachtaí na dtimpeallachtaí forbartha, tástála agus beo i gcomparáid.
- Sreabhadh nuashonraithe: Suiteáiltear eisiúintí nua PHP ar dtús sa timpeallacht thástála, ansin beo, gach uair le hatosú.
- Imscaradh a sheiceáil: Féachaimid chuige nach dtéann ini forbartha, comhaid thástála ná sonraí rochtana ar an bhfreastalaí.
- Doiciméadú: Tá a fhios agat i gcónaí cén leagan atá ag rith cá háit.
Ceisteanna coitianta
An bhfuil cead agam freastalaí gréasáin ionsuite PHP a úsáid go poiblí?
Níl. Deir lámhleabhar PHP go sainráite go bhfreastalaíonn an freastalaí a tosaíodh le php -S ar fhorbairt agus nár cheart é a úsáid i líonra poiblí. Don oibriú baineann PHP-FPM le Nginx nó le Apache.
Cad é DDEV?
Is uirlis é DDEV a thógann ar Docker agus a chruthaíonn timpeallachtaí forbartha réidh do thionscadail PHP. Aithníonn sé cineálacha tionscadail do WordPress, TYPO3, Shopware 6, Laravel, Drupal agus córais eile.
An leor an leagan PHP áitiúil a nuashonrú?
Ní leor. I gcoinne leochaileachtaí ar nós PHP2Shell is é an t-am rite PHP a sheachadann i ndáiríre atá tábhachtach, is é sin an ceann ar an bhfreastalaí. Ba cheart don timpeallacht áitiúil an leagan céanna a bheith aici, áfach, ionas go mbeidh brí le tástálacha.
Cén php.ini a úsáidim go háitiúil?
Go háitiúil tá php.ini-development ciallmhar, mar go dtaispeánann sé earráidí. Sa táirgeadh ba cheart php.ini-production a úsáid. Tagann an dá theimpléad le híomhánna oifigiúla Docker.