Von PHP_CGI auf mod_php wechseln

Christian-K

New Member
Hallo, ich habe einen V-Server (bitte nicht hauen) auf dem läuft Debian 3.1, Confixx 3.1.x Pro und Php 5.2.0-8 etch1 als PHP_CGI garniert mit suphp und suexec - das ist die default Configuration.
Das möchte ich ändern, ich würde gerne einfach ganz oldschool-mäßig den mod_php für Apache nutzen.
Das klingt slebst für mich noch relativ einfach, ist es aber nicht da Confixx da irgendwie seine Finger im Spiel hat und ich Confixx auch noch weiterhin nutzen möchte.
Zu den Gründen des Umstiegs ist nur eines zu sagen: Performance, Performance und nochmals Performance - denn seien wir mal ehrlich: PHP_CGI und suphp sind nicht wirklich der Brüller, geht es um Performance.
Achja und über die Sicherheitstechnischen Aspekte bin ich mir bewusst.

Es reicht nicht aus, einfach "php5.mod(link zum compiled-php5 im Apache2-Ordner)" aus mods-available nach mods-enabled zu kopieren und das vorhandene suphp.mod und cgi.mod daraus zu entfernen.

Wäre nett wenn ihr mir ein paar Tips und anregungen dazu geben könntent - ich möchte dabei auch gerne "learning by doing" praktizieren.

Mfg Christian-K
 
aptitude install libapache2-php5 oder so ähnluch.
a2dismod suphp

/root/confixx/admin/admin.pl -> suphp abschalten.


counterscript mit -fa starten
Apache restarten (falls das counterscript das nicht getan hat)

das sollte scho reichen...

PS: Sag bitte mal hinterher, obs wirklich schneller ist.
 
Vielen lieben dank, werde es heute Abend gleich versuchen und dann bescheid sagen.
Danke und Mfg Christian-K
Edit: admin.pl kann ich nicht öffnen - zeigt mir nur codierten Brei an.Allerdings befindet sich im selbigen Verzeichniss die Datei "confixx_main.conf" mit folgenden einträgen zu suphp und php.ini:
Code:
## php 

# Can be 'mod_php' or 'suphp'
# NOTE: only one engine can be used with Confixx
# otherwise it may not work
$php_engine = 'suphp';

# required if suphp is used
# this is a directory where users' and confixx webpanel php.ini files will be stored
# for confixx webpanel $php_ini_dir/php.ini
# for users $php_ini_dir/$user/php.ini
# NOTE: this path should be in /etc/ or /usr/local/etc
$php_ini_dir = '/etc/apache2/confixx_phpini';

#if 1 it parses httpd specials for php_admin_flag and php_admin_value 
#and put the settings into the domain php.ini 
#if 0 print it as is
$php_special = '1';

# required if suphp is used
# Confixx copies this file into $php_ini_dir/$user directory
# and append user specific directives
$php_ini_file = '/etc/php5/cgi/php.ini';

# optional if suphp is compiled with --paranoid option
# it adds suPHP_UserGroup ##user## ##user## directive to vhost
$suphp_paranoid = '';
Ich gehe richtig in der annahme das ich nach deiner kurzen Anleitung "$php_engine = 'suphp';" in 'mod_php' ändere und $php_ini_dir = '/etc/apache2/confixx_phpini'; weglasse?
 
Last edited by a moderator:
Vielleicht liegt Deine admin.pl woanders.

Die Admin pl musst Du ausführen, sonst stimmt hinterher ne Menge nicht, mit Ändern der Config und Counterscript isses nicht getan!!

Wenn ich die Zeile auf meiner Shelle reinhaue, dann kommt:

Code:
###################################
        CONFIXX Admin-Setup
###################################

Im Confixx Admin-Setup können Sie wichtige
Systemeinstellungen für die Confixx-Verwaltung
vornehemen.

    (1) Allgemein
    (2) Webserver
    (3) E-Mail
    (4) Sprache
(0) Beenden

Bitte wählen Sie [0..4]:

Kannst ja mal
perl /root/confixx/admin/admin.pl
versuchen.
 
Also ich habe folgendes gemacht:
aptitude install libapache2-mod-php5 --> scheint schon drauf zu sein
In pearl 'admin.pl' "suphp" deaktiviert und gespeichert.
a2dismod suphp -->geklappt
a2enmod php5 -->geklappt
Counterscript mit parameter gestartet -->geklappt
Apache2 restartet -->geklappt

Jetzt sagt er auch in einer phpinfo-datei das php als "apache handler" installiert ist.
Nur ging nun mein Adserver-Script nicht mehr - beim einloggen zeigte er eine safemode warnung an - also über httpd-spezial "php_admin_value safe_mode off" eingetragen und schon funktioniert es.

Vielen lieben dank dir nochmal, dachte es wird ein viel größerer AKT werden.
Also die Geschwindigkeit beim ausführen von Scripts scheint wirklich gestiegen zu sein, vor allem wenn ich im backend meines Adservers rumhantiere kommt es mir schneller vor, ok ich habe im gleichen Zug noch einen table-cache von 64M in Mysql festgelegt.... Aber dennoch denke ich das es schneller läuft.
Vor allem kann ich nun endlich meine PHP-caches nutzen.

Jetzt muss ich nur nochmals den eaccelerator neu kompilieren...

Mfg Christian-K
 
Also laut meinem phpinfo-file steht es auf:
Code:
/home/www/web1/html/:/home/www/web1/phptmp/:/home/www/web1/files/:/home/www/web1/atd/
als local Value und als Master-Value auf "no value"
Eigentlich ist das doch richtig/genug, oder?

Mfg Christian-K
 
Back
Top