Solved

IIS7 Website not working for external users

Posted on 2013-05-20
9
1,137 Views
Last Modified: 2013-07-06
Hi All,

We are having issues accessing a website from an external address even though I have modified the Firewall settings & port forwarded the required port to this server.

We have a working site on http://server:801/address...
when we try to access via http://publicaddress.com:801/address... we receive an error in the application page
again if we try to access via the following:
when we try to access via http://192.168.1.1:801/address... we receive an error in the application page (This is the local address of the server).

I suspect we need to add the bindings to the site to make this available on either the local IP address or the external website address? I have right clicked the site then added these bindings without luck. Is there somewhere else I need to add these?

Just to run through

Server is running 2008r2
Local fqdn & port site working OK
Local IP & port not working
External FQDN & port not working.

The External Address has its A records etc pointing to our servers public IP address & I can confirm the the port through the firewall is working correctly.

Any Ideas?

Thanks
0
Comment
Question by:jasonuocs
  • 4
  • 3
  • 2
9 Comments
 
LVL 4

Expert Comment

by:mouseware
ID: 39182795
are you hosting multiple sites? if not remove the bindings and make sure the webservice is listening on all interfaces, then regardless it should answer requests by name or ip...
0
 
LVL 16

Expert Comment

by:choward16980
ID: 39182797
That should be correct.  Can you issue a get command via port 801 remotely and see if it responds?  

Your A record should be:
www.google.com -> public IP of server

Your Binding should be:
www.google.com  |   Port 801   |  *

Your firewall should be doing passthrough NAT from external request Port 801 -> web server Port 801

You should be entering this into your external browser:
http://www.google.com:801
0
 
LVL 4

Expert Comment

by:mouseware
ID: 39182807
http://technet.microsoft.com/en-us/library/cc753195(v=ws.10).aspx

basically if you are sharing one ip address with multiple sites, you need the host headers to contain the site name so IIS knows which site to serve. if you access by IP there are no host headers specified so iis doesn't know which site to go to, so you usually get the default website, or none if you remove the default bindings...
0
NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

 
LVL 2

Author Comment

by:jasonuocs
ID: 39182810
Hi Mouseware,

I have disabled the other sites. Do I actually need to remove the bindings?

Stopping the other sites still gives me the same errors
0
 
LVL 2

Author Comment

by:jasonuocs
ID: 39182830
ok...

Within the site bindings I have
Type - Host Name -               Port - IP Address - Binding Info
http -  server          -               801  - *                 - BLANK
http -  192.168.1.1 -               801 -  *                  - BLANK
http -  publicaddress.com -  801 -  *                  - BLANK

PUBLICADDRESS.COM (A & MX records pointing to Public IP address of the Network/Router)
NAT port redirection of Port 801 to 192.168.1.1

Although the end goal is to access the site via http://publicaddress.com:801/ I am not able to view the site & receive the same error if I try to access via http://192.168.1.1:801/ this removes the publicdomain.com & firewall at present I believe. I feel once I know how to get the http://192.168.1.1:801/ working I should be able to replicate this to get the ext address working.

Thank you for your help.
0
 
LVL 4

Expert Comment

by:mouseware
ID: 39182832
yeah, but for your testing, you just need to use the correct bindings, and on the "test" machine edit the hosts file to resolve the internal IP... example:

IIS listening on 192.168.1.1, bindings for "My Site Website":

www.mysite.com => http 801
mysite.com => http 801

on your client when going to http://192.168.1.1:801, you are not sending http host header names, so IIS doesn't know what to do with it. so to fix that edit your hosts file on that workstation (c:\windows\system32\drivers\etc\hosts) and do:

192.168.1.1 mysite.com
192.168.1.1 www.mysite.com

then try to access the site again by name. and it should work. External sounds like maybe a www vs non www mix up?
0
 
LVL 2

Author Comment

by:jasonuocs
ID: 39182848
OK still no luck sorry.

I have edited the hosts file on a workstation within the same lan as above.
I have confirmed when I ping mysite.com & www.mysite.com it replies with 192.168.1.1
I then goto http://mysite.com:801/ or http://www.mysite.com:801/ I still get the same error:

Invalid URI: The URI is empty.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.UriFormatException: Invalid URI: The URI is empty.

If I goto http://server:801/ site comes up correctly
0
 
LVL 16

Accepted Solution

by:
choward16980 earned 500 total points
ID: 39188010
http://forums.asp.net/t/1378409.aspx/1

That error sounds like a programming issue.
0
 
LVL 2

Author Closing Comment

by:jasonuocs
ID: 39303643
Spoke with the software vendors & choward16980 was right they had not updated their program to point to the right place. Thanks to everyone else that tried to help.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

We are happy to announce a brand new addition to our line of acclaimed email signature management products – CodeTwo Email Signatures for Office 365.
This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
In this Micro Video tutorial you will learn the basics about Database Availability Groups and How to configure one using a live Exchange Server Environment. The video tutorial explains the basics of the Exchange server Database Availability grou…
To add imagery to an HTML email signature, you have two options available to you. You can either add a logo/image by embedding it directly into the signature or hosting it externally and linking to it. The vast majority of email clients display l…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question