3

如果我打开访问但仍然出现 php 错误,我该怎么办?

Warning: file_get_contents() [function.file-get-contents]: http:// wrapper is disabled in the server configuration by allow_url_fopen=0 in ------------- on line 40

Warning: file_get_contents(http://finance.google.co.uk/finance/info?client=ig&q=NASDAQ:MSFT) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in --------------- on line 40

在此处输入图像描述

4

2 回答 2

7

尝试

ini_set("allow_url_fopen", 1);
if (ini_get("allow_url_fopen") == 1) {
echo "allow_url_fopen is ON";
} else {
echo "allow_url_fopen is OFF";
}
print ini_get("allow_url_fopen");  

或者你可以尝试不同的方法

function curl($url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    $return = curl_exec($ch);
    curl_close ($ch);
    return $return;
}
$string = curl('http://www.example.org/myfile.php'); 

尝试将此代码添加到您的 . htaccess文件:

php_value allow_url_fopen On

如果使用wamp php.ini的是两个文件夹 C:\wamp\bin\apache\apacheVersion\binC:\wamp\bin\php\phpVersion那么allow_url_fopen=on在两个文件中进行设置

于 2013-07-29T15:11:37.103 回答
-1

我花了 3 天时间才弄清楚。决定发布这个,以防你和我有类似的情况。就我而言,我使用的是共享主机设置,我试图安装 composer,然后是 slim 框架。

从 CPanel 我选择了 Php 7.2 并启用了 phar 和 json。但是从 SSH shell 中,当我运行 composer 命令时,它会说没有安装 phar 和 json 扩展。此外,php 版本是 5.6。

php --ini

或者

php -v

然后我检查了 SSH 上的所有别名以查看绑定了哪个 PHP

alias

于是得知SSH shell PHP版与前端cpanel php无关。两者都是完全独立的设置。

现在要更新我的 shell 的 php 版本,我通过 shell 命令将 php 别名为 php72 文件夹。然后问题是如何启用 phar 和 json 库。所以我在我的命令中传递了它们以在执行我的 composer.phar 脚本时使用这些库。

$ php -d extension=phar.so -d extension=json.so composer.phar require slim/slim:4.0.0

您还可以通过更新 .bash_profile 来更改 SSH 的默认 PHP,并将其 for php 中的别名定义为;

alias php='your php folder path'

如果您使用 FTP 文件,.bash_profile 文件将位于您的用户文件夹的根目录中。CPanel 文件资源管理器不显示隐藏文件或其他类型的文件。它只显示某些扩展文件。

它终于工作并安装了我的苗条框架。我希望这可以帮助那些正在挣扎的人。

和平!骄傲的巴基斯坦人

于 2019-08-30T16:35:42.767 回答