【问题标题】:PHP: Can't write to file on Bitnami Debian LAMPPHP:无法在 Bitnami Debian LAMP 上写入文件
【发布时间】:2021-05-12 10:34:01
【问题描述】:

我的本​​地 Windows XAMPP 安装和共享托管服务器上的代码没有问题,但在 AWS LightSail Debian LAMP 安装上,代码停止工作且没有错误。

我正在创建一个临时文件,然后用 CSV 数据填充它。

$file = fopen($filename, 'w+') or die("Unable to create file!");
// Write header line
$header = "email_id, email_address, email_subject, email_timestamp, email_event" . PHP_EOL;
fwrite($file, $header) or die("Could not write headers to file");

有一个循环写入 CSV 数据...

$cRow = $email_id . ', "' . $email_address . '", "' . $email_subject . '", ' . $email_timestamp . ', "' . $email_event . '"' . PHP_EOL;
fwrite($file, $cRow) or die("Could not write headers to file"); 

该文件由用户 daemon 创建,而其余的 PHP 文件由 www-data

所有

我尝试更改用户权限和组等,但没有任何效果。内容没有被写入,并且没有“无法将标题写入文件”错误。文件大小保持为 0。

【问题讨论】:

  • 使用命令行运行 PHP 代码时是否遇到任何错误? Apache 的日志 (/opt/bitnami/apache2/logs/error_log) 中是否有与此相关的错误?

标签: php debian lamp bitnami amazon-lightsail


【解决方案1】:

这里是 Bitnami 工程师,

Bitnami 解决方案中的 Apache 和 PHP-FPM 进程使用守护程序用户和组运行。这就是使用守护程序用户和组创建文件的原因。请确保用户和组对该文件夹具有读写权限。

sudo chown -R daemon:daemon /path/to/your/app/folder
sudo chmod g+w /path/to/your/app/folder

【讨论】:

  • 我使用“sudo chown -R daemon:daemon ~/htdocs/admin”没有变化。仍然是空文件...
猜你喜欢
  • 2019-09-04
  • 2017-05-05
  • 1970-01-01
  • 1970-01-01
  • 2014-04-25
  • 1970-01-01
  • 2015-07-20
  • 1970-01-01
  • 2012-03-31
相关资源
最近更新 更多