我在我的应用程序上使用了一个GD库,它要求我修改我的php.ini来工作。我理解如果取消对extension=fileinfo.so的评论,应用程序将按需要工作,但我面临的挑战是,我无法访问共享主机服务器配置。我的问题是,有什么方法可以绕过使用ini_set('', '')
先谢
发布于 2015-07-06 08:11:10
由于安全原因,共享托管已经禁用了ini_set()功能,如果托管提供商将ini_set()打开给您,您可以完全访问php变量控件,托管提供商不希望这样做。
为此,您可以通过应用程序根文件夹中的.htaccess文件执行此操作。
允许使用.htaccess执行两个指令
php_flag <boolean-flag-name> on|off
php_value <flag-name> <flag-value>php_flag应该用于on/off值
例如,以下.htaccess文件将禁用globals,将最大文件上载大小设置为20 to,并允许PHP脚本运行10分钟(600秒):
php_flag register_globals off
php_value upload_max_filesize 20M
php_value max_execution_time 600您还可以使用ini_set函数。在php脚本中,它允许您在运行时更改应用程序中的设置。该函数接受两个参数:
Ini_set(标志名称,标志值),
示例
<?php
ini_set('register_globals', 0);
ini_set('upload_max_filesize', '20M');
ini_set('max_execution_time', 600);
?>在将这些值更改为查询之前,我们可以查询php解释器,可以使用ini_get()方法
ini_get(flag-name)返回配置值。我建议检查您的配置更改并采取适当的操作。不要假设ini_get()总是有效的。
ini_get_all(extension)将所有配置值作为关联数组返回。可选扩展参数返回特定于该扩展的选项,例如‘allow_url_fopen’。
get_cfg_var(flag-name)从php.ini返回原始配置值(而不是.htaccess或ini_set中设置的任何重写)。
ini_restore(flag-name)将配置选项返回到其原始值。
https://stackoverflow.com/questions/31240008
复制相似问题