php: opendir() probleem bij netwerkmappen + apache server

Pagina: 1
Acties:

  • vleesboom
  • Registratie: Augustus 2004
  • Laatst online: 28-11-2025
Ik heb het volgende probleem:

Er is al wat over gepost, maar ik heb nog geen afdoende antwoord gezien.

Ik draai een apache v2 server en php v4.3.4 op mijn eigen computer met windows XP. Deze computer bevindt zich in een LAN, waarvan iedere computer ook winxp draait.

Nu wil ik van verschillende gedeelde mappen in het netwerk de bestanden op een intranet webpagina zetten, zodat ik deze bestanden vanaf iedere computer in het intranet kan openen.

Ik heb een php script gemaakt met een opendir() functie. Deze kan een directory listen zolang deze maar op mijn eigen computer staat. Maar als ik een gesharede netwerkmap (van een andere computer in het netwerk) probeer te lezen met de opendir() functie, geeft php de volgende error:

Warning: opendir(//COMPUTER/Films): failed to open dir: Invalid argument in functions.php on line 17

Dit heeft waarschijnlijk iets met beveiligingsrestricties te maken... Maar hoe kan ik Apache / het php script / Windows aanpassen dat het lezen van een netwerkmap wel mogelijk wordt?

Wat ik al geprobeerd heb (naar aanleiding van verschillende forums:)
- ik heb bij het services beheer van windows, en dan bij de apache service het "aanmelden als:" op administrator gezet ==> gevolg: apache service kan niet meer starten wegens 'aanmeld probleem'

- het zou ook iets met zgn. nullsessions te maken hebben, dus heb ik in het register van mijn computer daarmee zitten klooien werkte ook niet goed. (maar ik weet ook niet of ik het helemaal goed gedaan heb)

Weet iemand een oplossing???
Misschien kan het ook anders dan met de opendir() functie???

Groet, Frank

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Volgens mij heeft PHP totaal geen mogelijkheid tot zo 1, 2, 3 het maken van een SMB-connectie?

Laat ik het zo zeggen, voor JOU lijkt \\pcnaam\share een simpele dir openen, maar voor de software is het een compleet ander verhaal :)


Zo te zien heeft PHP er wél support voor, gezien deze post @ PHP.net in de manual van opendir():

[quote]dieck at gmx dot de
26-Feb-2004 04:47

If you have problems like "failed to open dir: Invalid argument"
when using IIS and trying to access windows/smb network shares, try
//servername/share/directory
instead of
\\servername\share[/]


Dat doe je al geloof ik, shit, dan weet ik het ook niet meer :X

[ Voor 94% gewijzigd door Osiris op 20-08-2004 16:21 ]


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 20-02 15:44
Heb je het probleem ook als je met Windows de share mapt onder een driveletter?

  • JorisPenders
  • Registratie: April 2004
  • Laatst online: 09-02 19:54

JorisPenders

Designer & Coder

Ja, lijkt me gewoon een kwestie van netwerk-verbinding maken, was met mijn Serv-U-FTP-server ook

SystemSpecs -- WebArea - Your Online Home -- Webdesign


  • pistole
  • Registratie: Juli 2000
  • Nu online

pistole

Frutter

vleesboom schreef op 20 augustus 2004 @ 16:16:
Wat ik al geprobeerd heb (naar aanleiding van verschillende forums:)
- ik heb bij het services beheer van windows, en dan bij de apache service het "aanmelden als:" op administrator gezet ==> gevolg: apache service kan niet meer starten wegens 'aanmeld probleem'
Als je apache zou starten als Administrator - wat ik je overigens zou afraden - moet je ook het password van administrator opgeven (in je services schermpje)

Ik frut, dus ik epibreer


  • vleesboom
  • Registratie: Augustus 2004
  • Laatst online: 28-11-2025
Bedankt voor de reacties.

Ten eerste, verwijzen naar een driveletter die naar de share verwijst, werkte ook niet.

Ik ben toch weer met het administrator gedoe bezig geweest bij de apache service. Op mijn pc had de administrator-account van windows geen wachtwoord, dus dat had ik ook leeg gelaten. Maar dat werkte dus niet echt.
Ik heb toen de administrator account maar een wachtwoord gegeven en die ook bij de apache service ingevuld.

Nu werkt het! Alleen schijnt dit niet de meest 'veilige' oplossing te zijn (het werd mij ook afgeraden las ik). Wat zijn de gevaren???

Bedankt,
Frank.

  • pistole
  • Registratie: Juli 2000
  • Nu online

pistole

Frutter

De gevaren zijn dat administrator "alles" mag (in ieder geval op de lokale machine). Dit is overigens ook het geval voor het System account (in de meeste gevallen).

Je kan dus beter een aparte user aanmaken, die bijzonder weinig mag. Maar dat heeft redelijk wat voeten in de aarde - daarvoor zou ik je willen verwijzen naar een tutorial die vast wel op internet te vinden is.

Bottom line: als je apache onder het local system account draait, kan je netwerk toegang (bijna) vergeten.

Ik frut, dus ik epibreer

Pagina: 1