Consultor Eletrônico



Kbase P37500: Host header requirement causing errors when opening a file in remote development
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   01/06/2005
Status: Verified

FACT(s) (Environment):

WebSpeed 3.1x

SYMPTOM(s):

Getting: An error occurred while reading the WebSpeed directory and will be displayed in your Web browser, while attempting to gain remote access

Error occurs when trying to open a file through the 'File Open' window in AppBuilder

Error does not occur when using file open function from workshop, directly from browser

Using AppBuilder in 'Remote Development' mode

After click 'Ok', get a directory listing of the remote broker's working directory displayed in the browser instead of in the 'File Open' window.

Check the temporary file, pXXXXXws.tmp (where XXXXX is a random number), that is generated with the output received from the Webserver. The temp file pXXXXXws.tmp lists:

<html><head><title>Error</title></head><body>The system cannot find the file specified. </body></html>

or

<html><head><title>Site Not Found</title></head><body>No web site is configured at this address.</body></html>

NameServer & Broker on another server

Pings works fine from AppBuilder's Preferences

Can access Workshop

CAUSE:

The Web Server is configured to request host header information and it denies the request because the OCX the AppBuilder uses is not sending the host information.
Typically, when a client sends a request on the Internet through the browser, the Webserver stops the client to ask for HOST information from the client. When a WebSpeed URL is entered on a browser, there is no problem, since the browser is able to handle the Webserver's request and pass the correct HOST information.

However, when information is sent through the AppBuilder, the OCX it uses (CIHTTP from Crescent) does not send the HOST information. When the request reaches the Webserver, the Webserver asks for the HOST info but the client can not provide the information, thus causing the Webserver to revoke the request.

FIX:

Remove the Host Header requirement:

IIS Instructions:

1. Open Internet Information Services Manager.
2. Right click on the Web Site in question and select 'Properties'.
3. On the tab 'Web Site', select the 'Advanced' button next to the IP Address. This will open a screen where you can select the identities for that Web Site.
4. Click on the identity, and then the Edit button. Here you should see that the 'Host Header Name' is set. If it will not affect any other applications, remove the 'Host Header Name'.

Apache Instructions:

Remove 'Host Header Name' property in the web site configuration.

By removing this property, the Webserver will not ask for HOST information and the client will be able to complete the request without having to deal with the Webserver's request.