Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 跨域写入?_Php_Fwrite - Fatal编程技术网

Php 跨域写入?

Php 跨域写入?,php,fwrite,Php,Fwrite,下面的代码是否可能?或者不,因为这是一个安全问题?我想将fwrite从一个文件夹写到另一个文件夹,因此如果fwrite函数位于/1,我可以将fwrite写入/2上的.txt文件吗 <?php $myFile = "../news/derp.txt"; $fh = fopen('derp.txt', 'w') or die("File Can't Be Written To."); $stringData = "Yo, ."; fwrite($fh, $stringData); fclose

下面的代码是否可能?或者不,因为这是一个安全问题?我想将fwrite从一个文件夹写到另一个文件夹,因此如果fwrite函数位于/1,我可以将fwrite写入/2上的.txt文件吗

<?php
$myFile = "../news/derp.txt";
$fh = fopen('derp.txt', 'w') or die("File Can't Be Written To.");
$stringData = "Yo, .";
fwrite($fh, $stringData);
fclose($fh);
?>

远程文件很可能不可由PHP写入,但如果是本地文件夹,则取决于PHP是否具有对该文件夹+文件的写入权限

请阅读以下内容:

如果PHP决定filename指定一个本地文件,则它将尝试打开该文件上的流。该文件必须可供PHP访问,因此您需要确保文件访问权限允许此访问。如果启用了安全模式或open_basedir,则可能会应用进一步的限制


远程文件很可能不可由PHP写入,但如果是本地文件夹,则取决于PHP是否具有对该文件夹+文件的写入权限

请阅读以下内容:

如果PHP决定filename指定一个本地文件,则它将尝试打开该文件上的流。该文件必须可供PHP访问,因此您需要确保文件访问权限允许此访问。如果启用了安全模式或open_basedir,则可能会应用进一步的限制


只要脚本在具有文件写入权限的上下文中执行,它就应该可以工作


安全问题需要更多关于您正在使用它做什么以及第二个目录是否公开可见的信息。

只要脚本在具有文件写入权限的上下文中执行,它就应该可以工作


安全问题需要更多关于您正在使用它做什么以及第二个目录是否公开可见的信息。

PHP可以写入文件系统中的任何位置。PHP并不局限于运行它的服务器的域,这就是为什么LFIs如此高效。

PHP可以写入文件系统中的任何位置。PHP并不局限于运行它的服务器的域,这就是LFIs如此高效的原因。

PHP可以写入它有写访问权的任何目录。如果您没有权限访问它,比如它是共享服务器上其他人的帐户,那么您可能无法访问它。

PHP可以写入它具有写入权限的任何目录。如果您没有访问权限,比如说它是共享服务器上其他人的帐户,那么您可能无法访问它。

我的问题的答案是肯定的。我只是不知道当时的情况,也不知道提升到档案的正确方式。这是最后的工作脚本。 从/1/fwrite.php开始编写,下面是脚本

<?php
$file = fopen("../2/derp.txt","w");
fwrite($file,"Hello World!");
fclose($file);
?>


我的问题的答案是肯定的。我只是不知道当时的情况,也不知道提升到档案的正确方式。这是最后的工作脚本。
从/1/fwrite.php开始编写,下面是脚本

<?php
$file = fopen("../2/derp.txt","w");
fwrite($file,"Hello World!");
fclose($file);
?>



您不是在跨域写入,而是在同一文件系统上写入不同的文件。如果web服务器用户对该文件具有写访问权限,它将正常工作。只需在奇妙的
localhost
领域中尝试。这取决于文件权限。在localhost中,正确的链接是什么$myFile=“localhost/news/derp.txt”;?您不是在跨域写入,而是在同一文件系统上写入不同的文件。如果web服务器用户对该文件具有写访问权限,它将正常工作。只需在奇妙的
localhost
领域中尝试。这取决于文件权限。在localhost中,正确的链接是什么$myFile=“localhost/news/derp.txt”;?那么,我应该将位置指定为什么呢?如果PHP查看其所在的文件夹,我可以指定将解析为本地主机的域吗?不,指定域将导致它使用HTTP(这可能有效,也可能无效,取决于服务器的设置)。您必须指定要写入的区域的文件系统位置,并且必须将其作为第一个域装入服务器。因此,如果我想从/1转到/2,url会是什么样子$myFile=“../2/derp.txt”?是的,在大多数系统中,“…”上升。那么我应该指定什么位置?如果PHP查看其所在的文件夹,我可以指定将解析为本地主机的域吗?不,指定域将导致它使用HTTP(这可能有效,也可能无效,取决于服务器的设置)。您必须指定要写入的区域的文件系统位置,并且必须将其作为第一个域装入服务器。因此,如果我想从/1转到/2,url会是什么样子$myFile=“../2/derp.txt”?是的,“…”在大多数系统中上升。