Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
HTTP.sys Does not work from the global network
#11
When trying to Add Default Binding=false, the system requires filling in the VirtualHostNames field.

I specify:
VirtualHostNames = region-tail.ru
URLBase = /MyBase1/

procedure TIWServerController.IWServerControllerBaseBind(const aHttpBindings,
aHttpsBindings: TStrings);
begin
aHttpBindings.Add('http://+:80/MyBase1/');
end;

In the local network, it works (http://localhost/MyBase1/)
From the external network not available (http://region-tail.ru/MyBase1/)
Reply
#12
It doesn't work HTTP.sys from an external network. Please tell me how to configure it ?

From the external network not available (http://region-tail.ru/MyBase1/)
Reply
#13
From your description I don't know what is wrong with your application.

Http.sys is used by several IW customers and none had such issues.

Can you try to create a simple stand alone application without URL base and try to run it on that same server?

Can you see if there is any error message when registering the URL address?

Also, run the IWCertificateManager on that server (IWCertManager can be found in Tools subfolder of your installation directory). See what you get in SSL Bindings (just to make sure the address is not already registered for other application).

More info about IWCertManager here:

https://www.atozed.com/intraweb/certmanager/
Reply
#14
There is no SSL certificate installed on my server. Is it possible that the problem is because of this?
Reply
#15
If you are not using HTTPS, no.

IWCertificateManager can do much more than simply generating certificates. I can inspect the registration of URL in your machine and tell you exactly what is registered and what's not
Reply
#16
I used a demo example. Now I have restored the exact demo version on my computer (so that there are no my fixes in it) and compiled it.

Next, I check its performance on the local network.

http://127.0.0.1:8888/HSysApp1/ - Success
http://localhost:8888/HSysApp1/ - Success
http://127.0.0.1:8888/ - not available

Everything works correctly

Now I need this demo example to be accessible from an external network. I will make only those changes in the program code that you say. I am waiting for your instructions.
Reply
#17
1) Are you registering it as http://127.0.0.1:8888 or http://127.0.0.1:8888/

IIRC it has to be the second one.

2) 8888 is a commonly used port. Have you used netstat or telnet to see if its already in use?
Reply
#18
http://127.0.0.1:8888/ this is the same local address. And everything works for me on the local network. There is no access from the external network. 8888 is the port of the demo example.
I tried to install other ports, for example 21401. The picture is the same in the local network, there is no access from the global network.

At the moment, I haven't changed ANYTHING in the demo example published on GITHUB. Write what you need to change in the demo example so that it works from an external network.

http://192.168.0.103:21401/MyBase/ - it also works .

Maybe there is a problem in configuring the router?

On the router settings:
external port: 21401
Internal IP : 192.168.0.103
Internal port: 21401
Protokol : TCP
Reply
#19
when testing telnet, if the IW application is not loaded, then

telnet localhost 21401
Connecting to localhost...Could not open a connection to this node, on port 21401: Connection failed

If the IW application is loaded, then :

Black screen. When you press Esc, the message :

HTTP/1.1 400 Bad Request
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Date: Thu, 02 Sep 2021 06:27:31 GMT
Connection: close
Content-Length: 326

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Invalid Verb</h2>
<hr><p>HTTP Error 400. The request verb is invalid.</p>
</BODY></HTML>

From this I conclude that the port is used only by my IW application.
Reply
#20
This may not be the same issue but just in case - I had to add an inbound rule in Windows Firewall for httpsys to work like so:

[Image: clip0064.png]

[Image: clip0065.png]

[Image: clip0066.png]
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)