我有一个 PHP-FPM 和 nginx 设置,在 Ubuntu Desktop 12.04 上运行良好。Web 服务器的文件由名为 的目录提供/www
,该目录设置为root
服务器的。
最初,/www
它被挂载为 VMware 共享文件夹(因为 Ubuntu Desktop 正在作为客户操作系统运行)。但是,由于共享文件夹的性能问题(延迟 2 秒!),我正在测试 Samba 共享。
我的 Windows 7 主机上有一个名为webfiles
shared 的文件夹作为网络共享。我能够/www
通过将其作为 cifs 安装到我的以下位置来自动安装它fstab
:
//192.168.1.7/webfiles /www cifs credentials=/home/user/.smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
启动时挂载/www
正常,我可以在 Ubuntu 上创建和删除文件。Nginx 还可以毫无问题地从中提供静态文件。
问题是,一旦我想通过 PHP-FPM 来为 PHP 文件提供服务,就会开始出现File not found.
错误。尽管设置工作正常,但唯一的变化是,/www
我现在有一个 samba 共享,而不是挂载在 上的共享文件夹。
我不太熟悉 Samba,但是这可能是什么原因造成的?
答案1
看起来安装时出现了问题。无需让 Windows 传递 inode 编号,只需将其设置为 Ubuntu 生成 inode 编号即可解决问题:
//192.168.1.7/webfiles /www cifs credentials=/home/user/.smbcredentials,noserverino 0 0