2010-12-13 5 views
1

OS: Windows 7, PHP: 5.3.2
Lorsque je crée un lien symbolique vers le dossier local, tout fonctionne correctement et je peux obtenir le contenu du dossier. Les deux répertoires PHP et cmd.exe affichent les fichiers dans linked_dir, à la fois dans le répertoire PHP et dans le répertoire cmd.exe. Mais, quand je fais un lien symbolique vers le lecteur partagépeut symlink à un autre lecteur par lecture par PHP?

mklink /D linked_dir x:\php\ 

cmd.exe dir affiche les fichiers, et php dit:

[function.opendir]: failed to open dir. No such file or directory in ... 

Est-ce que quelqu'un sait comment surmonter ce problème? is_link, readlink etc ... ne fournit rien non plus, comme si PHP ne pouvait pas du tout comprendre les liens du répertoire.
J'ai vraiment besoin de lire le contenu du dossier partagé PHP lié à mon répertoire de travail local.

Répondre

0

Il peut s'agir de bogues. Voir le Changlog for PHP 5.3.4

  • Résolution de la résolution de symboles lorsque la cible est un partage DFS.
  • Amélioration de la prise en charge de is_link et des fonctions connexes sous Windows.
  • Mise en œuvre de liens symboliques pour les contrôles open_basedir.
  • #51804 SplFileInfo::getLinkTarget() Fails.

Ainsi, si possible, mise à niveau vers PHP 5.3.4 et voir si cela résout le problème.

+1

Vous avez raison, dans PHP 5.3.4 cela fonctionne! Merci! –

1

Le problème est peut-être que le répertoire de liens symboliques n'est pas disponible ou accessible par l'utilisateur www (l'utilisateur sous lequel votre serveur s'exécute). Vérifiez les autorisations du compte de serveur.

Questions connexes