如何配置IIS以将ISAPI DLL映射到域根之外 [英] How to configure IIS to map an ISAPI DLL off of a domain root
问题描述
我在类似以下的目录下安装了一个ISAPI DLL:
<代码> c:\ inetpub \ wwwroot \ emsserver \ emsserver.dll
这是一个Delphi RAD Server应用程序.
在IIS管理器(Windows 10)中,在根"(计算机名)下->网站->默认网站->Emsserver,我设置了一个处理程序来处理"* .dll"该DLL的请求.最终结果是我可以像这样访问该应用程序:
<代码> http://localhost/emsserver/emsserver.dll/some-action
那很好.那里一切都很好,产量符合预期.但是该URL对最终用户不是很友好.
问题:
在Windows 10上使用IIS管理器,如何配置它,以便可以在没有URL的DLL部分的情况下访问应用程序?因此,就像" http://localhost/some-action
"?
似乎应该做的很简单,但是我不知道如何做.我尝试在IIS管理器的根服务器条目以及默认网站"中都设置一个处理程序,但是技巧都没有.我20年来一直没有使用IIS(几乎完全是Linux和Apache),所以我有点不习惯了.
您可以使用url重写来实现此目的.从
这是规则的结果.
I have an ISAPI DLL installed under a directory like:
c:\inetpub\wwwroot\emsserver\emsserver.dll
This is a Delphi RAD Server app.
In IIS Manager (Windows 10), under Root (computer name) -> Sites -> Default Web Site -> Emsserver, I have a handler set up to handle "*.dll" requests with that DLL. The end result is I can access the app like:
http://localhost/emsserver/emsserver.dll/some-action
That works fine. All good there, output as expected. But the URL isn't very end user friendly.
Question:
Using IIS Manager on Windows 10, how can I configure it so that I can access the application without the DLL portions of the URL? So, like "http://localhost/some-action
"?
Seems like it should be a simple enough thing to do, but I'm not seeing how. I tried setting up a handler both in the root server entry in IIS manager, as well as for the 'Default web site', but neither did the trick. I haven't used IIS in 20 years (been almost exclusively Linux & Apache), so I'm a bit out of my usual neighborhood.
You can use url rewrite to achieve this. Download the module from here.
Here is the result of the rule.
这篇关于如何配置IIS以将ISAPI DLL映射到域根之外的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!