我正在使用内置的apache服务器和php/mysql开发moodle 2.4,操作系统是Mac OSX 10.8。
问题在于当我尝试上传任何东西时,都会出现PHP缺少临时文件夹的错误消息。
我已经在我的笔记本电脑上下载了可用版本并运行,但在本地主机上仍然遇到相同的错误。
如何解决这个问题?
upload_tmp_dir
的值,并确保该路径存在。当然,还要确保apache也具有写入它的权限。补充一下,对于 Windows 系统,在 php.ini 文件中设置相同的 upload_tmp_dir,并确保 IUSR 帐户对此目录具有完全控制/写入访问权限。
open_base_dir
php.ini 常量上。如果这个常量有一些值。
您可以删除 open_basedir
参数。也许,这个操作可以解决问题。
在某些情况下,上述解决方案可能会很危险。
如果存在 open_basedir
,我建议添加 :/tmp
而不是删除 open_basedir。此操作可以通过将PHP临时目录添加到冒号后面的open_basedir
来完成:
open_basedir = "old-path:/tmp"
sudo service php7.2-fpm restart
或者你的 PHP 版本。
sudo service php7.x-fpm restart
ini_path
块来检测php.ini路径。更改 /tmp 文件夹的权限 chmod 777 /tmp