worker + php-zts

Apache, Lighttpd, nginx, Cherokee
flat-jack
Posts: 36
Joined: 2002-10-22 23:18

worker + php-zts

Post by flat-jack » 2012-01-17 19:44

Hallo Zusammen,

habe ein frisches CentOS installiert und versuche jetzt apache-worker mit php-zts zum Laufen zu bringen...

Bis jetzt sind wir mit OpenSuse und selbst kompiliertem php-ThreadSafe unterwegs gewesen. Das funktioniert einigermaßen gut, ist aber recht nervig, da bei updates oder system-Änderungen jedes Mail php komplett neu kompiliert werden muss. Bei dem neuen System (bemühe mich gerade die Änderungen in CentOS kennen zu lernen) möchte ich dies also umgehen.

-Apache worker ist installiert und in /etc/sysconfig/httpd einkommentiert
-php-zts ist installiert + viele module

soweit funktioniert erstmal alles - php-zts läuft aber anscheinend fast "nackt" nicht mal mysql-unterstützung ist vorhanden! (im gegensatz zum "normalen" php, wo alle module geladen werden).

Also Module laden:
-/etc/php.d nach /etc/php-zts.d kopiert (enthält alle ini-files mit zu ladenden Modulen) z.B. mysql, dom, ...

---> Ende - der apache hängt sich beim starten mit 100% cpu-Last auf. Error-log sagt nichts sinnvolles.

Probiert habe ich schon die Module statt mit
extention=mysql.so
mit
zend_extension_ts=/usr/lib64/php/modules/dom.so

einzubinden - aber das ändert auch nicht.
Kann mir jemand auf die Sprünge helfen? Das wäre klasse!
Vielen Dank
Gruß
Flat-Jack

User avatar
Joe User
Project Manager
Project Manager
Posts: 11599
Joined: 2003-02-27 01:00
Location: Hamburg

Re: worker + php-zts

Post by Joe User » 2012-01-17 20:13

In Deiner /etc/httpd/conf.d/php.conf sollte in etwa Folgendes stehen:

Code: Select all

#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#
<IfModule prefork.c>
  LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
  # Use of the "ZTS" build with worker is experimental, and no shared
  # modules are supported.
  LoadModule php5_module modules/libphp5-zts.so
</IfModule>

Damit ist Dein Problem erklärt und die Lösung liegt im Wechsel zurück auf MPM-Prefork+mod_php oder PHP-ZTS mit statischen Modulen selbst zu kompilieren.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.