提问者:小点点

使用PHP编辑硬链接或软链接的目标位置内容


我知道这是一个安全威胁,从安全角度来看是不好的,但由于一个特定的原因,我需要它来工作。我有一个程序在Ubuntu 16.04上运行。让我们假设在这个例子中,它是一个DNS服务器或其他什么。

我想做的是编辑DNS服务器配置文件,位于网页 /etc/xxx,使用PHP fopen、f写和foff。因为您无法访问直接位于 /etc/xxx/somecfg.cfg的文件,因为它没有www. data权限,我尝试将其链接到 /var/www/html,包括软链接和硬链接。当我创建一个硬链接时,如果我手动编辑它,它也会改变原始的cfg文件,但是一旦我通过PHP编辑它,只有硬链接文件会改变,而不是原始文件。

周末我一直在努力解决这个问题,但我似乎做不到。

有人知道我该怎么解决这个问题吗?我也愿意接受其他想法。主要目标是从网页中编辑包配置文件。

TL;DR:我正试图从/var/www/html/someaction编辑/etc/xxx中的一个配置文件。php和直接使用它是不起作用的(显然),但是硬链接和软链接的行为很奇怪——链接的内容发生了变化,但是原始的cfg文件没有。

谢谢!


共1个答案

匿名用户

问题是,我不小心在代码的开头取消了链接,硬链接被删除了,所以我基本上每次写一个新文件。

现在修好了。