Stimmt... den Tipp schicke ich dem gleich mal, mal sehen, was ihm dazu einfällt...
Rechteproblem bei Bildupload
Einklappen
X
-
Leg dir mal ne Testdatei an und schreibe folgenden Inhalt rein
PHP-Code:echo tempnam('dummy','pipapo');
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten
[color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Kommentar
-
Nee, doch nicht. Ich glaub, der hat gerade was dran rumgeschraubt. Jedenfalls heißt die Fehlermeldung jetzt so:
Also nochmal der Reihe nach:
Fehler (erzeugt um 14:40 Uhr):
PHP Warning: Unknown: open_basedir restriction in effect. File(d:\web\default\temp\) is not within the allowed path(s):
(d:/web) in Unknown on line 0 PHP Warning: File upload error - unable to create a temporary file in Unknown on line 0
Fehlermeldung, wenn ich nur ein einfaches copy() mache:
copy() [function.copy]: open_basedir restriction in effect. File(testx.jpg) is not within the allowed path(s):
(d:/web) in D:\web\kunde\page.de\htdocs\upload1.php on line 11
PHPinfo:
open_basedir d:/web d:/web
upload_tmp_dir d:/web/default/temp d:/web/default/temp
file_uploads On On
TEMP d:\web\default\temp
TMP d:\web\default\temp
Kommentar
-
tempnam() legt, falls das Verzeichnis (dummy) nicht existiert, die Datei im Temp Folder des Servers an und gibt den kompletten Pfad zurück. Was ergibt dieser Code? [/B]
Warning: tempnam() [function.tempnam]: open_basedir restriction in effect. File(dummy) is not within the allowed path(s): (d:/web) in D:\web\kunde\page.de\htdocs\upload1.php on line 9
EDIT:
kunde und page.de heißt natürlich entsprechend anders, will/darf ja keine Kundennamen nennen.
Zuletzt geändert von Pust; 21.07.2008, 14:59.
Kommentar
-
Bin mir jetzt ned 100%-ig sicher aber bei der php.ini sollten die \ und nicht die / verwendet werden (wenn's ein Windows System ist). Afaik ist beim Apachen dann wieder / zu verwenden (in der httpd.conf auf Windows)Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten
[color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Kommentar
-
Ich behaupte mal frech, dass diese Angaben so nicht korrekt sein dürften
open_basedir d:/web d:/web
upload_tmp_dir d:/web/default/temp d:/web/default/temp
open_basedir d:\web d:\web
upload_tmp_dir d:\web\default\temp d:\web\default\temp
Gruss
tobiGutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten
[color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Kommentar
-
AAaaaalso, der Serveradmin schreibt jetzt:
Uploaddir =d:\web\default\temp
Open_basedir=d:\web
Da ist d:\web\default\temp ja wohl eindeutig drin oder?! Das paßt schon so. Der wird halt die Systemvariable temp oder so auslesen und die steht in dem Fall mit d:\web\default\temp da, also mit \.
und
Ich habe diese Konfiguration bei knapp 50 Shared-Webhosting Servern exakt so eingestellt, damit laufen selbst harte Brocken wie Joomla, Typo3 und xtCommerce einwandfrei. Daher meinte ich ja auch, Sie sollen Ihre Pfadangaben ebenfalls mit / statt \ machen. Andernfalls bei der Software in der Uploadroutine schauen, was das Teil macht - man kann den Upload auf 2 verschiedene Arten machen und eine davon kollidiert gelegentlich mit den open_basedir. Den safe_mode würde ich aber wie gesagt definitiv nicht abschalten, der ist das a und o für Serversicherheit.
Hilft mir das weiter!?
Kommentar
-
Den safe_mode würde ich aber wie gesagt definitiv nicht abschalten, der ist das a und o für Serversicherheit.
Denn auch Scripte unter safe_mode ON können noch genug Unheil anrichten.Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten
[color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Kommentar
-
Ich versteh ihn da schon, auf dem Server programmieren ja noch mehr rum, ich weiß nicht, ob das php.ini nur für mich ist oder für alle Kunden, aber da sind bestimmt auch noch ein paar alte Scripte dabei.
Bringt mir aber alles nichts, ich will, daß der Bildupload irgendwie funktioniert - und krieg das Problem nicht gelöst!
Gibt es eine Alternative dazu, daß der was ändert?
Kann ich Programmiertechnisch was machen?
Kommentar
-
Ja?
Der save mode wird mit PHP6 abgeschafft!
Warum wohl?
Kann ich Programmiertechnisch was machen?
Evtl. per .htaccess den uploaddir einstellen.
Kommentar
-
Hab mir htaccess mal angeschaut. Hab damit noch nie was gemacht.
Also hab ich mir mal so eine Datei angelegt:
DirectoryIndex default.html
Sodann eine default.html angelegt und ins gleiche Verzeichnis (das ansonsten leer ist) geschmissen.
Ergebnis:
IISPassword
The page cannot be displayed
...blablabla
HTTP Error 500
IISPassword for Internet Information Services
Paßwort? Hä? woher? Welches? Wie?
Muß da noch was rein in die Datei? War in den Beispielen aber nirgends zu finden!
Ob dieses Override-dingens auf none ist, weiß ich nicht, kann ich auch nicht rauskriegen...
EDIT:
Vielleicht ist der Satz oben nicht ganz klar, ich hab natürlich eine .htaccess angelegt, mit dem Inhalt
DirectoryIndex default.html
zum Testen. Daraufhin kam die genannte Meldung.
Zuletzt geändert von Pust; 22.07.2008, 00:11.
Kommentar
-
Wieso passwort?
Es dreht sich doch um den Upload Path, oder?
Siehe: http://www.php.net/manual/de/configuration.changes.php
Kommentar
Kommentar