这个简单的代码创建一个文件,当页面刷新但它不起作用。
<?php
$fileName="test1.html";
$content="<h1>header</h1>";
file_put_contents($fileName,$content);
?>
从我所看到的,用户拥有创建文件所需的所有权限
lrwxrwxrwx. 1 admin1 root 13 Jul 10 22:35 html -> /var/www/html
可能阻止创建文件的任何想法?
答案 0 :(得分:0)
您的html
是/var/www/html
的符号链接:
ls -ldZ /var/www/html
drwxr-xr-x. 2 admin1 brahim system_u:object_r:httpd_sys_content_t:s0 274 Jul 24 17:36 /var/www/html
您不需要该符号链接的写入权限,但需要符号链接的目标。
也不是你拥有权限,而是运行apache
网络服务器的用户(通常是www-data
,apache
在Fedora上需要这些权限。
同时为所有用户提供写入您的网站目录的权限是一个坏主意,所以让我们尝试一下:
在名为/var/www/html
的{{1}}中创建一个子目录:
data
为mkdir /var/www/html/data
用户授予其可写权限:
apache
修改脚本以写入此目录:
chown apache:root /var/www/html/data
chmod 700 /var/www/html/data