无法在PHP中更改allow_url_include值

时间:2014-12-24 17:37:38

标签: php apache php-ini

我在运行PHP 5.5.9的PC上使用Apache 2.4.7 Ubuntu 14.04。我试图在其他Web服务器中包含一个PHP脚本,仅用于某些测试目的。但我似乎无法启用allow_url_include。我试过这个:

<?php
    echo(ini_get("allow_url_include") . "<br />");

    ini_set("allow_url_include", "On");

    echo(ini_get("allow_url_include"));
?>

它给了我这个输出:

0
0

我甚至通过编辑实际的/etc/php5/apache2/php.ini文件并设置allow_url_include = Off来尝试此操作,但仍然是相同的。

我该怎么做?

3 个答案:

答案 0 :(得分:2)

  

YES!它起作用了:D对,那一行警告引起了它!我在原始的php.ini文件中将其更改为error_reporting = E_ALL,现在我可以将allow_url_fopen更改为1.将其作为答案发布,我将其标记为已接受。感谢大家。 - lonekingc4


我看到你的pastebin文件包含你正在使用的代码:

error_reporting(E_ALL)
;   Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
;   Development Value: E_ALL
;   Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT

使用:

error_reporting = E_ALL而非error_reporting(E_ALL) - 因此,警告

Warning: syntax error, unexpected '('...

将它放在.php文件中时使用

error_reporting(E_ALL)

I.e。:

<?php 
error_reporting(E_ALL); 
ini_set('display_errors', 1);

// rest of code
  • 这样做,重启Apache,你应该好好去。

旁注: Error reporting应该只在分段中完成,而不是生产。

答案 1 :(得分:0)

试试这个:

ini_set('display_errors', true);
ini_set('safe_mode', false);
ini_set('allow_url_fopen', true);
ini_set('allow_url_include', true);
print_r(ini_get_all());


ini_set('allow_url_include', 'on');

答案 2 :(得分:0)

失败,因为它没有读取您的php.ini

尝试将Windows上的php.ini更改无济于事,我遇到了同样的问题。您必须找到正确的默认位置:

创建一个test.php文件并添加phpinfo(); 在浏览器中打开文件,然后检查以下值:

配置文件(php.ini)路径C:\ WINDOWS 加载的配置文件C:\ WINDOWS \ php.ini

当您将php.ini文件移动到正确的位置并重新启动php服务器时,更改最终将生效。

享受!