在终端执行php脚本时出现权限给予拒绝错误

ejk8hzay  于 2023-02-03  发布在  PHP
关注(0)|答案(4)|浏览(141)

我有一个php脚本。它在网络服务器上工作正常。我需要在linux终端上执行它。然后它给Php警告权限被拒绝。
有人能帮我吗?
linux命令:

usr/bin/php /var/www/site/myscript.php

php脚本

<?php
$text = "Cats chase mice";
$filename = "somefile.txt";
$fh = fopen($filename, "a");
fwrite($fh, $text);
fclose($fh);
?>
0x6upsns

0x6upsns1#

在浏览器中php文件/脚本以www-data权限运行。但是在CLI中您可能以普通用户运行。您可以通过添加普通用户作为所有者来更改文件的权限。可能您也需要更改目录的权限。

yquaqz18

yquaqz182#

检查一下

sudo usr/bin/php /var/www/site/myscript.php
ut6juiuv

ut6juiuv3#

您需要一些权限才能写入文件。
如果您确定脚本无害,则可以执行以下操作:

sudo /usr/bin/php /var/www/site/myscript.php

否则,您可以创建文件并将其提供给将启动脚本的用户:

touch somefile.txt && chown [user] somefile.txt
bejyjqdl

bejyjqdl4#

首先,您应该检查对/var/www/site/somefile. txt的权限-似乎您无法写入somefile.txt。您可以对该文件执行chown操作,或尝试以root用户身份运行命令(不推荐)

相关问题