我对配置 Apache 比较陌生。
我有一个 PHP 脚本,它根据从 $_GET
检索到的值编写一个 JSON 文件。
<?php
file_put_contents('State.json', "{ do: '" . $_GET['do'] . "' }");
echo "Success";
?>
我通过创建 XHR 请求来运行该代码。
Ally.xhr('/Cream/Foam?do=someCommand');
它返回的页面显示无法打开流:第 3 行的权限被拒绝。
<Directory "~/Dropbox/Web">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
这些是授予根服务器文件夹的权限。
我需要更改什么才能允许 PHP 写入文件?
(我几乎不知道上面的 block 是什么意思。)
最佳答案
您需要检查运行 apache 的用户是否具有写入目录的权限。
是这样的:
您的 Apache 服务器正在处理。该过程在某些用户(例如 www)下运行。 PHP 在 apache 下运行。因此,如果您尝试在 PHP 中写入一个目录,就好像用户 www 登录到服务器并尝试在同一目录中创建一个文件一样。因此,检查谁是该目录的所有者以及它具有哪些权限。你可以做到,例如通过 ls -la
命令。如果 www
将成为该目录的所有者,您将 100% 安全......
关于php - 在 Apache 中授予 PHP 写入权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5357781/