我在尝试通过内容>文件>添加文件上传任何类型的文件时收到错误消息。错误读取"无法保存文件 filename 。出现未知错误。 “上传新文件”字段中的文件无法上传。"
我已经阅读了很多线程,而且大多数似乎都表明存在权限问题。我检查过所有目录都配置正确。公共文件设置为sites / default / files;私有文件设置为sites / default / files / private;和temporary设置为sites / default / files / tmp。
然后我在服务器日志中发现了这个错误:
[Tue Mar 27 10:49:26.932464 2018] [proxy_fcgi:error] [pid 20750:tid 140070898026240] [client nn.nnn.nn.nn:63784] AH01071:收到错误' PHP消息:PHP警告:文件上传错误 - 无法在第0行的“未知”中创建临时文件\ n',referer:http:// ipaddress.com / file / add
任何想法可能在这里出错?
谢谢, CJ
答案 0 :(得分:0)
这绝对是一个权限问题。
你提到了不同文件夹的路径(public,private和tmp),但这是完全不同的事情。
您需要检查的是,运行网络服务器的用户有权在上述文件夹上书写。
现在,您没有提到您正在使用的服务器,因此我假设您正在运行Apache,并且在CentOS中将Apache用户和组称为apache
,在Ubuntu中称为www-data
您应该导航到这些文件夹(实际上是到放置此文件夹的文件夹)并在终端中键入ls -la
句子,以获取它们的权限列表以及用户名拥有文件夹。
Apache用户需要在这些文件夹中访问和编写。
答案 1 :(得分:0)
我曾经遇到过类似的问题。解决这个问题的方法是在tmp目录中给“其他人”提供“写入”权限。您可能想知道这是我正在讨论的/ tmp目录,因为在上传文件时它必须通过/ tmp目录传递到所需的位置。
所以给/ tmp和sites / default / files / tmp目录赋予write(other)权限。希望这会有所帮助。