Server Support Forum
Anzeige:
[HowTo] Confixx3, Debian / Ubuntu, PHP als FCGI

Zurück   Server Support Forum > >

Anzeige:

Antwort
 
Themen-Optionen Thema bewerten
  #1  
Alt 02.03.2009, 14:35
djrick djrick ist offline
Registered User
 
Registriert seit: 11.2003
Beiträge: 7.466
[HowTo] Confixx3, Debian / Ubuntu, PHP als FCGI

Hallo,

Nachdem ich nun selbst etwas rumgetüftelt habe, habe ich nun ein Howto geschrieben, wie man PHP als FCGI laufen lassen kann im Zusammenspiel mit Confixx.

Grundlagen auf die ich mich stütze:
1.) Confixx mit fcgid • puzich.com :: I took the blue pill
2.) http://www.puzich.com/wp-content/sun...er_create.phps
3.) http://www.aaron-spettl.de/ubuntu/de...cgi-suexec.php

Step 1:
PHP FCGI und Konsorten installieren:
Code:
apt-get install php5-cgi apache2-mpm-worker libapache2-mod-fcgid
Danach will Debian / Ubuntu wahrscheinlich mod_php und den Prefork deinstallieren...das geht soweit in Ordnung

Step 2:
In den Confixx Scripts alles auf suPHP umstellen:
Code:
/pfad/zu/confixx/admin/admin.pl
Dort unter Punkt 2, Webserver: mod_php ausschalten, suPHP anschalten.
Den Adminbereich verlassen.
Danach:
Code:
/pfad/zu/confixx/admin/updates/update_3x.pl
(das dauert was)

Step 3:
Apache2 anpassen:
Code:
vim /etc/apache2/apache2.conf
Am Ende einfügen:
Code:
Include /etc/apache2/confixx_special_vhost.conf

AddHandler fcgid-script .php
AddHandler fcgid-script .php4
AddHandler fcgid-script .php5
AddHandler fcgid-script .phtml
Die o.g. *.conf Datei erstellen:
Code:
touch /etc/apache2/confixx_special_vhost.conf
Step 4:
PHP Fcgi Wrapper Scripte anpassen.
Wir nehman dazu das Script von dieser Seite:
http://www.puzich.com/wp-content/sun...er_create.phps

Wir kopieren also den Inhalt der Webseite in die Datei:
Code:
/usr/local/bin/confixx_fcgi.php
Für den Gebrauch mit Confixx hab ich die Datei etwas abgeändert:
Code:
$conf_path      = '/var/www/';
Da bei mir alle Kunden unterhalb von /var/www liegen. Also /var/www/web1 etc.
Aus:
Code:
// user-dir exists?
 if ( !file_exists($user_path) ) {
Wird:
Code:
// user-dir exists?
 if ( file_exists($user_path) ) {
Weil die Schleife sonst dort abricht, aber die Verzeichnisse bestehen ja schon.

Die darauffolgenden Zeilen kommentieren wir aus:
Code:
   // mkdir($user_path);
   // chown($user_path, $data['kunde']);
   // chgrp($user_path, $data['kunde']);
   // chmod($user_path, 0755);
Dann, aus:
Code:
 fwrite($fh, '<Directory "/home/httpd/htdocs/' . $data['kunde'] . '/html">'."\n");
Wird:
Code:
fwrite($fh, '<Directory "/var/www/' . $data['kunde'] . '/html">'."\n");
Und aus:
Code:
fwrite($fh, '  FCGIWrapper /home/httpd/php-fcgi-scripts/' . $data['kunde'] . '/php5-fcgi-starter .php'."\n");
wird:
Code:
fwrite($fh, '  FCGIWrapper /var/www/' . $data['kunde'] . '/php5-fcgi-starter .php'."\n");
Damit sind wir schon mit dem Bearbeiten des Scripts fertig. Somit liegen die Startscripte für den Wrapper jetzt in dieser Form vor:
Code:
/var/www/web1/php5-fcgi-starter
Jetzt könnte man einweden: "Ja toll und was ist wenn ein Confixx Kunde per FTP die Datei löscht?" Antwort: Kann nichts passieren, da das Erstell-Scripte diese Dateien mit dem "immutable bit" sichert. Sprich: Die Datei gehört zwar dem jeweiligen User, aber sie und selbst der root können die Datei nicht löschen. (Lediglich der Root kann dieses Bit durch chattr -i ... wieder entziehen und dann löschen).

Soweit so gut...fertig für einen ersten Testlauf?
Code:
php /usr/local/bin/confixx_fcgi.php
/etc/init.d/apache2 force-reload
(oder halt neustarten, wenn er zuvor beendet wurde).

Jetzt sollte alles wieder laufen. Wenn dem so ist, müssen wir jetzt nur noch sicherstellen, dass bei der Erstellung eines neuen Users, auch die Wrapperscripte angelegt werden etc.

Das macht man am besten, indem man das Script per Cronjob aufruft. Sollte jemand hier an diesem Punkt einen besseren Vorschlag haben: Bitte immer her damit. Eigentlich braucht das Script ja lediglich bei dem Ereignis "on new confixx user" laufen

Anmerkung: Wir müssen das Script umändern, so dass die Wrapperscripte unterhalb des jeweiligen Confixxusers liegen, weil es sonst zu dem suEXEC Fehler kommt: "cannot get docroot information (/var/www)", da /var/www und andere Sachen nicht dem jeweiligen User gehören die gerade das Script ausführen wollen sondern root oder sonst wem.


Verbesserungsvorschläge sind jederzeit willkommen.
Mit Zitat antworten
Anzeige:

  #2  
Alt 11.01.2010, 00:52
hookx hookx ist offline
Registered User
 
Registriert seit: 01.2010
Beiträge: 7
Hi,

Bei mir Lief es nicht. Mit folgender Änderung ging es dann:
Die Ordner unter /var/www (web1-webX) gehörten root:root und nicht webX:webX. Das habe ich geändert.
Jetzt scheint es zu gehen...

Geändert von hookx (13.01.2010 um 21:56 Uhr)
Mit Zitat antworten
  #3  
Alt 13.01.2010, 21:17
hookx hookx ist offline
Registered User
 
Registriert seit: 01.2010
Beiträge: 7
Hi,

so, wie gesagt, meine einzelnen Pages laufen nun wieder.
Nur mein confixx sowie phpmyadmin nicht.
Dort erhalte ich immer den Fehler:

Zitat:
Zugriff verweigert!

Der Zugriff auf das angeforderte Objekt ist nicht möglich. Entweder kann es vom Server nicht gelesen werden oder es ist zugriffsgeschützt.

Sofern Sie dies für eine Fehlfunktion des Servers halten, informieren Sie bitte den Webmaster hierüber.
Error 403
Mit Zitat antworten
  #4  
Alt 14.02.2010, 16:03
wXXX wXXX ist offline
Registered User
 
Registriert seit: 01.2010
Beiträge: 1
Hab das jetzt auch endlich zum laufen gebracht, genau das mit den rechten von webX Verzeichnissen musste ich auch ändern.

Habe aber leider auch das Problem das Confixx/phpmyadmin nun nicht mehr läuft...

@hookx
hast Du schon eine Lösung für Confixx/phpmyadmin gefunden?
Mit Zitat antworten
  #5  
Alt 15.02.2010, 08:26
Bierhasser Bierhasser ist offline
Registered User
 
Registriert seit: 06.2005
Alter: 45
Beiträge: 10
versuche mal in der config.inc.php
PHP-Code:
$cfg['Servers'][$i]['auth_type'] = 'cookie'
Mit Zitat antworten
  #6  
Alt 04.04.2010, 11:56
daisyduke daisyduke ist offline
Registered User
 
Registriert seit: 04.2010
Beiträge: 22
Frage

Zitat:
/pfad/zu/confixx/admin/updates/update_3x.pl
Gibt es bei mir gar nicht!!!
und nu??
Mit Zitat antworten
  #7  
Alt 04.04.2010, 12:02
Benutzerbild von mr_brain
mr_brain mr_brain ist offline
Registered User
 
Registriert seit: 08.2007
Beiträge: 1.436
mr_brain eine Nachricht über ICQ schicken mr_brain eine Nachricht über AIM schicken mr_brain eine Nachricht über MSN schicken mr_brain eine Nachricht über Yahoo! schicken
Das ist erst beim Update von Confixx mit dabei. Wenn du eine aktuelle Version von Confixx hast, kannst du das Update trotzdem drüber laufen lassen.
__________________
goto; // Welcome 2 Inter.Net
Administration, Colocation, DDoS Mitigation, Nameserver & virtuelle Server
Produkte: www.welcome2inter.net/products
Mit Zitat antworten
  #8  
Alt 04.04.2010, 12:30
daisyduke daisyduke ist offline
Registered User
 
Registriert seit: 04.2010
Beiträge: 22
Hallo Danke für Deine schnelle Antwort

ICh versuche suPHP schon zum x mal einzustellen habe mir gerade die update_3.x.pl besorgt und draufgespielt

Leider bekomm ich das alles nicht hin, im confixx bekomm ich jetzt beim erstellen eines benutzers folgende meldung:

Zitat:
Warning: include(/var/www/confixx/events.inc.php) [function.include]: failed to open stream: Permission denied in /var/www/confixx/html/events.inc.php on line 2

Warning: include() [function.include]: Failed opening '/var/www/confixx/events.inc.php' for inclusion (include_path='.:/var/www/confixx/html/include:/var/www/confixx/html:/var/www/confixx/html/PEAR') in /var/www/confixx/html/events.inc.php on line 2
irgend was mach ich immernoch falsch??
Mit Zitat antworten
Antwort

Lesezeichen

Anzeige:

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Von PHP generierte Bilder werden nicht angezeigt!!! daMichl Webserver 5 23.07.2008 11:46
Apache2 und Update auf PHP5 maxlin1990 Webserver 15 10.12.2007 15:54
Log file, was ist falsch konfiguriert? flug Webserver 8 27.11.2007 15:29
Fehlermeldung durch Cron Email nightwatcher Virtuelle Server 6 12.02.2006 20:14


[HowTo] Confixx3, Debian / Ubuntu, PHP als FCGI
[HowTo] Confixx3, Debian / Ubuntu, PHP als FCGI
[HowTo] Confixx3, Debian / Ubuntu, PHP als FCGI [HowTo] Confixx3, Debian / Ubuntu, PHP als FCGI
Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.