4

我对 IIS7 不是很熟悉,我需要创建一个服务器变量,以便可以在我的 PHP 代码中访问它。我可以通过使用以下方法在 Apache 中轻松完成此操作:

SETENV 变量名变量值

在 .htaccess 文件中。然而,在 IIS 中实现这一点似乎有点秘密。我已经在网上查找了信息,并且使用以下步骤使用 URL 重写模块可以找到最接近的状态:

  1. 单击查看服务器变量
  2. 单击添加链接并输入变量名称
  3. 返回规则并单击查看重写映射
  4. 单击添加重写映射并输入默认值。
  5. 重新启动了服务器。

完整文档可在以下位置找到:http ://www.iis.net/learn/extensions/url-rewrite-module/setting-http-request-headers-and-iis-server-variables

我跟着那个,但它仍然不起作用。任何想法如何做到这一点?甚至可以在 IIS 中执行此操作吗?我要做的就是设置一个具有静态值的服务器变量。

示例:$_SERVER['MY_VARIABLE']

谢谢。

4

3 回答 3

12

在 IIS 管理器中单击您的计算机,从“IIS”图标组中打开“URL 重写”图标。

在“操作”下(在最右边)单击无害的小“查看服务器变量”链接,忽略“管理服务器变量”

在“查看服务器变量”屏幕的“操作”(在最右侧)中,单击“添加...”

在此处输入图像描述

于 2014-01-14T17:09:34.773 回答
2

我通过使用 PHP auto_prepend_file 指令解决了这个问题。更多信息可以在这里找到:http ://www.php.net/manual/en/ini.core.php#ini.auto-prepend-file

只需创建一个将所需值添加到 $SERVER 数组的文件,将其设置为 auto_prepend_file 即可。这适用于任何服务器,而不仅仅是 IIS。

于 2013-03-11T21:47:46.127 回答
-1

其他答案显然有效,但似乎比我发现的方式更混乱。

转到 FastCGI 设置,您在其中配置了 PHP exe(根据原始问题)

右键单击...\php-cgi.exe,选择“编辑” 如果您在 IIS 上使用 PHP,则必须在此之前进行设置...

然后选择“环境变量”旁边的省略号

这里是隐藏魔法的地方!

然后您可以单击添加/删除并编辑您的变量。

添加/删除变量

于 2021-06-19T19:32:39.917 回答