首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨域文件编辑

跨域文件编辑
EN

Stack Overflow用户
提问于 2010-04-24 18:30:06
回答 1查看 498关注 0票数 0

我需要知道,我的脚本是从哪里使用的(它是出售的,我不想要任何小偷)。我想在我的服务器上写文件,用户的IP,从脚本已经运行的域,日期等。我已经尝试了fopen,fwrite,但is_file_writable返回它不是。文件chmods是777,它的父目录有太777的chmod。

现在我正在尝试这样的东西:

代码语言:javascript
复制
<?php
$file = 'http://www.misiur.com/security/seal.txt';

$data = date("Y-m-d H:i:s");
$ip = $_SERVER['REMOTE_ADDR'];
$svr = $_SERVER['SERVER_NAME'];
$str = "[$data] Loaded by $ip at $svr\r\n";

$current = file_get_contents($file);
$current .= $str;
file_put_contents($file, $current);
?>

然而,什么都不会发生。我该怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-04-24 18:32:27

HTTP URL包装器doesn't allow writing

执行此操作的最佳方法是在远程服务器端使用脚本(在您的示例中为misiur.com

代码语言:javascript
复制
http://www.misiur.com/security/write_seal.php

使用POST将新文本文件的内容发送到该脚本。然后,脚本将在本地对接收到的信息执行file_put_contents()操作。

Here是一个代码片段,可以让你轻松地将POST内容发送到远程脚本。你需要POST,因为GET的大小通常被限制在1-2千字节。

当然,您需要以某种方式保护该脚本以防止恶意使用,例如通过基于.htaccess的密码保护或密钥。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2704104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档