加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – fopen()无法在linux上创建文件

发布时间:2020-12-13 13:28:29 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试通过fopen()创建一个文件,如下所示: ?php $handle = fopen('name.txt','w') or die('Can't create file'); fwrite($handle,'Hamed'."n"); fwrite($handle,'Kamrava'."n"); echo 'File was created successfully';? 但是没有创建该文件并让我:
我正在尝试通过fopen()创建一个文件,如下所示:
<?php 
  $handle = fopen('name.txt','w') or die('Can't create file');
  fwrite($handle,'Hamed'."n");
  fwrite($handle,'Kamrava'."n");
  echo 'File was created successfully';
?>

但是没有创建该文件并让我:

无法创建文件

P.S:

我在Linux / Ubuntu上使用LAMP服务器.

我在创建该文件之前尝试过以下命令:

sudo chmod -R 755 ~/public_html/

任何想法,将不胜感激.

PHP脚本作为为Apache Web服务器配置的用户执行.要创建文件,此用户必须具有要在其中创建文件的目录的写入权限.有两种方法可以做到这一点:

您可以为所有用户提供目录的写入权限,其中包括为Apache配置的任何内容(对于开发计算机来说足够好):

chmod o+w ~/public_html/directory_where_you_want_to_write

或者,您可以将目录的所有权传递给Apache用户.这意味着您使用常规用户帐户将无法在此目录中创建或删除文件,除非您也执行上述操作.假设Apache使用www-data用户帐户运行,就像默认情况下在Ubuntu上运行一样,您可以:

sudo chown www-data ~/public_html/directory_where_you_want_to_write

(并且目录不必在public_html下,我只是用它作为一个例子,因为它似乎是你的文件所在.)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读