2

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.

GrandmasterB
  • 3,396
  • 1
  • 23
  • 22

1 Answers1

2

You can use url rewrite to achieve this. Download the module from here.

enter image description here

Here is the result of the rule. enter image description here

Bruce Zhang
  • 2,880
  • 1
  • 5
  • 11
  • This does the trick. For regex I used (.*), and a rewrite of /emsserver/emsserver.dll/{R:1}. This sends all requests to the DLL. So /some-action ends up as /emsserver/emsserver.dll/some-action, which is what I needed. – GrandmasterB Oct 13 '20 at 18:30
  • Yes, you can modify this way, what I have shown is based on the URL you cited as an example.Using regular judgment is the most accurate method. – Bruce Zhang Oct 14 '20 at 08:28