加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – IIS 8不能识别web.config

发布时间:2020-12-13 16:25:41 所属栏目:PHP教程 来源:网络整理
导读:我在我的IIS 8(Win 2012)服务器上运行了多个 PHP(Laravel)应用程序.这是我所有应用程序的web.config文件: configuration system.webServer rewrite rules rule name="Imported Rule 1" stopProcessing="true" match url="^(.*)/$" ignoreCase="false" / con
我在我的IIS 8(Win 2012)服务器上运行了多个 PHP(Laravel)应用程序.这是我所有应用程序的web.config文件:
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Imported Rule 1" stopProcessing="true">
          <match url="^(.*)/$" ignoreCase="false" />
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
          </conditions>
          <action type="Redirect" redirectType="Permanent" url="{R:1}" />
        </rule>
        <rule name="Imported Rule 2" stopProcessing="true">
          <match url="^" ignoreCase="false" />
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
          </conditions>
          <action type="Rewrite" url="index.php" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

但是在一个应用程序中,IIS会不时地出现一个问题:我的应用程序不起作用,因为URL错误.如果我重新启动Web服务器或更改web.config文件(添加一个空的空间或东西…),它再次工作.

我不知道…我的其他应用程序没有问题,它是相同的web.config代码.

所有用户(IIS_IUSR,Admins等)都具有完整的写入和读取权限.

我的应用程序在文件夹中组织,请参阅:


我用10.0.0.7/doku或10.0.0.7/lagerverwaltung命名.

当使用IIS时,我会考虑将每个特定的站点文件夹(doku,lagerverwaltung等)转换为自己的应用程序.这样就不会混淆在加载时使用哪个web.config文件,然后应用程序可以在自己的应用程序池和线程中运行.

为此,IIS内部右键单击要转换的特定文件夹,然后单击打开的上下文菜单中的“转换为应用程序”.在随后的屏幕中,您可以选择现有的或新的应用程序池,还可以设置您可能需要的任何所需的直通身份验证.

强制子站点运行在他们自己的应用程序池中,并使用自己的web.config文件专门应该消除您的问题,潜在的后备到基础web.config.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读