php ubuntu Web服务器上的fopen和cURL

问题描述 投票:0回答:1

无论我是尝试创建文件还是在外部URL上使用file_get_contents,我似乎都无法使fopen(或curl)代码正常工作。我检查了phpinfo和allow_url_fopen,allow_url_include和curl都设置为on,甚至查看了php5 / apache2 / php.ini,它们都设置为on。但不管我做什么,没有php代码有效。以下是一些示例(在wamp / localhost上有效,但在移至实时Web服务器时无效)

在文件夹中创建一个html文件(在Windows localhost / wamp服务器上运行)

if (!file_exists('media/folder')) {
 mkdir('media/folder', 0755, true);
 }
 $config_file = 'media/folder/config.html';
 $config_file_handle = fopen($config_file, 'w') or die('Cannot open file:  '.$config_file); //implicitly creates file

 $config_file = 'media/folder/config.html';
 $config_file_handle = fopen($config_file, 'w') or die('Cannot open file:  '.$config_file);
 $config_data = 'add to my file content'.PHP_EOL.'

';
fwrite($config_file_handle, $config_data);

在实时服务器上不起作用。非常令人沮丧,因为这需要工作并且尝试了许多卷曲选项,但也失败了。

下面是另一个在本地工作但无法实时运行的php代码段。

<?php

//works locally if external url used
//works locally if local file used
//Does not work live server if external url used
//Does work live server if local server url used
$string = file_get_contents('my url');
$json_a = json_decode($string, true);

foreach ($json_a as $person_name) {

//Person Name
echo $person_name['PersonName'];

}
?>

如果我无法使它正常工作,就无法实现已设定的工作。

任何帮助,感激

php ubuntu curl fopen
1个回答
1
投票

[一个非常常见的错误,您可能需要允许用户www-data访问所需的文件。只需右键单击要单击属性的文件或文件夹,转到权限选项卡,并将www-data设置为所有者。

© www.soinside.com 2019 - 2024. All rights reserved.