【发布时间】:2014-07-21 10:16:40
【问题描述】:
我在 OSX 主机上的 Vagrant VM 中运行 Ubuntu 12.04。
这里是安装文件夹的 Vagrant 配置:
config.vm.synced_folder "/var/projects", "/projects", type: "nfs"
我发现 PHP 无法在 NFS 共享目录上正确创建会话。
这是test.php 脚本:
session_save_path('/projects/sessions');
session_start();
file_put_contents('/projects/sessions/file.txt', 'TEST');
这是执行的输出:
$ php test.php
PHP Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/project/sessions) in Unknown on line 0
这是执行后发生的情况:
$ ls -l
total 8
-rw------- 1 502 dialout 0 Jul 21 10:13 sess_0p6bt4g3o0sofi3b7p6016jtg7
-rw-rw-r-- 1 502 dialout 4 Jul 21 10:13 file.txt
-rw-rw-r-- 1 502 dialout 164 Jul 21 10:12 test.php
如您所见,会话文件是空的,并且是使用奇怪的权限创建的。因此,txt 文件的创建没有错误。
我尝试过使用 PHP 5.4 和 5.5
还有其他可以尝试的建议吗?
提前谢谢你
【问题讨论】:
-
您正在将 nfs 共享映射到 /projects,但将会话保存路径设置为 /project - 这个错字只是在示例中吗?
-
@RobertRossmann 感谢您指出这一点 - 这是一个错字。很抱歉
-
又一只小猫被救了,谢谢@VitaliyZurian
标签: php session ubuntu vagrant nfs