【问题标题】:Can php.ini file be used at the directory level? [closed]php.ini 文件可以在目录级别使用吗? [关闭]
【发布时间】:2012-11-23 21:54:08
【问题描述】:

我想知道是否可以在目录级别使用 php.ini 文件?具体来说,我有一个域指向子目录中的虚拟文档根目录,并且想要覆盖之前在物理根目录中的 php.ini 文件中定义的一些 php.ini 值。

这是否可以通过在子目录中的新 php.ini 中重新定义这些值来实现?我试图避免在.htaccess 文件中定义这些。

【问题讨论】:

标签: php ini


【解决方案1】:

一般不会,但在特殊情况下(CGI/FastCGI)是:http://php.net/configuration.file.per-user

自 PHP 5.3.0 起,PHP 支持基于每个目录的 .htaccess 样式的 INI 文件。这些文件仅由 CGI/FastCGI SAPI 处理。此功能淘汰了 PECL htscanner 扩展。如果您使用的是 Apache,请使用 .htaccess 文件以获得相同的效果。

除了主 php.ini 文件外,PHP 还会扫描每个目录中的 INI 文件,从请求的 PHP 文件的目录开始,一直到当前文档根目录(如 $_SERVER[' DOCUMENT_ROOT'])。如果 PHP 文件位于文档根目录之外,则仅扫描其目录。

您只能在 user-ini-file 中设置有限的 ini 选项子集。如果您在一台服务器上托管多个独立站点,则无论如何都应考虑使用 FastCGI,以使它们分开。使用 php5-fpm 可以很容易地设置多个工人池。

【讨论】:

  • 感谢您提供的所有重要信息。听起来我的配置符合你提到的所有标准。它确实按照你说的做并扫描额外的 ini 文件,但似乎不支持虚拟文档根目录,因为当我使用 phpinfo 脚本进行测试时,它只显示服务器配置 php.ini 和我的 Document Root 中的 php5.ini 已加载。我确实看到一个地方说“已解析其他 .ini 文件”,但给出的结果是(无)。我最终只是在 .htaccess 文件中定义了我现在需要的 .ini 选项。再次感谢您的提示!
猜你喜欢
  • 1970-01-01
  • 2018-03-15
  • 1970-01-01
  • 1970-01-01
  • 2013-04-17
  • 1970-01-01
  • 1970-01-01
  • 2013-04-03
  • 2020-01-06
相关资源
最近更新 更多