httpd: Configuration error: More than one MPM loaded

Fórumok

Sziasztok.

Néhány napja keresgélem a megoldást, de nem értem mi lehet a gond.

Egy Arch szerveren fut a httpd, de szeretnék php kódokat is érzékelni rajta. Viszont sehogyan sem tudom erre rábírni. Rengeteg leírás alapján tettem kísérletet ( az archwiki után pl. ez alapján: http://rashinthamaduneth.blogspot.hu/2015/01/install-lamp-linux-apache-… ), de az apachectl configtest mindnél hibát jelzett:

# apachectl configtest
AH00534: httpd: Configuration error: More than one MPM loaded.

A fenti leírás ezt várta el tőlem a httpd.conf fájlban:

"
Insert this lines in it.

# Use for PHP 5.x:
LoadModule php5_module modules/libphp5.so
Include conf/extra/php5_module.conf
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

#also this line

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
"

Szóval amint ezzel mentem a konfigfájlt, képtelenség indítani a httpd-t.
Szerintetek mi lehet a baj?

------
# pacman -Ss php | grep "installed"
extra/php 5.6.16-3 [installed]
extra/php-apache 5.6.16-3 [installed]
extra/php-cgi 5.6.16-3 [installed]
extra/php-gd 5.6.16-3 [installed]
extra/php-intl 5.6.16-3 [installed]
extra/php-mcrypt 5.6.16-3 [installed]
extra/php-xcache 3.2.0-2 [installed]
community/phpmyadmin 4.5.3.1-1 [installed]

---------
# apachectl -l
Compiled in modules:
core.c
mod_so.c
http_core.c

Hozzászólások

Valoszinuleg apache-ban prefork mellett masik mpm modul is meg van adva betoltesre (worker, event stb.), azt keresd meg hol van beallitva.

Zsír.

A LoadModule mpm_worker_module modules/mod_mpm_worker.so
sort letiltottam, httpd restart, fut. Ezt mindenképp köszönöm Neked, 5 napja szenvedtem vele

De a szokásos info.php nem jön be a szerveren localhoston lynx-szel sem (Error 404)

(
# cat /srv/http/info.php
<?php
phpinfo();
?>

)

---
--- A gond akkor van, ha látszólag minden működik. ---
---

És mit mond a log? Milyen url-t adtál meg? localhost/info.php-t?

A fenti leírás ezt várta el tőlem a httpd.conf fájlban:

"
Insert this lines in it.

# Use for PHP 5.x:
LoadModule php5_module modules/libphp5.so
Include conf/extra/php5_module.conf

Az ugye megvan, hogy az apache-csomag nem tartalmaz conf/extra/php5_module.conf fájlt?

Az ArchWiki szépen leírja, hogyan kell php-t varázsolni az apache alá - miért nem azt követed?
Első kérdés: a php-apache csomagot feltelepítetted (ahogy az ArchWiki írja is: To install PHP, first install the php and php-apache packages.)?

Néhány napig nem néztem ide.
Nos, 2 db virtualhostot csináltam és elfelejtettem, hogy a 80-as porton eme két könyvtárba kell tennem az info.php-t.

Szóval megy, amúgy az archwikit olvasom, és tudom, hogy a php5_module.conf fájlt is külön kell létrehozni.

Már a phpmyadmin kezdőlapja is bejön, már csak a mysql van hátra a mariadb helyett, meg a webmin cgi-igénye, ami még egy jó képrejtvény lesz nekem

Tehát egyelőre folyamatosak a sikerélményeim, kösz mindenkinek a segítséget :)

---
--- A gond akkor van, ha látszólag minden működik. ---
---

tudom, hogy a php5_module.conf fájlt is külön kell létrehozni

Nem. Ha olvasod az ArchWikit, akkor láthatod, hogy Include conf/extra/php7_module.conf kell (vedd észre, hogy 7, nem pedig 5). A php-apache csomagban található egy etc/httpd/conf/extra/php7_module.conf. Szóval nem kell semmiféle fájlt külön létrehozni.

Amit tenni kell(ett volna):

  1. Telepíted a php és php-apache csomagokat.
  2. httpd.conf-ban az LoadModule mpm_event_module modules/mod_mpm_event.so sort kommenteled, a LoadModule mpm_prefork_module modules/mod_mpm_prefork.so pedig érvényessé teszed ("kikommenteled").
  3. Szintén a httpd.conf-ba felveszed a LoadModule php7_module modules/libphp7.soInclude conf/extra/php7_module.conf sorokat.
  4. httpd restart, és kész