[PHP] fopen problemen.

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb een probleem met fopen.

PHP:
1
2
3
4
5
6
7
<?php

$fp = fopen("/webspace/domein.nl/logs/paneel.log", "a");
fwrite($fp, "test");
fclose($fp);

?>


Ik heb geprobeerd deze uit te voeren alleen dan krijg ik de volgende error
  • Warning: fopen(/webspace/switch-internetsolutions.nl/logs/controlpanel.log) [function.fopen]: failed to create stream: Permission denied in /webspace/domein.nl/sites/control/test.php on line 3 Warning: fwrite(): supplied argument is not a valid stream resource in /webspace/domein.nl/sites/control/test.php on line 4 Warning: fclose(): supplied argument is not a valid stream resource in /webspace/domein.nl/sites/control/test.php on line 5
Maar als ik hem via de command-line uitvoer doet hij 't wel, en werkt 't ook perfect(doh zo moeilijk is een fopen niet).

Iemand een idee, want ik volg het even niet meer op deze warme dag.

Acties:
  • 0 Henk 'm!

Verwijderd

Heb je de juiste CHMOD toegepast op de files?

Acties:
  • 0 Henk 'm!

Verwijderd

Als je onder PHP zo'n opdracht uitvoert, wordt deze als de user waaronder je webserver draait uitgevoerd. Dus als je Apache draait met httpd als user (wat vrij standaar is), wordt de append uitgevoerd als httpd. Check je permissies dus :).

Acties:
  • 0 Henk 'm!

  • Speedener
  • Registratie: September 2000
  • Laatst online: 12:54
Ik denk dat jouw apache dit bestand niet mag openen, door dat er een basedir beveiliging op zit...

en moet je niet werken met ../../../ of is /webspace/ een partitie(of hoe dat ook heet in Linux)

LG Therma V Split WP: HU143MA.U33-HN1636M NK5


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
De file die weg moet worden geschreven hoef ik geen CHMOD op uit de voeren(toch.)

En de test.php heeft gewoon 777 rechten. Standaard dus.

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 03:13
Zijn die files wel toegankelijk voor de gebruiker waaronder de webserver draait?

Staat PHP toevallig in safe mode of iets dergelijks? (Check je phpconfig...)
Verwijderd schreef op 15 July 2003 @ 13:52:
De file die weg moet worden geschreven hoef ik geen CHMOD op uit de voeren(toch.)
Natuurlijk wel. Je moet schrijfrechten hebben op de directory in kwestie (als het bestand nog niet bestaat), executierechten op alle directories in het pad, en schrijfrechten op het bestand (als het al bestaat).

Als de webserver onder een aparte gebruiker draait, zul je het bestand en de directory in kwestie schrijfbaar moeten maken voor alle gebruikers. Dat is een ontzettend lompe constructie, dus je kan waarschijnlijk beter iets anders verzinnen.
En de test.php heeft gewoon 777 rechten. Standaard dus.
Dat is absoluut niet standaard, want iedereen met local access tot de machine kan je bestand nu wijzigen (of wissen, for that matter). Maak daar dus maar 644 van. Je PHP script is zelf dus niet executable.

[ Voor 75% gewijzigd door Soultaker op 15-07-2003 13:55 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op 15 July 2003 @ 13:52:
En de test.php heeft gewoon 777 rechten. Standaard dus.
Dit hoort niet standaard te zijn.. :Y)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Speedener schreef op 15 July 2003 @ 13:52:
Ik denk dat jouw apache dit bestand niet mag openen, door dat er een basedir beveiliging op zit...

en moet je niet werken met ../../../ of is /webspace/ een partitie(of hoe dat ook heet in Linux)
open_basedir staat in apache uit, hier kan het ook niet aan liggen anders kreeg ik op de commandline ook wel dezelfde error.

ook safe_mode staat op off.

/webspace is inderdaad een mounted partitie.

[ Voor 4% gewijzigd door Verwijderd op 15-07-2003 13:55 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Probeer eens CHMOD 777 toe te passen op die .log file

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Verwijderd schreef op 15 July 2003 @ 13:56:
Probeer eens CHMOD 777 toe te passen op die .log file
Helaas, nogsteeds niet.

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 03:13
Erm, serverbeheer is trouwens iets anders dan zolang het niet werkt alle bestanden die je tegenkomt naar 777 chmodden. :/ Misschien moet je eens gaan nadenken bij wat je probeert te doen en waar het bij misgaat?
Pagina: 1