我正在开发一个使用PHP管理用户上传的Web应用程序。这些上载位于通过NFS挂载并符号链接到Apache根目录的外部介质上。也就是说,让/mnt/uploads
成为NFS uploads
共享的挂载点,/var/www/http/public/uploads
是/mnt/uploads
的符号链接。
我想使用PHP is_dir
命令在缓存操作期间验证此目录及其子文件夹是否存在。但是,is_dir
在传递到符号链接的相对路径或绝对路径时返回false
,即使该命令应遵循符合XML文档的符号链接。
我尝试直接将绝对路径/mnt/uploads
传递给is_dir
但没有成功;它仍然返回false
。这让我相信问题与目录是NFS挂载这一事实有关,而不是我通过符号链接访问它。我也尝试清除stat缓存,但结果相同。
此服务器运行Ubuntu 14.04 LTS并且是最新的。
/ etc / fstab条目
$ cat /etc/fstab
my.nfs.server:/uploads /mnt/uploads nfs sec=krb5p,rw 0 0
目录权限
$ ll /mnt
drwxrwxr-x 6 someuser somegroup 4.0K Mar 1 08:48 uploads