如何在 .htaccess 中输入多个 PHP 值?
Posted
技术标签:
【中文标题】如何在 .htaccess 中输入多个 PHP 值?【英文标题】:How Do I Enter Multiple PHP Values in .htaccess? 【发布时间】:2011-01-19 09:37:53 【问题描述】:我正在编辑 .htaccess 文件,以便对我的 php.ini 文件进行一些覆盖(我无权访问它)。到目前为止,我已经添加了:
php_value max_execution_time 600
php_value error_reporting E_WARNING
php_value log_errors Off
我正在编辑的应用程序 (vTiger CRM) 建议将“error_reporting”设置为“E_WARNING & ~E_NOTICE”。当我输入该值时,我最终得到一个错误 500。如何添加正确的 error_reporting 值?谢谢。
【问题讨论】:
【参考方案1】:使用诸如E_WARNING
之类的常量在PHP 之外没有任何意义——当您编写.htaccess
文件时,您就处于“PHP 之外”。 (例如,参见documentation of error_reporting
)
因此,您不能使用这些常量,而必须使用它们的整数值,您可以在这里找到:Predefined Constants
在您的特定情况下,了解您应该使用哪个值的最简单方法是使用一个小的 PHP 脚本来进行计算。
例如:
<?php
var_dump(E_ALL & ~E_NOTICE);
将输出:
int 30711
(比通过常量的值,我想自己计算要容易得多^^)
【讨论】:
感谢您为我拼写出来。你的解释对我来说很有意义。 :) 不客气 :-) 玩得开心! (不得不承认,第一次做这种配置的时候,我问过自己和你一样的问题^^) var_dump(E_ALL & ~E_NOTICE);我没有看到,谢谢!【参考方案2】:您不能在 .htaccess 中使用 php 常量。它们在那种环境中不可用。您应该使用常量所代表的整数值。
【讨论】:
【参考方案3】:要考虑的其他事情是在您的 php 脚本中使用 ini_set(),您将可以访问 php 常量。
ini_set('max_execution_time', '600');
ini_set('error_reporting', E_WARNING);
ini_set('log_errors', '0');
在 phpsite ini.list.php 上有一个页面,它将告诉您哪些 ini 指令可以这样设置,哪些必须在 php.ini 中设置。 (我不能发布多个链接,对不起)你给出的3个例子都是合法的,以这种方式改变。
【讨论】:
以上是关于如何在 .htaccess 中输入多个 PHP 值?的主要内容,如果未能解决你的问题,请参考以下文章