hallo zusammen,

ich war gerade dabei apache und php zu installieren bzw. zu konfigurieren, und dabei bin ich auf folgendes Problem gestoßen.
Ich habe mich stets an die Anleitung aus dem Wiki gehalten https://wiki.archlinux.de/title/LAMP_Installation

ich habe die Pakete: apache php php-apache mysql
installiert.

und danach bin ich zur konfiguration vom httpd.conf übergegangen.
Wenn ich das Modul
LoadModule php5_module modules/libphp5.so

enable und danach den Apache restarte, bekomme ich folgende Fehlermeldung:
[Sun Jul 06 12:39:14.183924 2014] [:crit] [pid 29934:tid 3069771776] Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe.  You need to recompile PHP.
AH00013: Pre-configuration failed
Das heißt, ich müsste jetzt PHP manuell kompilieren, damit ich das PHP Module nutzen kann.

Hat jemand einen ähnliche Erfahrung gemacht?
Du könntest auch einfach einen weniger überfetteten Webserver nutzen … Anleitungen für lighttpd und nginx stehen auch im Wiki. 🙂 Für mich ist Apache „broken by design“ 🙂
Dirk schriebDu könntest auch einfach einen weniger überfetteten Webserver nutzen … Anleitungen für lighttpd und nginx stehen auch im Wiki. 🙂 Für mich ist Apache „broken by design“ 🙂
Ich merke auf meinem raspi das der apache mit mysql auch etwas überfordert ist. Habe aber keine Erfahrung mit lighthttpd bzw nginx. Kannst du einen empfehlen?
nginx ftw! Hilft natürlich nicht mit BloatSQL.
Creshal schriebnginx ftw! Hilft natürlich nicht mit BloatSQL.
Danke für die schnelle Antwort.
Hmm, OK. Hatte ich mir schon gedacht.

Hast du auch noch eine alternative zu mysql?
Nachdem es genug Software gibt, die nur mit MySQL läuft… nope.

SQLite hat weniger Overhead und ist für Kleinstprojekte prima, muss aber unterstützt sein. Postgres ist auch nicht spürbar schlanker als MySQL, und hat noch schlechtere Unterstützung…
Ich habe auch schon mit sqlite "rumgespielt". Bin aber immer wieder an der Unterstützung gescheitert.
Hatte gehofft es gäbe eventuell noch eine alternative die auch gut mit nginx funktioniert und meinen raspi nicht lahmlegt.

Die Performance wird dann mit nginx wohl auch nicht besser wenn mysql immer noch bremst.

Danke für deine Einschätzung.
Kommt drauf an, wo dein Flaschenhals ist. nginx ist so performant, dass ich es noch nicht geschafft habe, es sinnvoll zu benchmarken – der TCP-Stack im Kernel krepiert, bevor nginx auch nur messbare CPU-Last erzeugt bei der Auslieferung von statischen Inhalten.

PHP wird daduch aber auch nicht weniger schlecht. Wenn Apaches Overhead dem RasPi den Rest gegeben hat, könntest du Glück haben. Ansonsten ists ungefähr so sinnvoll wie 'nen Trabbi tieferzulegen.
cipher schriebDie Performance wird dann mit nginx wohl auch nicht besser wenn mysql immer noch bremst.
Ja, MySQL ist der Hemmschuh eines jeden Webserver. Aber warum auch noch zusätzlich mit Apache im Rückwärtsgang versuchen, vorwärts zu kommen 🙂

Wie gesagt, sowohl für nginx als auch den von mir bevorzugten lighttpd gibt es im Wiki Anleitungen.

Die Anleitung für lighttpd umfasst dabei auch MariaDB (vulgo MySQL), PHP oder Python, sowie Infos darüber, warum lighttpd kein htaccess nutzt, und was es stattdessen gibt 🙂
Danke euch beiden.

Werde mir dann doch mal beide ansehen, und mal schauen ob es Unterschiede gibt.
Das eine Datenbank eine Performancebremse ist liegt glaube ich in der Natur einer Datenbank.
cipher schriebDas eine Datenbank eine Performancebremse ist liegt glaube ich in der Natur einer Datenbank.
Das liegt vor allem an MariaDB/MySQL 🙂
Naja, im Vergleich zu anderen Datenbanken ist es ja immer noch genügsam.

Klar kann man MariaDB/MySQL nicht mit M$-SQL oder Oracle Vergleichen aber da geht es richtig ab.

Ich werde mich wohl doch wieder mehr mit SQLite auseinandersetzen.
MySQL kann schon schnell sein… sobalds ein paar Gigabyte RAM zum warmlaufen hat. Wird am RasPi eher schwer. 🙂
Ja klar.

Der raspi ist ne tolle Sache, hat aber leider nur 512MB RAM. er läuft bei mir auch ganz gut, halt nur der Apache/MySQL bringt ihn an seine Grenzen. Aber vielleicht klappt das ja mit lighthttpd/nginx besser.

Er läuft zur Zeit noch mit einem minimal Wheezy. Möchte mir jedoch auf einer anderen SD-Card eine archLinux installation anschauen.
512? Verwöhntes Pack heutzutage, damals™ hatten wir nur 256! 😃 Na, trotzdem knapp, nachdem ein Debian-Grundsystem ~200 und MySQL alleine gerne >120 MiB brauchen. Da ist nicht viel Luft für Anwendungen.
Creshal schrieb512? Verwöhntes Pack heutzutage, damals™ hatten wir nur 256! 😃 Na, trotzdem knapp, nachdem ein Debian-Grundsystem ~200 und MySQL alleine gerne >120 MiB brauchen. Da ist nicht viel Luft für Anwendungen.
Und dann kommen wir zum berühmten Statement.

Niemand braucht mehr als 640KB RAM.

😉

Spaß beiseite. Wheezy läuft eigentlich ganz gut, braucht auch nicht viel RAM. Allerdings läuft auch nicht viel im Moment darauf.

Zur Zeit sieht es so aus.
# free
            total       used       free     shared    buffers     cached
Mem:        496948     384580     112368          0       8580     321236
-/+ buffers/cache:      54764     442184
Swap:      1048572          0    1048572
Ein Rev-2-Raspi, der derzeit nur ein DNS- und DHCP-Server ist 🙂
$ uname -rms
Linux 3.12.23-1-ARCH armv6l


$ free
             total       used       free     shared    buffers     cached
Mem:        189404      72032     117372       4356       9124      28276
-/+ buffers/cache:      34632     154772
Swap:            0          0          0
Creshal schrieb SQLite ..... ist für Kleinstprojekte prima
... wie z.B. firefox 😉
Um die Ursprüngliche Frage zu beantworten:

Mit mod_mpm_worker funktioniert PHP:

In der httpd.conf statt mod_mpm_event mod_mpm_worker laden:
#LoadModule mpm_event_module modules/mod_mpm_event.so
LoadModule mpm_worker_module modules/mod_mpm_worker.so