【问题标题】:Using a custom PHP.INI for a single site. Windows 2003, 64bit, IIS7.5, PHP 5.3.6为单个站点使用自定义 PHP.INI。 Windows 2003、64 位、IIS7.5、PHP 5.3.6
【发布时间】:2012-05-07 10:02:19
【问题描述】:

我在单个站点上有一个 PHP 脚本,它要求我将最大上传大小设置得相当高。我不想在全球范围内这样做。

根据 PHP 文档,我无法使用 ini_set 设置某些变量的值,例如 post_max_sizemax_file_uploadsupload_max_filesize。我在这里看到了许多在 UNIX 机器上运行 PHP 或在运行 Apache 的 Windows 上运行的解决方案,但没有一个使用 IIS 对我来说很清楚。

我的理解是有一种方法可以让我有一个自定义的 php.ini 文件来覆盖特定的 php.ini 值。

理想情况下,我希望文件夹中有一个 php.ini 文件,其中包含一个看起来像这样的脚本:

[PHP]
post_max_size = 200M
max_file_uploads = 5
upload_max_filesize = 200M

如果不在我的服务器上全局设置值,我如何才能做到这一点?

【问题讨论】:

  • 不确定 IIS,但在 Apache 服务器上,您可以在 .htaccess 文件中指定设置。示例:php_value upload_max_filesize 32M
  • @Brad ;好问题:我如何确定?
  • @Brad 我已经安装了 CGI,并且在 IIS 的根目录中,我有“FastCGI 设置”面板。
  • @HumanBacon,你是如何设置 PHP 的?当您安装 PHP 时,您会以一种或另一种方式设置它。我问的原因是,如果我没记错的话,您可以指定不同的命令行来为不同的站点运行脚本。如果是这种情况,您可以在命令行上指定不同的 INI 文件。 phpinfo() 可能会告诉你,但如果我没记错的话,它只是说 CGI/FastCGI,而不是其中一个。我已经有一段时间没有使用 IIS了……我不完全记得了。
  • @HumanBacon,嗯,抱歉,我不知道如何使用 FastCGI 来做到这一点。我确信这是可能的。希望其他人知道答案。您可以考虑将此问题移至 ServerFault.com。

标签: php iis-7.5 windows-server-2003


【解决方案1】:

您可以使用 PHPRC 环境变量为每个网站设置单独的 ini 文件,如此处所述http://php.net/manual/en/configuration.file.php

这里有一篇关于如何为 IIS 6 和 7 设置它的文章。

http://learn.iis.net/page.aspx/745/enable-per-site-php-configuration-on-iis-60-and-iis-7-and-above/

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2017-06-25
    • 2011-10-25
    • 1970-01-01
    • 1970-01-01
    • 2014-07-17
    • 1970-01-01
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    相关资源
    最近更新 更多