PHP als Fast/CGI u. als Modul auf einem Server - geht das?

Alles, was den Apache betrifft, kann hier besprochen werden.

PHP als Fast/CGI u. als Modul auf einem Server - geht das?

Postby salsa_experience » 23. October 2011 20:13

guten Abend liebe community,

also - ich hatte schon des Öfteren Stress mit der Joomlakompatibilität meines SERVERS. Hab nen Rootserver. Und einen Admin der darauf die Serveradministration macht - und über die Sicherheit des Ganzen wacht.
Jetzt bietet sich anlässlich eines Upgrades und einer kompletten Überarbeitung eine Chance, das doch stärker auf Jooomla abzustimmen. Ich könnte ggf. das einfach ganz kompatibel auf Joomla abstimmen.: Joomla ist nämlich so etwas wie einer der Hauptanwendungen da drauf - auf dem SERVER. Und da kommts immer wieder zu Turbulenzen. Wenn man nämlich PHP als Modul läd (also nicht als Fast/CGI) - und die www.run (Rechte- ) Probleme damit umgehen will, dass man auf die SETGID-Variante setzt,


Und jetzt will ich das Thema am dafür besten Ort diskutieren. Diesem Forum.


Meine FRAGE heute ist die: CGI PHP oder Modul? oder beides zugleich. - geht denn beides zugleich - auf einer phys. Maschine?

zugespitzt lautet die Frage: PHP als Fast/CGI u. als Modul auf einem Server - geht das?

Vorweg: Es ist ja so: Viele Massen-Webhoster setzen bevorzugt CGI-PHP ein, weil es sich leichter auf eine Weise installieren lässt, Für Joomla ist das auch - so sagen viele - die Methode der Wahl.

Installiert man PHP dagegen als Modul, etwa in einem Apache-Webserver, dann ist das PHP-Modul Bestandteil des Webservers und ständig geladen. Es kann außerdem Datenbanklinks über die Lebensdauer einer PHP-Seite hinaus offen halten, was speziell bei Oracle-Datenbanken große Performancevorteile bringt.

Frage: Geht denn auch beides zusammen - bei einem speziell eingerichtgeten Server !?

Das Problem: Mein Admin will nicht auf die hier besprochenen Meth. umsteigen - er sagt dass das zu gefährlich sind. An Weihnachten wollen wir den SERVER überarbeiten - hardwaremaessig aufrüsten. Hab nen Rootserver mit ihm zusammen.

Deshalb die Frage: kann man denn einen Server sozusagen teilen - und einen Teil sozusagen PHP als Modul laden und einen anderen PHP als CGI/FastCGI laden (oder suPHP aktivieren)

Freu mich wenn ihr mir hier ein paar Tipps geben kann. Ich bin nicht der Serverspezialist - Da wir aber wohl genügend Ressoucen haben koennte vielle was gehen - vielle. kann man das ja so einrichten.

Freu mich auf eine lebhafte Diskussion

Grüße
se :)
salsa_experience
 
Posts: 104
Joined: 25. August 2006 10:46

Re: PHP als Fast/CGI u. als Modul auf einem Server - geht

Postby Nobbie » 23. October 2011 20:25

salsa_experience wrote:zugespitzt lautet die Frage: PHP als Fast/CGI u. als Modul auf einem Server - geht das?


Ja.

P.S.: Die CGI (oder auch FastCGI) Variante, um die Rechte entsprechend verwalten zu können, hat aber nur einen Sinn, wenn man sich den Server (wie bei Massenhostern üblich) mit vielen anderen Unbekannten teilt. Wenn das der eigene Server ist und man die vollständige Kontrolle über den Server hat, ist das sinnlos.
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: PHP als Fast/CGI u. als Modul auf einem Server - geht

Postby salsa_experience » 23. October 2011 21:42

hallo Nobbi,

vielen Dank für die schnelle und klare Antwort.

Nobbie wrote:
salsa_experience wrote:zugespitzt lautet die Frage: PHP als Fast/CGI u. als Modul auf einem Server - geht das?


Ja.

P.S.: Die CGI (oder auch FastCGI) Variante, um die Rechte entsprechend verwalten zu können, hat aber nur einen Sinn, wenn man sich den Server (wie bei Massenhostern üblich) mit vielen anderen Unbekannten teilt. Wenn das der eigene Server ist und man die vollständige Kontrolle über den Server hat, ist das sinnlos.


Das freut mich, dass du so klar antwortest. Damit zeigtst du dass es nicht unbed. der Weißheit letzter Schluss sein muss, mit PHP via F/CGI zu laden. Weil ich im Grunde sehr viel mit Joomla auf dem Server mache, und unter Joomla_Usern das sog. www.run-Problem sehr sehr bekannt - und sehr sehr gefürchtet ist, sagen alle Joomla-Freaks - auf alle Fälle auf PHP via F/CGI zu setzen. oder allenfalls auf auf suphp zu setzen.

Du aber hebst dich als einer der Ersten die ich zu dieser Thematik befrage deutlich ab.

Um noch ganz kurz die Alternative - zu bescheiben - also den Weg den mein SERVER-Admin vorschlägt: Der SETGID-WEG:

Die Verzeichnisse besitzen ein sogenanntes SETGID Bit - wird in einem solchen Verzeichnis ein neues File erzeugt, bekommt es AUTOMATISCH die Gruppe des Verzeichnisses (in diesem falle "vhost") UND NICHT Gruppe "www". Und dann kannst Du wieder auf das File zugreifen!

Also mal anders gesagt:

VERZEICHNISS HAT KEIN SETGID BIT
================================

Du erzeugst das File: ownership vhost:vhost
Server erzeugt File: ownership wwwrun:www (kannst Du NICHT mehr lesen)


VERZEICHNISS HAT SETGID BIT
===========================

DU erzeugst das File: ownership vhost:vhost
Server erzeugt File: ownership wwwrun:vhost (Du KANNST ES lesen)
(MAGIC GROUP CHANGE)

Also nochmal anders gesagt: man darf die die SETGID und KEEPOWNER (+t) Bits NICHT WEG Machen
wenn man ein Verzechniss "abschalten" will (mit 0-Rechten), damit machst Du dir die Probleme selbst!

Also - ich glaub dass man das so machen kann. Das wwwrun Problem loesen mit dem SETGID-Bit.

Frage: kann man mit dem filezilla das setbit auch setzten!?


wie findest du denn diese IDEE mit dem SETGIT-bid!?

Und noch gefragt: Was soll ich machen wenn wir den R echner an Weihnachten aufrüsten. Kann ich da etwas besonderes Machen, damit ich diese doofen www.run-Probleme ein für alle mal los bin!?

Freu mich auf einen Tipp von dir als Apache-Experte. Dir - und allen USERN hier - noch einen guten Abend!


lg JJ :D
salsa_experience
 
Posts: 104
Joined: 25. August 2006 10:46

Re: PHP als Fast/CGI u. als Modul auf einem Server - geht

Postby Nobbie » 24. October 2011 08:44

Das ist alles Quatsch unter einem Root Server (hatte ich aber schon geschrieben). Eine CGI/FastCGI Installation hat keinen Sinn und kostet allenfalls Ressourcen.

Da Du den Server komplett selbst aufsetzt, inkl. FTP Server, inkl. Apache, inkl. Joomla kannst Du selbst frei bestimmen, welcher Process mit welcher UserID ausgeführt wird - und zwar nicht mit SETUID oder SETGIT (damit auch, aber das ist Quatsch), sondern einfach FTP und Apache so einstellen, dass sie nicht mit verschiedenen UserIDs laufen (Defaultseinstellung scheint wwwrun und apache zu sein), sondern mit derselben UserID. Beispielsweise auch Apache mit wwwrun ausführen lassen (siehe httpd.conf, USER=...).

Du kannst auch einen neuen User dafür im System anlegen, beispielsweise "joomla". Den ganzen Krempel betreibst Du doch sowieso nur für Joomla. Und dann läßt Du Apache und FTP als "joomla" ausführen.

Nun hast Du schon den Riesenvorteil, dass Du den Server alleine betreibst und willst doch die verkorkste Massenhoster-Lösung einbauen.

Ich glaube, das Grundproblem liegt darin, dass die meisten "Joomla Freaks" keine Ahnung von Linux Rootservern haben...
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: PHP als Fast/CGI u. als Modul auf einem Server - geht

Postby salsa_experience » 24. October 2011 20:44

Hallo Nobbie

vielen Dank für deine klaren Antworten. Die helfen echt weiter. Ich merk dass ich viel viel früher hierher hätte kommen sollen. Die (se) Fragen werden bei Joomla immer sehr sehr einschlaegig beantwortet.
Mein Serveradmin haut mir dann die Argumente bzgl. CGI/FastCGI um die Ohren.
Werd mich jetzt mal einlesen - und gucken dass ich das alles - was du hier geschrieben hast - nachvollziehen kann. Vielen Dank


noch was zur Joomla-Spezifizität:
Es ist vielle. die spezielle Besonderheit bei Joomla die, dass ein Installieren von Extensions zu diesen Turbulenzen führt. Also wenn man eine Extension installiert -dann wird (so war das bei mir leider leider immer wieder) - ein user namens wwwrun angelegt.

Das hat dann immer zu extremen Situationen geführt. Also ich kam dann oft nicht mehr ran - - die Installation war allzuoft unbrauchbar, und ist
sozusagen in der Mitte steckengeblieben.
Nun - denn. Es zeigte sich, dass da hier irgendwie das SYSTEM sozusagen irgendwie mit drinne war. Kann ich denn die von dir beschriebene
Festlegung der USER (in FTP) auch für solche Prozesse schonmal festlegen oder mitbestimmen.

Ich glaub dass du die (se) spezielle Joomla-Speztifität sicher auch sehr sehr gut kennst. Ich habe das Gefühl dass ich mit deiner Methode endlich weiter komme. Dass ich diese doofen http://www.run-probleme damit wohl endlich hinter mir lassen kann.

Alsio ich werd mich jetzt mal einlesen. Thx nochmals.


LG
SE


Der Inhalt der /etc/ftpusers


Code: Select all
 adabas
 amanda
 at
 bin
 cyrus
 daemon
 dbmaker
 db2fenc1
 db2inst1
 db2as
 db4web
 dpbox
 empress
 fax
 firewall
 fnet
 games
 gdm
 gnats
 irc
 informix
 ingres
 ixess
 lnx
 lp
 mail
 man
 mdom
 mysql
 named
 news
 nobody
 nps
 oracle
 perforce
 pop
 postfix
 postgres
 root
 sapdb
 skyrix
 squid
 uucp
 virtuoso
 vscan
 wnn
 wwwrun
 yard
 zope
 # End.


in einer solchen Datei befinden sich alle Benutzernamen, die ftp nicht nutzen dürfen. Das kann man so konfigen!


Und dies ist n beispiel für die die /etc/vsftpd.conf

Code: Select all
 anonymous_enable=NO
 chroot_local_user=YES
 write_enable=yes
 guest_enable=no
 guest_username=ftp
 #hide_ids=YES
 listen=YES
 local_enable=YES
 max_clients=100





in dem thread zum wwwrun-problem auf dem rootforum steht: http://www.rootforum.org/forum/viewtopi ... un#p312937
Ich glaube, dass ich das Problem durch das hinzufügen des Benutzers wwwrun zu der psacln Gruppe lösen konnte. Dies habe ich über Yast gemacht. Ich muss jetzt allerdings erstmal weiter testen, ob vielleicht bei anderen Sachen noch Probleme auftauchen. Letztlich soll eine Joomlainstallation ordnetlich laufen und Komponenten nachträglich installiert werden können ohne irgendwelche Fehlfunktionen.

Darüber hinaus gibts 238 matches zu dem Thema wwwrun http://www.rootforum.org/forum/search.php?keywords=wwwrun&fid%5B0%5D=117
salsa_experience
 
Posts: 104
Joined: 25. August 2006 10:46


Return to Apache

Who is online

Users browsing this forum: No registered users and 25 guests