# Einstellung Dokument Root vhost



## Huflatisch (28. Jan. 2013)

Hallo

Wo kann ich einstellen das in der vhost, der korrekte Pfad und nicht der Symlink Dokumentenroot steht.

Problem ist das die Servervariablen nicht stimmen:

```
echo "Dirname" .dirname(__FILE__); 
Ausgabe: /var/www/clients/client6/web13/web/

echo "PHP Dokument Root " .$_SERVER["PHP_DOCUMENT_ROOT"];
Ausgabe:  /var/www/clients/client6/web13

echo "Dokument Root " .$_SERVER["DOCUMENT_ROOT"];
Ausgabe: /var/www/domain.de/web  #so steht er in der vhost
```
Alle Scripte lesen den Pfad über "dirname" aus schneiden über "documentroot" das zuviele ab und setzen dann über "http_host" den korrekte Domain davor um den richtigen Pfad zu den Dateien zu bekommen. 
Klappt leider nicht weil der Dokumentroot nicht passt.

"phproot" kann ich auch nicht nehmen da er das /web/ nicht mit erfasst.

cu
huflatisch


----------



## Till (29. Jan. 2013)

Welchen PHP Modus verwendest Du in der Webseite?



> Alle Scripte lesen den Pfad über "dirname" aus schneiden über "documentroot" das zuviele ab und setzen dann über "http_host" den korrekte Domain davor um den richtigen Pfad zu den Dateien zu bekommen.


Dann sind die aber schlecht programmiert, solltest Du mal dem Autor als Bug melden.


----------



## Huflatisch (29. Jan. 2013)

Hallo


```
Server API = CGI/FastCGI
```
Das sind joomla Scripte. Wäre Quatsch alle modulscripte umzuschreiben. Aufn alten Server liefs auch problemlos.



cu Huflatisch


----------



## Till (29. Jan. 2013)

Versuch mal die Einstellung in PHP zu ändern:

PHP: Description of core php.ini directives - Manual


----------



## Huflatisch (29. Jan. 2013)

Hallo

Danke für die Info

bringt aber keinen Änderung. Habe mit phpinfo die Servervariablen geprüft.

Welches Script ist für die Vergabe der Dokumentroot in den vhosts zuständig. Es würde ja reichen dieses so anzupassen das da keine symlinks genutzt werden.
Wiso werden überhaupt in dieser Menge in den apache Dokument Roots so viel Symlinks verwendet (vier pro Domain hab ich gefunden)
.... Kompatiblität zu alten ISPConfig Versionen ???

cu
Huflatiisch

PS: Habe gerade festgestellt das unter PHP Einstellungen in der Domain (bei ISPConfig) sich bei den Servervariablen etwas ändert. Werde das heute Abend mal mit paar Scripten testen


----------



## Till (29. Jan. 2013)

> Welches Script ist für die Vergabe der Dokumentroot in den vhosts zuständig. Es würde ja reichen dieses so anzupassen das da keine symlinks genutzt werden.


Du kannst einfach das vhost master template in /usr/local/ispconfig/server/conf/ ändern. Da aber das aktuelle Schema auf ein paar hunderttausend Servern weltweit keine Probleme macht, solltest Du den Fehler in Deinen joomla Modulen trotzdem mal an deren Entwickler melden damit er das behebt. Eine Annahme dass die Pfade gleich sind ist eben nicht korrekt, da sie nicht gleich sein müssen.



> Wiso werden überhaupt in dieser Menge in den apache Dokument Roots so viel Symlinks verwendet (vier pro Domain hab ich gefunden)
> .... Kompatiblität zu alten ISPConfig Versionen ???


Zur vereinfachten Shell Navigation. Oder kannst Du Dir bei der Navigation auf der Shell ein paar hundert oder tausend numerische ID's mit zugehörigen Domainnamen merken?


----------



## Huflatisch (29. Jan. 2013)

oki ...
Danke für die Info

Wenn ich bei ISPConfig auf SuPHP änder nimmt er den korrekten Pfad in der Dokumentroot Servervariablen. Welche php.ini ist für SuPHP zuständig?

cu
Huflatisch


----------



## Till (29. Jan. 2013)

> Welche php.ini ist für SuPHP zuständig?


Die gleiche wie für php cgi und php-fcgi


----------



## Huflatisch (29. Jan. 2013)

Hallo

... so habe die Einstellung im ISPConfig gefunden....

Wenn ich die Domain auf "fast-CGI" setze funktioniert es nicht. Wenn ich auf "CGI" setze funktioniert es korrekt.
Standartmäßig war fast-CGI eingestellt.

Wenn ich phpinfo() vergleiche ist nur die "Environment" Section (extrem) umfangreicher und die php Variablen etwas anders.

Was ist überhaupt der Unterschied zwischen "CGI" und "fast-CGI".
Eigendlich sollte man doch immer mit "fast-CGI" arbeiten oder?

cu
Huflatisch


----------



## Till (29. Jan. 2013)

> Was ist überhaupt der Unterschied zwischen "CGI" und "fast-CGI".


Bei cgi wird ein neuer PHP Prozess für jede aufgerufene Seite gestartet. Ist also wie suphp (welches intern auch nur php cgi ist) sehr ressourcen intensiv, langsam und sollte nicht für hih traffic Seiten eingesetzt werden. bei fastcgi wird php als daurend laufendes Programm gestartet diesem php prozess werden dann eingehende Anfragen übergeben. Es muss also nicht jedes mal ein neues php gestarte werden, daher ist es viel schneller.



> Eigendlich sollte man doch immer mit "fast-CGI" arbeiten oder?


Ja.


----------



## Huflatisch (3. Feb. 2013)

Hey

nächster Fehler ....
wenn ich CGI aktiviere dann funktioniert "domain.de/phpmyadmin" nicht mehr. (nur unter dieser Domain) 

Also wieder fast_cgi aktiviert und natürlich wieder Probleme mit den Scripten.
 ....Mist.... 

Habe noch keine Lösung. Mal sehen was die neue Jommla Version sagt


cu
Huflatisch


----------



## Till (4. Feb. 2013)

> wenn ich CGI aktiviere dann funktioniert "domain.de/phpmyadmin" nicht mehr. (nur unter dieser Domain)


Schau mal in die apache phpmyadmin Konfigurationsdatei, dort kannst Du festlegen dass phpmyadmin immer mit mod_php ausgeführtwerden soll. Die einstellungen sind ähnlich denen für squirrelmail aus dem perfect setup guide.



> Also wieder fast_cgi aktiviert und natürlich wieder Probleme mit den Scripten.


was hast Du denn genau für Probleme. Ich nutze fast-cgi auf allen eigenen und Kundenservern und hatte noch nie ein Problem mit einem script oder CMS.


----------



## Huflatisch (4. Feb. 2013)

Hey

Hatte erst gestern abend Zeit mich mal intensiver mit dem Problem zu beschäftigen.

Netzrecherchen haben ergeben das viele (aber nicht alle) Probleme mit diversen Scripten (welche auch auf meinem Server liegen) haben. 
Aus diesem Grund gehe ich jetzt davon aus das diese nicht korrekt "programmiert" sind. (nicht "korrekte" Umsetzung der Servervariablen)

Da es bei weitem nicht so viele Scripte sind wie ich vermutet habe, muss ich die entweder anpassen oder entsorgen bzw. alternativen finden. Die ersten habe ich schon angepasst ....

Der Server bleibt jetzt auf fast-cgi

Was mich trotzdem wundert das cgi und fast-cgi unterschiedliche Servervariablen ausgeben. Falls ich mal dazukomme werde ich dem noch auf den Grund gehen.

@ Till
Danke für deine Hilfe und Tipps

cu
Huflatisch


----------

