我写了一个简单的API,将数据从一台服务器集合到另一台服务器。它是一个非常简单的基于$_GET
的api,其中所有数据都作为GET数据附加到url。问题php file_get_contents和文件长度
所以我得到的是这样的: http://example.com/api.php?param1=afdsa¶m2=TTTT&....
等
为了调用它,我用file_get_contents($url);
首先是 - 我并不真的需要答复的内容。我只需要“触摸”这个网址,这样它就会启动。
我有我的托管(共享,justhost)的问题,我已经搬到了VPS。 我开始让我的API调用超时,当我检查了Apache的error.log我已经看到:
"failed to open stream: File name too long in ..."
事实上 - 在$url
字符串是大约450个字符。
问题是 - 我在哪里更改文件长度的设置。它与硬盘驱动器文件系统不一样,因为我自己的计算机使用相同的字符串,没有问题,也没有错误。 也 - 共享主机没有任何问题,该网址。
的VPS运行的Ubuntu 10.04 LTS与PHP版本5.3.2-1ubuntu4.9
得到任何帮助,一直坐在那两天
解决
那么你知道如何是否当你认为你知道问题在哪里但它不是?好 - 那就是问题所在。 我已经重写了我的API,所以它会做的是print_r($_GET);
,你知道什么 - 它工作正常。 所以我开始逐一添加这些行,并发现堆栈脚本是一个PHP邮件函数。为什么?我不知道,也许邮件设置不正确 - 但现在,当我评论了邮件 - 所有工作正常。
它仍然没有解释我的“文件到长”的错误,但没关系。感谢大家
我有一些你可以考虑的事情 - 为什么使用'file_get_contents'如果你需要做的就是“打”一切工作的URL?有cURL,有'header()'.. – 2011-05-26 13:11:45
实际上,如果我将所有网址粘贴到浏览器地址栏,脚本也会堆叠,这不是我称之为的方式,也不是其他方式。该脚本运行,但我得到“PHP通知:未定义的索引:”,它需要很长的时间 – TwoDiv 2011-05-26 13:19:50
嗯,这是PHP邮件的问题,编辑我的帖子 – TwoDiv 2011-05-26 14:04:32