# mod_php mínithe: PHP i bpróiseas Apache

> mod_php mínithe: PHP mar mhodúl Apache, conas é a aithint, cad is brí le prefork agus .htaccess, agus cén fáth a gcomhairlíonn php.net ina choinne.

Foinse: https://phpsos.de/ga/php/mod-php-erklaert/  
Staid: 25/10/2026  
Soláthraí: PHP SOS, Cabhair éigeandála PHP agus slándáil freastalaí. Cabhair láithreach trí WhatsApp: https://wa.me/491736494914?text=Dia%20duit%2C%20a%20PHP%20SOS%2C%20t%C3%A1%20cabhair%20de%20dh%C3%ADth%20orainn%20len%C3%A1r%20bhfreastala%C3%AD%20PHP.%20Cuideachta%3A%20%E2%80%A6%20Su%C3%ADomh%20gr%C3%A9as%C3%A1in%3A%20%E2%80%A6

**Go achomair:** Is éard is mod_php ann ná PHP mar mhodúl i bhfreastalaí gréasáin Apache. Ansin bíonn ateangaire PHP iomlán i ngach próiseas Apache agus ritheann sé cód PHP é féin; `apache2handler` is ainm don SAPI. Tá sé éasca a shocrú, ach ceanglaíonn sé PHP le Apache, teastaíonn an prefork MPM de ghnáth agus is beag scaradh a cheadaíonn sé idir suíomhanna gréasáin. Comhairlíonn lámhleabhar PHP i gcoinne do shuiteálacha nua, agus i gcás PHP2Shell measann foireann PHP gurb é mod_php an riosca is airde.

## Cad is mod_php ann?

Le mod_php luchtaíonn Apache PHP mar mhodúl dá chuid féin ina phróisis. Níl aon tseirbhís PHP ar leith ann: nuair ba cheart d'Apache comhad `.php` a sheachadadh, ritheann an próiseas céanna a ghlac leis an iarratas an cód PHP freisin. Ar feadh na mblianta ba é seo an gnáthbhealach chun PHP a oibriú, agus tá sé forleathan fós ar sheanfhreastalaithe agus i roinnt íomhánna Docker.

De réir lámhleabhar PHP, léann PHP mar mhodúl freastalaí a chumraíocht aon uair amháin, nuair a thosaíonn an freastalaí gréasáin. Mar sin ní bhíonn éifeacht ag athruithe ar php.ini agus nuashonruithe an mhodúil ach tar éis Apache a atosú.

Tábhachtach le tuiscint: maireann próisis Apache i bhfad. Glacann próiseas amháin le go leor naisc ceann i ndiaidh a chéile sula gcuirtear ceann eile ina áit; rialaíonn an treoir Apache `MaxConnectionsPerChild` cé mhéad. Fanann an t-ateangaire PHP leabaithe mar an gcéanna ar feadh an ama sin. Má chuireann tú an leabharlann `libphp` ar an diosca in ionad eile, ní athraíonn sé aon rud do na próisis atá ag rith.

Do bhainistíocht agus do dhaoine freagracha as tionscadail is féidir é seo a achoimriú mar seo: le mod_php, aonad amháin iad an freastalaí gréasáin agus PHP. Má leagann tú lámh ar cheann, bíonn tionchar ar an gceann eile. Ciallaíonn nuashonrú PHP atosú an fhreastalaí gréasáin, ritheann earráid i PHP le cearta an fhreastalaí gréasáin, agus is beag is féidir scaradh idir roinnt suíomhanna gréasáin ar an bhfreastalaí céanna.

## Conas a chuirtear mod_php isteach?

Taispeánann lámhleabhar PHP an tsuimiú i dhá chéim: an modúl a luchtú agus a shocrú cé na comhaid a phróiseálfaidh PHP.

```apache
LoadModule php_module modules/libphp.so

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>
```

Molann an lámhleabhar `FilesMatch` le `SetHandler` seachas `AddType` amháin, ionas nach ritheann comhaid uaslódáilte ar nós `bild.php.jpg` mar PHP. Faoi Debian agus Ubuntu, déanann pacáistí ar nós `libapache2-mod-php8.3` agus na horduithe `a2enmod` agus `a2dismod` an obair seo.

Is féidir a sheiceáil trí léamh amháin an bhfuil mod_php gníomhach:

```bash
apachectl -M 2>/dev/null | grep -i php    # Debian/Ubuntu
httpd -M 2>/dev/null | grep -i php        # teaghlach RHEL
apachectl -V | grep -i mpm               # MPM gníomhach (prefork, worker, event)
```

## Prefork, Thread Safety agus acmhainní

Dáileann Apache iarratais trí mhodúl ilphróiseála (MPM). De réir lámhleabhar PHP, teastaíonn an MPM `prefork` ó mod_php mura raibh PHP tógtha le Zend Thread Safety (`--enable-zts`). Tá an chuid is mó de na pacáistí dáilte tógtha gan Thread Safety.

Ciallaíonn prefork: próiseas amháin do gach nasc comhuaineach, agus iompraíonn gach próiseas ateangaire PHP iomlán. Mar sin áitíonn fiú iarratais ar íomhánna nó ar chomhaid CSS próiseas le PHP ar a dhroim. Cosnaíonn sé sin cuimhne agus cuireann sé teorainn leis an ualach is féidir le freastalaí a iompar.

| Gné | mod_php | PHP-FPM |
|---|---|---|
| Cá ritheann PHP? | i ngach próiseas Apache | i seirbhís ar leith |
| MPM Apache | `prefork` de ghnáth | `event` indéanta |
| Úsáideoir do gach suíomh gréasáin | níl, gach rud mar úsáideoir Apache | tá, do gach linn |
| PHP a atosú | le Apache amháin | neamhspleách ar Apache |
| Socruithe do gach eolaire | `php_value` i `.htaccess` | linn nó `.user.ini` |

Dá bhrí sin molann an lámhleabhar PHP-FPM le `mod_proxy_fcgi` do gach suiteáil nua-aimseartha: bainistiú acmhainní níos fearr, scaradh próisis, atosú PHP gan Apache a atosú agus comhoiriúnacht leis an MPM `event`, atá ina chaighdeán ó Apache 2.4. Tá na bunghnéithe ag [PHP-FPM mínithe](https://phpsos.de/ga/php/php-fpm-erklaert/).

## Socruithe le .htaccess, php_value agus php_admin_value

Le mod_php is féidir socruithe PHP a leagan síos go díreach i gcumraíocht Apache. Déanann an lámhleabhar idirdhealú idir modhanna athraithe: féadfaidh iontrálacha le `INI_PERDIR` a bheith i php.ini, `.htaccess` nó `httpd.conf`, iontrálacha le `INI_SYSTEM` i php.ini nó `httpd.conf` amháin.

```apache
# I gcumraíocht VirtualHost: faoi ghlas don fheidhmchlár
php_admin_flag  display_errors off
php_admin_value upload_max_filesize 24M

# Indéanta i .htaccess, ach is féidir leis an bhfeidhmchlár é a fhorscríobh
php_value max_execution_time 60
```

Ní cheadaítear `php_admin_value` agus `php_admin_flag` ach i gcumraíocht an fhreastalaí, ní i `.htaccess`. Tá an t-idirdhealú seo go beacht tábhachtach i gcás na mbeart idirthréimhseach i gcoinne PHP2Shell, mar ní mór do luachanna ar nós `session.upload_progress.enabled` gan a bheith athshocraithe ag an bhfeidhmchlár.

## mod_php agus PHP2Shell: cén fáth a bhfuil an riosca is airde ann

Measann foireann PHP gurb é mod_php an riosca is airde de bharr PHP2Shell: léiríodh exploit ansin sular rith aon chód feidhmchláir. Tagann breiseáin slándála nó seiceálacha sa CMS ró-dhéanach mar sin. Ina theannta sin, ritheann PHP le mod_php le cearta agus i gcuimhne an fhreastalaí gréasáin. Tá an t-aicmiú mionsonraithe ag [Cén fáth a bhfuil an riosca is airde ag mod_php](https://phpsos.de/ga/php2shell/mod-php-risiko/).

Dá bhrí sin, don oibreoir:

1. An modúl PHP a nuashonrú go 8.5.12, 8.4.27, 8.3.36 nó 8.2.35 nó backport deimhnithe.
2. Apache a atosú go hiomlán, ní athlódáil amháin, agus am tosaithe na bpróiseas a sheiceáil.
3. Luachanna idirthréimhseacha a leagan síos trí `php_admin_value` i gcumraíocht an fhreastalaí, mura bhfuil an nuashonrú indéanta fós.
4. Ina dhiaidh sin an t-aistriú go PHP-FPM a phleanáil, mar a thuairiscítear ag [Apache le mod_php a chosaint](https://phpsos.de/ga/server/apache-mod-php/).

## Conas a chabhraíonn PHP SOS go praiticiúil?

- **Aithint:** Seiceálaimid cé na freastalaithe a bhfuil mod_php ag rith orthu, le cén MPM agus ó cén fhoinse pacáiste.
- **Paistiú:** Nuashonraímid an modúl PHP, atosaímid Apache go hiomlán agus cruthaímid an staid.
- **An t-idirthréimhse a chosaint:** I gcás ina bhfuil an nuashonrú bactha, leagaimid bearta php.net síos faoi ghlas i gcumraíocht an fhreastalaí.
- **Aistriú:** Mar chuid de [chruatú freastalaí](https://phpsos.de/ga/leistungen/server-haertung/) déanaimid imirce thástáilte go PHP-FPM le linnte dá gcuid féin.


## Ceisteanna coitianta

**Cén fáth a dtugtar mod_php air má tá php_module mar ainm ar an modúl?**  
Is ainm labhartha é mod_php ar PHP mar mhodúl Apache. Sa chumraíocht luchtaítear é le LoadModule; luann lámhleabhar PHP LoadModule php_module modules/libphp.so mar shampla. Úsáid leaganacha níos sine ainmneacha ar nós php7_module nó php5_module.

**Cén fáth a dteastaíonn an prefork MPM ó mod_php?**  
De réir lámhleabhar PHP, teastaíonn an prefork MPM ó mod_php mura raibh PHP tógtha le Zend Thread Safety. Tá an chuid is mó de na pacáistí dáilte tógtha gan Thread Safety. Tosaíonn prefork próiseas ar leith do gach nasc comhuaineach, rud a éilíonn níos mó cuimhne.

**An bhfeidhmíonn línte php_value in .htaccess le PHP-FPM freisin?**  
Ní fheidhmíonn. Is treoracha Apache de chuid mhodúl PHP iad php_value agus php_flag in .htaccess agus ní bhíonn éifeacht acu ach le mod_php. Faoi PHP-FPM, bíonn socruithe den sórt sin sa linn nó, do luachanna ceadaithe, i .user.ini.

**An gcaithfidh mé mod_php a chur ar leataobh láithreach?**  
Ar dtús tagann an nuashonrú PHP le hatosú iomlán Apache. Tá an t-aistriú go PHP-FPM ciallmhar ina dhiaidh sin, ach ba cheart é a phleanáil agus a thástáil. Ní dhúnann sé PHP2Shell, mar go ndéanann sé difear do PHP-FPM freisin.

## Foinsí

- [Lámhleabhar PHP: Apache 2 faoi Unix](https://www.php.net/manual/en/install.unix.apache2.php)
- [Lámhleabhar PHP: Modhanna athraithe INI](https://www.php.net/manual/en/configuration.changes.modes.php)
- [Doiciméadú Apache](https://httpd.apache.org/docs/)
- [php.net: Fógraí slándála](https://www.php.net/)
