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. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |