dann schreib ich hier mal ein HowTo, für die nutzung von mod_php mit ISPCP.
was die unterbindung der automatischen zugriffsrechte für die Ordner erteilt.
Das Spiel kann beginnen:Zunächst stoppen wir den Apache da die Datei apache2 im Ordner /usr/bin ausgetauscht wird:
/etc/init.d/apache2 stop
Um uns aber die Möglichkeit für den einsatzes von fastcgi_ispcp zu erhalten benennen wir den alten apache2 um:
mv /usr/sbin/apache2 /usr/sbin/apache2.mpm_worker.disabled
Nun installieren wir den apache als mpm_prefork und den mod_php. Dabei wird das Paket apache2-mpm-worker enfernt.
Das Paket apache2-mpm-prefork wird automatisch mitinstalliert:
apt-get install libapache2-mod-php5
Jetzt wird das Modul fastcgi_ispcp deaktiviert und das Modul mod_php aktiviert:
a2dismod fastcgi_ispcp && a2enmod php5
Der Apache kann nun gestartet werden:
/etc/init.d/apache2 stop
Rechtespiele:Nun sollte der Apache laufen allerdings läuft er nur noch als User www-data der Gruppe www-data. die
ispCP-Verzeichnissen müssen wir entsprechend anpassen. Um dem ispCP erstmal wieder nutzbar zu machen müssen wir die
entsprechenden Rechte ändern. Alte Sessions können wir in dem zuge weglöschen
chmod g+w /var/www/ispcp/gui/phptmp
rm /var/www/ispcp/gui/phptmp/sess*
Ein ähnliches Spiel wiederholen wir mit den anderen Webseiten auf unseren Rechner. Allerdings greifen hier weitere
skripte, nicht zuletzt auch die der Kunden mit dem User und der Gruppe www-data zu. Entsprechend müssen wior das
berücksichtigen:
chown -R :www-data -R /var/www/virtual/*/htdocs
chmod g+w -R /var/www/virtual/*/htdoc*
chown -R :www-data -R /var/www/virtual/*/phptmp
chmod g+w -R /var/www/virtual/*/phptmp
chown -R :www-data -R /var/www/virtual/*/statistics
chmod g+w -R /var/www/virtual/*/statistics
Die Rechte der neuen Spieler:
Die Rechte der vorhandenen Website für den Apache sind nun angepasst, aber wie sieht es aus wenn wir mit dem ispCP
eine neue Domain anlegen? Da der ispCP ja für den Betrieb mit dem fastcgi ausgelegt worden ist, legt er immer schön
brav die neuen Verzeichnisse und Dateien mit dem User vu2xxx der Gruppe vu2xxx mit den rechten 770 bzw. 660 an.
Dazu muss in der Datei /var/www/ispcp/engine/ispcp-dmn-mngr bearbeitet werden. Zuvor sollte aber noch ein backup
dieser datei erfolgen:
cp /var/www/ispcp/engine/ispcp-dmn-mngr /var/www/ispcp/engine/ispcp-dmn-mngr.orig
Der Code wird dann mit dem Editor wie folgt geändert:
Aus (etwa Zeile 1946)
$rs = make_dir(
"$www_dir/$dmn_name/cgi-bin",
$sys_user,
$sys_group,
0755
);
return $rs if ($rs != 0);
wird
$rs = make_dir(
"$www_dir/$dmn_name/cgi-bin",
$sys_user,
# $sys_group,
$httpd_gid,
0755
);
return $rs if ($rs != 0);
Aus (etwa Zeile 1982)
$rs = make_dir(
"$www_dir/$dmn_name/errors",
$sys_user,
$sys_group,
0775
);
return $rs if ($rs != 0);
wird
$rs = make_dir(
"$www_dir/$dmn_name/errors",
$sys_user,
# $sys_group,
$httpd_gid,
0775
);
return $rs if ($rs != 0);
Aus (etwa Zeile 1991)
$rs = make_dir(
"$www_dir/$dmn_name/errors/inc",
$sys_user,
$sys_group,
0775
);
return $rs if ($rs != 0);
wird
$rs = make_dir(
"$www_dir/$dmn_name/errors/inc",
$sys_user,
# $sys_group,
$httpd_gid,
0775
);
return $rs if ($rs != 0);
Aus (etwa Zeile 2071)
$rs = make_dir(
"$www_dir/$dmn_name/htdocs",
$sys_user,
$sys_group,
0775
);
return $rs if ($rs != 0);
wird
$rs = make_dir(
"$www_dir/$dmn_name/htdocs",
$sys_user,
# $sys_group,
$httpd_gid,
0775
);
return $rs if ($rs != 0);
Aus (etwa Zeile 2096)
$rs = make_dir(
"$www_dir/$dmn_name/htdocs/index.html",
$cfg,
$sys_user,
$sys_group,
0644
);
return $rs if ($rs != 0);
wird
$rs = make_dir(
"$www_dir/$dmn_name/htdocs/index.html",
$cfg,
$sys_user,
$httpd_gid,
0644
);
return $rs if ($rs != 0);
Ich hoffe, ich kann anderen eventuell auch damit helfen die Probleme mit scripte haben