PHP fopen“无法打开流:资源暂时不可用”

问题描述 投票:3回答:2

编辑:奥斯汀在评论中解决了我的问题。我如何关闭这个问题,因为这就是答案?

我有以下简单的代码来打开/写入我的服务器上的查询文件。我已经检查了权限,甚至为查询文件中的所有用户设置了+ rw,但我仍然收到错误

无法打开流:资源暂时不可用

在我的apache错误日志中。

我不确定我能做些什么来缓解这个问题,想法?

<?php 
// filepaths
$queryFile = '../query/query.txt';

// get query
$query = $_GET['searchBox'];

// open and write query to query file
$fh = fopen($queryFile, 'X') or die("Can't open file");
fwrite($fh, $query);
fclose($fh);
linux apache php
2个回答
3
投票

它可能只是以下几件事之一:

  • PHP进程内存不足,文件句柄或类似内容
  • 某种程度上超出了PHP环境自身的局限性
  • 文件本身有一些限制,例如SELinux(安全增强Linux)限制。

要确定它是什么,请尝试在PHP外部打开文件。暂时更改脚本以打开其他文件。看看脚本还有什么用来验证它是否可能用完了文件句柄等。


2
投票

is_file($queryFile)is_writable($queryFile)揭示了什么?也许你不在正确的工作目录?


0
投票

参数'X'应为小写。

© www.soinside.com 2019 - 2024. All rights reserved.