如何在IIS中部署Php应用程序

时间:2013-05-17 08:11:37

标签: php iis-7 url-rewriting

我想做一些像下面的事情

enter image description here

在下面的文件夹结构中,应用程序文件夹包含我的应用程序的源代码,该代码在PHP中,并且PHP代码使用来自系统文件夹的一些文件。应用程序文件夹位于wwwroot的一侧。

enter image description here

我的wwwroot包含在file.in这个文件夹下面我有一个包含url写的Web.config如下:

 configuration>
  <system.webServer>
    <rewrite>
        <rules>
          <rule name="Imported Rule Test" stopProcessing="true">
            <match url="^(.*)$" ignoreCase="false" />
            <conditions>
              <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
              <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
              <add input="{URL}" pattern="^system.*" ignoreCase="false" />
            </conditions>
            <action type="Rewrite" url="/index.php?/{R:1}" appendQueryString="false" />
          </rule>
          <rule name="Imported Rule 2" stopProcessing="true">
            <match url="^(.*)$" ignoreCase="false" />
            <conditions>
              <add input="{URL}" pattern="^application.*" ignoreCase="false" />
            </conditions>
            <action type="Rewrite" url="/index.php?/{R:1}" appendQueryString="false" />
          </rule>
          <rule name="Imported Rule 3" stopProcessing="true">
            <match url="^(.*)$" ignoreCase="false" />
            <conditions>
              <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
              <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
            </conditions>
            <action type="Rewrite" url="index.php?/{R:1}" appendQueryString="false" />
          </rule>
        </rules>
      </rewrite>
  </system.webServer>
</configuration>

我的问题是如何在IIS 7中部署此PHP站点?

1 个答案:

答案 0 :(得分:0)

A virtual directory是一个目录名,用于地址,对应于服务器上的物理目录。您可以添加一个虚拟目录,其中包含站点或应用程序中的目录内容,而无需将内容物理移动到该站点或应用程序目录中。

creating iis7 sites applications and virtual directories

another guide