AuthType
Tom
- php
0 Sven Rautenberg0 Tom0 Sven Rautenberg0 Tom0 Sven Rautenberg0 Tom0 Sven Rautenberg0 Tom
Hello,
ich wühle mich kreuz und quer durch Manual und Internet und finde nichts zum Thema "AuthType".
Ich kann auch die Variable im Array $_SERVER nicth finden.
http://de.php.net/features.http-auth
Kann jemand weiterhelfen, wie der AuthType gesetzt wird und was es damit auf sich hat?
Liebe Grüße aus http://www.braunschweig.de
Tom
Moin!
ich wühle mich kreuz und quer durch Manual und Internet und finde nichts zum Thema "AuthType".
Ich kann auch die Variable im Array $_SERVER nicth finden.
http://de.php.net/features.http-auth
Kann jemand weiterhelfen, wie der AuthType gesetzt wird und was es damit auf sich hat?
Du hast zunächst kein originäres PHP-Problem, sondern Verständnisprobleme mit HTTP-Authentifizierung. Sekundär tritt dann die tatsächliche Implementierung von PHP zu Tage.
PHP macht ja nichts, was man per .htaccess nicht auch tun könnte. Ergo: Erstmal sehen, was HTTP macht.
- Sven Rautenberg
Hello,
Kann jemand weiterhelfen, wie der AuthType gesetzt wird und was es damit auf sich hat?
Du hast zunächst kein originäres PHP-Problem, sondern Verständnisprobleme mit HTTP-Authentifizierung. Sekundär tritt dann die tatsächliche Implementierung von PHP zu Tage.
PHP macht ja nichts, was man per .htaccess nicht auch tun könnte. Ergo: Erstmal sehen, was HTTP macht.
Das ist ein netter[tm] Tipp. Ich frag ja nur, woher der AuthType, also das Feld $_SERVER['AuthType'] kommt, wenn es denn da wäre. Da ich in meinem kurzen Versuch zum Thema safe_mode und Auth keine .htaccess genutzt habe, sondern die Authentifizierung über PHP angefordert habe, war wohl der entsprechende Header gar nicht vorhanden und wurde daher auch nicht in $_SERVER aufgenommen. Right?
Aber man kommt schon vom Tausendstel ins Millionstel, wenn man alle (jedenfalls mehrere) dahingeworfenen Aussagen des PHP-Manuals und der Publikationen im Netz überprüfen und nachvollziehen will.
Was ist also unter "externer Authentifizierung" zu verstehen? Ist damit z.B. .htaccess gemeint? Wennalso über .htaccess authentifiziert wird und der safe_mode eingeschalket ist, findet keine Weiterleitung der Werte PHP_AUTH_PW und PHP_AUTH_USER an das $_SERVER-Array statt?
<cite>
As of PHP 4.3.0, in order to prevent someone from writing a script which reveals the password for a page that was authenticated through a traditional external mechanism, the PHP_AUTH variables will not be set if external authentication is enabled for that particular page and safe mode is enabled. Regardless, REMOTE_USER can be used to identify the externally-authenticated user. So, you can use $_SERVER['REMOTE_USER'].
</cite>
Liebe Grüße aus http://www.braunschweig.de
Tom
Moin!
Das ist ein netter[tm] Tipp. Ich frag ja nur, woher der AuthType, also das Feld $_SERVER['AuthType'] kommt, wenn es denn da wäre.
Überlege doch mal, wer was sendet. Ein Feld "AuthType" existiert in HTTP jedenfalls nicht.
Und alles andere als AuthType Basic ist kompliziert (und Clients, insbesondere der IE, haben damit so ihre Schwierigkeiten und Fehler, die auch noch berücksichtigt werden müßten.
Da ich in meinem kurzen Versuch zum Thema safe_mode und Auth keine .htaccess genutzt habe, sondern die Authentifizierung über PHP angefordert habe, war wohl der entsprechende Header gar nicht vorhanden und wurde daher auch nicht in $_SERVER aufgenommen. Right?
Wrong. Read the fucking RFC. :)
Was ist also unter "externer Authentifizierung" zu verstehen? Ist damit z.B. .htaccess gemeint?
100 Punkte und ein Eis zum Selbstkostenpreis!
- Sven Rautenberg
Hello,
wie ich .htaccess für Virtuelle Hosts in Gang bekomme, lerne ich wohl nicht mehr. Wie ist das kaskadiert? Ich bekomme immer den Fehler internal Server Error und in der Error_log steht dann php_admin_value not allowed here.
Jetzt weiß ich nicht, ob sich da mal wieder was beißt und ich das einfach nicht weiß, aber ich habe keine Suse sondern Debian drauf. Und da hat auch schon mal funktioniert.
Was diese AllowOverride und Order-Geschichten angeht, brauche ich dringend mal wieder eine Auffrischung. Kannst Du mir da einen Crash-Kursus verpassen? Was muss in welcher Reihenfolge innder httpd.conf stehen?
Wann darf ich was wo einstellen?
Liebe Grüße aus http://www.braunschweig.de
Tom
Moin!
wie ich .htaccess für Virtuelle Hosts in Gang bekomme, lerne ich wohl nicht mehr.
Bei "AllowOverride None" wird .htaccess ignoriert, andere Werte erlauben das Verändern gewisser Parameter. Zugriffsschutz kann man aber auch in der httpd.conf (bzw. der dort includierten weiteren Datei) regeln/konfigurieren.
Wie ist das kaskadiert? Ich bekomme immer den Fehler internal Server Error und in der Error_log steht dann php_admin_value not allowed here.
Mit php_admin_value kannst du keine Authentifizierung hinkriegen.
Jetzt weiß ich nicht, ob sich da mal wieder was beißt und ich das einfach nicht weiß, aber ich habe keine Suse sondern Debian drauf. Und da hat auch schon mal funktioniert.
Offenbar darfst du aufgrund der AllowOverride-Einstellung nicht das tun, was du willst - oder es fehlt dir an dem entsprechenden Modul im Apache.
Was diese AllowOverride und Order-Geschichten angeht, brauche ich dringend mal wieder eine Auffrischung. Kannst Du mir da einen Crash-Kursus verpassen? Was muss in welcher Reihenfolge innder httpd.conf stehen?
Lies die Doku! http://httpd.apache.org, Core-Modul. Da steht unter "Context", wo die Direktive "AllowOverride" vorkommen darf. Gelten tut sie dann jedenfalls für diesen "Abschnitt", was immer das ist.
- Sven Rautenberg
Hello,
wie ich .htaccess für Virtuelle Hosts in Gang bekomme, lerne ich wohl nicht mehr.
Bei "AllowOverride None" wird .htaccess ignoriert, andere Werte erlauben das Verändern gewisser Parameter. Zugriffsschutz kann man aber auch in der httpd.conf (bzw. der dort includierten weiteren Datei) regeln/konfigurieren.
Da habe ich es auch versucht. Ich habe zwei virtHosts eingerichtet für die Tests mit PHP safe_mode:
################################
NameVirtualHost 192.168.101.99
################################
<VirtualHost 192.168.101.99>
ServerAdmin thomas@testserver.bitworks
DocumentRoot /var/www/htdocs/
ServerName testserver.lan.fli4l
ErrorLog /var/log/httpd/error_log
CustomLog /var/log/httpd/access_log common
</VirtualHost>
<VirtualHost 192.168.101.99>
ServerAdmin thomas@testserver.bitworks
DocumentRoot /www/docs/docserver/html
ServerName docuserver.lan.fli4l
ErrorLog /logs/docserver/error_log
CustomLog /logs/docserver/access_log common
# User thomas # geht erst mit suPHP
# Group websites
php_admin_value safe_mode 1 # admin_flag funktioniert nicht
php_admin_value open_basedir /www/docs/docserver/
php_admin_value safe_mode_exec_dir '/www/php/exec/'
# <directory "/www/docs/docserver">
# AllowOverride AuthConfig
# Order allow,deny
# Allow from all
# </directory>
</VirtualHost>
Wie ist das kaskadiert? Ich bekomme immer den Fehler internal Server Error und in der Error_log steht dann php_admin_value not allowed here.
Das ist wohl falsch sortiert und außerdem muss irgendwo in der übergeordneten Konfiguration auch noch was fehlen (AllowOverride)
Mit php_admin_value kannst du keine Authentifizierung hinkriegen.
Das benötige ich ja auch für den safe_mode und nicht für .htaccess
Offenbar darfst du aufgrund der AllowOverride-Einstellung nicht das tun, was du willst - oder es fehlt dir an dem entsprechenden Modul im Apache.
Das weiß ich. Leider weiß ich nicht mehr, was noch verändert werden muss
Lies die Doku! http://httpd.apache.org, Core-Modul. Da steht unter "Context", wo die Direktive "AllowOverride" vorkommen darf. Gelten tut sie dann jedenfalls für diesen "Abschnitt", was immer das ist.
Habe ich. Leider gehen für mich daraus nicht die notwenigen Schritte für VirtHosts hervor oder ich habe es überlesen.
die .htaccess sieht so aus:
AuthType Basic
AuthName "Safe_Mode Test-Bereich"
AuthUserFile /www/docs/docserver/daten/.htusers
require valid-user
Liebe Grüße aus http://www.braunschweig.de
Tom
Moin!
php_admin_value safe_mode 1 # admin_flag funktioniert nicht
php_admin_value open_basedir /www/docs/docserver/
php_admin_value safe_mode_exec_dir '/www/php/exec/'
Den Safe_mode kann man EIN und AUS schalten. Deshalb macht man das nicht mit "..._value", sondern mit "..._flag".
- Sven Rautenberg
Hello,
php_admin_value safe_mode 1 # admin_flag funktioniert nicht
php_admin_value open_basedir /www/docs/docserver/
php_admin_value safe_mode_exec_dir '/www/php/exec/'Den Safe_mode kann man EIN und AUS schalten. Deshalb macht man das nicht mit "..._value", sondern mit "..._flag".
Das habe ich aber schon durch. Das müsste eigentlich auch heißen:
php_admin_flag safe_mode on
Das tuts aber nicht.
Es funktioniert bei dieser Installation auch nicht mit
php_admin_flag safe_mode 1
oder
php_admin_value safe_mode on
sondern nur mit
php_admin_value safe_mode 1
Ich hab mir schon 'was dabei gedacht. ;-)
Nun wollte ich eben AuthConfig und .htaccess dazunehmen, aber das habe ich eben irgendwie nicht richtig kaskadiert. Es ist übergeordnet dür den ganzen Server isrged eine Einstellung notwendig, die ich nicht habe, oder ich habe eine, die sich mir der im virtHost beißt, oder es ist wieder so eine Gemeinheit, wie damals bei der Suse, wo man das mod_nds nicht gelichzeitig laden durfte.
Liebe Grüße aus http://www.braunschweig.de
Tom