【问题标题】:PHP Overwrite file on other serverPHP覆盖其他服务器上的文件
【发布时间】:2014-11-14 09:45:29
【问题描述】:

我有一个名为 updateServer.php 的文件,其中包含以下代码:

$myfile = fopen("http://173.XXX.XXX.XXX/myurl/demo/path.txt", "w") or die("Unable to open file!");

我想使用此文件来编辑放置在另一台服务器上的 path.txt 文件。 这真的可能吗,因为我无法做到这一点。

我从中得到了帮助:http://php.net/manual/en/features.remote-files.php

PS : 我在同一个服务器上重写了文件并且在同一个服务器上成功了。

【问题讨论】:

    标签: php shell phpsh


    【解决方案1】:

    您无法写入带有fopen 的网址。它只发出 GET 请求。

    您可以使用the cURL library 来生成an HTTP PUT request,但您必须配置您正在写入的服务器以支持这种方式的 PUT 请求。 (Web 服务器默认情况下不这样做,因为任何 HTTP 客户端都能够将文件写入任何服务器是很疯狂的)。

    【讨论】:

    • 我有一个服务器,我将一次又一次地克隆。并且我想使用放置在我的服务器上的 PHP 文件为每个克隆服务器更改一个配置文件。有什么简单的方法可以做到这一点。因为它将是动态的,我将在文本框中手动粘贴服务器 IP,它将更改放置在该服务器上的文件。
    • 听起来像是 Puppet 等配置管理软件的工作,而不是自定义 PHP 脚本。
    • 我现在正在考虑另一种不同的逻辑。我将在我的服务器上创建一个 GUI,并将我的第二个文件“updateServer.php”放在将被克隆的主服务器上。每次克隆服务器时,新的服务器实例也会包含 updateServer.php 文件。从我的服务器的 GUI 中,我将使用 POST、AJAX 或 cURL 等发送请求。怎么说?
    猜你喜欢
    • 2014-08-29
    • 1970-01-01
    • 2012-02-19
    • 1970-01-01
    • 1970-01-01
    • 2020-09-28
    • 2020-01-16
    • 2014-12-19
    • 2012-02-07
    相关资源
    最近更新 更多