2

我在 IIS7 上安装了 PHP5.2.8,它适用于我的默认站点(位于 C:\Inetpub\wwwroot)。

现在,我需要在我的机器上运行我公司站点的本地副本,每个副本都是 wwwroot 中的目录。我已经在一个单独的端口上设置了每个端口,所以我可以访问http://localhost:[portnum]来访问每个端口。

如果我尝试访问文件,请说:http://localhost:5002/test.php - 我得到一个

“没有指定输入文件。

" 错误。如果我通过http://localhost/Mysite.com/test.php尝试它工作正常。我认为这可能与 php.ini 中的 doc_root 设置有关?我将其设置为 C: \Inetpub\wwwroot. 我将 PHP 作为 FastCGI 模块运行。

有谁知道一个全面的教程或在 IIS 上设置 PHP 以进行这样的配置?或者有什么建议?

我还想知道在 ISAPI 模式下安装它是否会得到不同的结果。想法?

4

1 回答 1

1

我认为你的做法是错误的。如果您要运行一个站点或不同站点的本地副本,您应该将它们建立在不同的目录中。这是设置 IIS 7 或 7.5 的一个非常简单直接的过程。只要您安装了 PHP,它将适用于所有站点。

第1部分

  1. 在管理模式下打开notepad.exe
  2. 找到您的主机文件 (C:\Windows\System32\drivers\etc) -[注意:主机上没有扩展名]
  3. 添加另一个站点 IP / 名称,如下所示:

例子

#102.54.94.97    rhino.acme.com
127.0.0.1   localhost
127.0.0.2   testsite
127.0.0.3   testsite_etc

注意:如果你正在做开发测试,你可以去掉 .com 并组成一个名称以供使用,就像“localhost”一样。“POUND”符号将注释掉任何行。

第2部分

  1. 现在在 IIS 中添加一个新站点(网站)
  2. 将网站命名为您想要的任何名称
  3. 选择您的网站文件所在的文件夹。(这是根文件夹)
  4. 指定您添加到主机文件的 IP 地址(示例 127.0.0.2)
  5. 对于主机名,指定您在主机文件 (testsite) 中使用的名称
  6. 将端口保留为 80,并根据您的站点的需要使用 http 或 https
  7. 确保网站计划默认启动。

注意上面的第 3 项:这允许您在自己的目录中拥有站点,这是一个常见的误解,您需要将所有站点发布在 inetpub/wwwroot/...

第 3 部分

只需在浏览器地址栏中输入:testsite/ 或 127.0.0.2/ 即可加载您的网站。如果目录发现关闭,您还需要输入默认页面...(EG testsite/index.php)

我有一台运行 30 个独立站点的机器,它们都使用 PHP 从单个安装中处理它们。上面的例子是用于开发测试的,你可以在IIS机器上线需要DNS转发到实际IP地址时搜索差异。

于 2014-03-25T20:38:53.660 回答