Confixx und PEAR

uwe59

Registered User
Hallo Leute,

kann mir jemand verraten, wie ich es hinbekomme, dass alle Domains, die per Confixx verwaltet werden, zusätzlich den Include-Path für PHP auch auf /usr/share/php bekommen? Eine Erweiterung der php.ini hat nichts gebracht und per ini_set im PHP-Script bekomme ich

open_basedir restriction in effect. File(/usr/share/php/PEAR.php) is not within the allowed path

Wäre für jeden Tipp dankbar.

Gruß
Uwe
 
Wie sieht denn dein jetziger include_path aus? Und wie sah er nach deiner Veraenderung aus?
 
jaaaa, da habe ich auch gerätselt, aber letzlich ist es einfach und sogar "confixx like" logisch.

nimm die freigabe des verzeichniesses aus der php.ini wieder raus
ich nutze debian 3 und confixx 3.1.1
mein webroot it /var/www
ich nutze apache 1.3
mein PEAR liegt nach der installation mit apt-get install php4-paer
in /usr/share/php

in /etc/apache/ ist die datei confixx_mhost.conf

dort musst du in 2 abschnitten je 2 zeilen ändern
1. hier
Code:
</VirtualHost>

<VirtualHost 110.112.999.1:80>

  ServerName xxxxxx.serverbude.net
	
  #User confixx
  #Group confixx
  DocumentRoot /var/www/confixx/html
  Options FollowSymLinks

  php_admin_flag safe_mode Off
  php_admin_flag file_uploads On
  php_admin_flag track_vars On
  php_admin_flag magic_quotes_runtime Off
  php_admin_flag magic_quotes_gpc Off
  php_admin_value upload_tmp_dir /var/www/confixx/tmp
  php_admin_value include_path ".:[B]/usr/share/php[/B]:/var/www/confixx/html/include:/var/www/confixx/html"
  php_admin_value default_charset none
  php_admin_value open_basedir /var/www/confixx:[B]/usr/share/php[/B]

und dann nochmal hier

Code:
</VirtualHost>

<VirtualHost 81.169.135.6:443>

  ServerName h637737.serverkompetenz.net
	
  #User confixx
  #Group confixx
  DocumentRoot /var/www/confixx/html
  Options FollowSymLinks

  php_admin_flag safe_mode Off
  php_admin_flag file_uploads On
  php_admin_flag track_vars On
  php_admin_flag magic_quotes_runtime Off
  php_admin_flag magic_quotes_gpc Off
  php_admin_value upload_tmp_dir /var/www/confixx/tmp
  php_admin_value include_path ".:[B]/usr/share/php[/B]:/var/www/confixx/html/include:/var/www/confixx/html"
  php_admin_value default_charset none
  php_admin_value open_basedir /var/www/confixx:[CODE]/usr/share/php
[/CODE]

und dann waren meine Pear dateien für die scripte in /var/www/confixx/html erreichbar sind.
nicht vergessen mit /etc/init.d/apache restart den indianer neu zu starten

wenn du deinen usern PEAR zur verfügung stellen willst, bzw. einer domain dann musst due die httpd_spezial funktion als Confixx admin nutzen und die freigaben dafür machen oder in /etc/apache/confixx_vhosts die jeweilige vhost datei direkt bearbeiten. möglich aber das confixx die daten noch in seiner datenbank hat, dann musst du das halt auch noch machen.
 
Hi

und erst mal Danke für die Antworten. Habe folgenden Hinweis bekommen:
Admin Interface -> httpd Spezial -> alle Anbieter ändern ->

Clicken Sie "für alle Domains, die neu angelegt werden, setzen"
und schreiben Sie diese httpd-Zusatzeintrag:

php_admin_value open_basedir /home/##user##/html/:/home/##user##/phptmp/:/home/##user##/files/:/home/##user##/atd/:/usr/share/php
php_admin_value include_path .:/usr/share/php

/home ist deine Confixx $user_homeDir (sehen Sie bitte confixx_main.conf oder settings.inc.php)
z.B: /var/www

Das ist Losung fur Confixx 3.x.
Das funktioniert fast perfekt, bis auf

SAFE MODE Restriction in effect. The script whose uid is 639 is not allowed to access /usr/share/php/PEAR.php owned by uid 0

In der Ausgabe von phpinfo wird bei open_basedir dies angezeigt:

/srv/www/htdocs/web1/html/:/srv/www/htdocs/web1/phptmp/:/srv/www/htdocs/web1/files/:/srv/www/htdocs/web1/atd/:/usr/share/php

Der include_path ist mit .:/usr/share/php richtig

Das Verzeichnis /usr/share/php hat die Rechte drwxr-xr-x und die Datei PEAR.php -rw-r--r--. Damit sollte ein Lesen der Datei doch möglich sein, oder sehe ich da was falsch?

Danke und Gruß
Uwe
 
Code:
SAFE MODE Restriction in effect. The script whose uid is 639 is not allowed to access /usr/share/php/PEAR.php owned by uid 0
SafeMode ist ON. Mit Leserechten hat das dann wenig zu tun. Safe_mode vergleicht die UID des Anwenders(/Anwenderskript) mit der des anzuwendenden Skriptes. Sind diese nicht gleich, kommt der oben genannte Fehler.
UID 0 ist root und UID 639 wird wohl einer deiner Webuser sein.
 
Nachdem safe_mode_include_dir auch entsprechend angepasst wurde, funktioniert es.

Danke und Gruß
Uwe
 
jo, so gehts auch. du gibt den pfad via httpd spezial frei und zwar wahlweise für die Kunden.
Ich habe angenommen das du es nur für den user confixx haben willst. der user confixx ist ja mit der httpd nicht zu bearbeiten, daher der weg über die confixx_mhost.conf

httpd_spezial eben wenn die user auch pear nutzen sollen
 
Back
Top