Carlos Quijano 发布的解决方案对我不起作用。我发现解决方案会有所不同,具体取决于 PHP 作为模块、CGI 还是 FASTCGI 运行。
这是我找到的关于可用于为您的域(甚至子域)使用自定义 php.ini 文件的不同方法的文档
首先,您应该检查哪一个是您的情况。
为此,您可以使用 phpinfo 命令:
使用以下内容创建一个名为 phpinfo.php 的 php 文件:<?php phpinfo(); ?>
并将其上传到您的域根目录,然后访问 www.yourdomain.com/phpinfo.php,您会看到一个表格,在“服务器 API”旁边您会看到哪个PHP 的运行方式。
对我来说,它是“CGI/FastCGI”,所以我必须获取全局 php.ini 的副本,我不知道如何获取它,因为它无法通过 FTP 访问。我在 Drupal 论坛中找到了解决方案:
创建一个 php 文件,您可以使用以下内容调用 gettheini.php:
<?php system("cp /usr/local/php5/lib/php.ini /home/YOURCPANELUSERNAME/php.ini"); ?>
*第一个路径必须是之前获取的表格中“配置文件(php.ini)路径”旁边的路径(phpinfo.php),最后是php.ini。第二个路径是您要将其复制到的路径。
将其上传到您的域根目录,然后访问 www.yourdomain.com/gettheini.php。此命令将复制全局 php.ini 文件到您指定的路径。然后您可以编辑该文件添加
; configuration for php suhosin module
extension=suhosin.so
suhosin.executor.include.whitelist="phar"
suhosin.executor.include.whitelist="upload"
保存并上传。
由于我的托管服务已经对 php.ini 进行了一些安排,当我再次检查 phpinfo 页面时,新文件已经在工作(检查“加载的配置文件”旁边)。
不要忘记保护新文件,添加
<Files php.ini>
order allow,deny
deny from all
</Files>
到 yout .htaccess 文件的末尾(在您的域或子域的同一根文件夹中)
我希望我的经验可以帮助你解决你的问题,或者至少给你一些指导。