gpt4 book ai didi

php - 在 Ubuntu 中运行 PHP 程序 - fopen ("filename", "w") : Failed to open stream: Permission denied

转载 作者:行者123 更新时间:2023-12-04 18:56:11 29 4
gpt4 key购买 nike

我使用 Ubuntu 作为我的操作系统,并且里面有 XAMPP。在 htdocs文件夹,我创建了一个项目文件夹,其中有 index.php文件。现在在 index.php 中,部分代码执行以下操作:

fopen("colors_new.csv", "w");

来自 manual ,

'w' Open for writing only; place the file pointer at the beginning of the file and truncate the file to zero length. If the file does not exist, attempt to create it.



但是我没有创建文件,而是得到
Warning: fopen(colors_new.csv): failed to open stream: Permission denied...

当我查看项目文件夹时,colors_new.csv文件未创建。

当我在另一台运行 Windows 操作系统的计算机上运行该程序时,它运行成功。文件已成功创建。

如何在 Ubuntu 中解决此问题?

我尝试了什么:

我试图运行 sudo chmod 777 colors_new.csv 但我得到 chmod: can not access colors_new.csv. No such file or directory. .当终端在项目目录中时,我仅使用文件名(如图所示)进行了尝试;以及提供文件的完整绝对路径。两次都出现同样的错误。

注意:我看到了其他问题,如上所述,我试图授予该文件的权限。其他问题没有解决问题,下面接受的答案确实解决了。

最佳答案

这意味着您无权在 index.php 所在的目录中写入文件。你可以做几件事来让它发挥作用

  • 授予目录的文件写入权限。
    如果设置正确,则使用 755 和文件 644 就足够了。永远不要吃饱777 ,这是安全风险。
  • 在您的目录中创建一个子目录并赋予足够的权限(755)来做您想做的事。
    菲fopen('./files/colors_new.csv)
  • 关于php - 在 Ubuntu 中运行 PHP 程序 - fopen ("filename", "w") : Failed to open stream: Permission denied,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39138780/

    29 4 0