问题描述
导入IIS中的.htaccess规则。
是否可以使用命令行(不使用GUI,如此处所述)将
mod_rewrite
.htaccess文件导入/转换为web.config
?
如果不能直接解决,是否有任何解决方法?
解决方法
无法从命令行执行此操作。导入程序代码是UrlRewrite扩展代码的一部分,并且仅通过IIS管理器UI显示。
就是说,如果您有.NET Reflector(或类似的工具-ILSpy),则可以检查执行
mod_rewrite
转换的代码。
根据我自己的调查,UrlRewrite扩展存在于以下程序集中:
Microsoft.Web.Management.Rewrite
Microsoft.Web.Management.Rewrite.Client
它们位于GAC中,可以很容易地打开以供.NET Reflector检查。
感兴趣的类和方法是:
Microsoft.Web.Management.Iis.Rewrite.Translation.ImportRulesPage.Translate()
哪个调用:
Microsoft.Web.Management.Iis.Rewrite.Translation.Translator.Translate()
根据这些信息,可以对自己的命令行实现进行反向工程。