[英]How to convert htaccess rules to web.config for IIS7/Symfony?
[英]Alternate Web.Config for IIS7 Rewrite Module Rules
是否可以將IIS7重寫模塊創建的規則從根網站配置移動到自己的Web配置文件中,就像使用appsettings一樣,如果是這樣的話?
我似乎無法讓它工作,但它描述的方式是:
<rewrite>
<rewriteMaps configSource="external.config">
</rewriteMaps>
</rewrite>
然后在external.config文件中添加您的規則:
<rewriteMaps>
<rewriteMap ...
...
</rewriteMaps>
你必須與整個RewriteMap指令S部件要做到這一點:根據該論壇的帖子,你不能用RewriteMap指令做到這一點: http://forums.iis.net/t/1154113.aspx
這在web.config中適用於我:
<system.webServer>
<rewrite>
<rules configSource="web.rules.config" />
</rewrite>
</system.webServer>
一個很酷的事情是,當您編輯規則並將更改寫回外部文件時, IIS配置編輯器會尊重此外部文件。
如果你把:
<system.webServer>
<rewrite configSource="web.rules.config" />
</system.webServer>
它不起作用,你得到HTTP錯誤500.19內部服務器錯誤:
Error Code: 0x8007000d
Config Error: Unrecognized attribute 'configSource'
任何人都可以指向rewrite
元素和configSource
屬性的configSource
MSDN幫助頁面? 關於system.webServer的MSDN文章沒有提到重寫元素,我無法通過谷歌找到MSDN頁面。
我找到了配置文檔,但它似乎沒有涵蓋configSource屬性的使用。
我的猜測是<rules />
元素是作為具有configSource屬性的SectionInformation實現的,而<rewrite />
元素是沒有的ConfigurationSection 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.