IIS not serving website pages on remote client - c#

I am new to IIS and asp and i am having a problem. I am creating a asp.net website in physical folder wwwroot\SharePage and virtual directory SharePage When i visit the site on local host or using my ip address or through dyndns proxy on my own computer , the page is served fine, But when any one else from any other computer access my website it takes a long time in loading and finally his browser throws an error (may be page not found error,not sure, see for yourself). I have even changed Authentication mode to none and tried with firewalls closed , still page is not served.
You can have a look here
http://thesharepage.dyndns.org/SharePage
(hosted on my home computer so can be unavailable at times when i have switched off my computer)
or try with my ip address
updated
http://117.205.103.192/SharePage/
(can change ,i have a dynamic ip address)
Info:
IIS version 7.5
OS : Windows 7
.Net 4 (even in IIS)
please help quick, have to launch it on New Year

Port 80 isn't open to the outside world (I can't telnet to it). Sounds like IIS is working but your router needs some configuring to forward that port to the server.

I don't think so it is an IIS issue, possible related to firewall. You may need to enable 80 port in your firewall. You may also need to enable port forwarding in your router, even http://thesharepage.dyndns.org/ is not accessible from here.

It seems you have not allowed outsiders to access your webserver from outside. This is the default setting in the firewall. Change the setting in your firewall and things will be alright.

Related

Why is the uri for a self hosting application set as localhost?

I recently started looking into Asp.net Web Api self hosting. I'm following this article and I have two questions based on that.
Why is the URI for HttpSelfHostConfiguration pointing to localhost?
How would I give a website name like I would in IIS for the windows service? Because if I deploy this to a production server, how would the clients call the localhost?
Q. Why is the URI for HttpSelfHostConfiguration pointing to localhost?
A. localhost simply just means "this computer". It's typical to do it this way to make the intent clear. Nothing stops you from using an ip address.
Q. How would I give a website name like I would in IIS for the windows service? Because if I deploy this to a production server, how would the clients call the localhost?
A. You would change from HttpSelfHostConfiguration("http://localhost:80") to HttpSelfHostConfiguration("http://000.000.000:80") where 000.000.000 is the ip address of the host (the machine you are running the web application on)
Localhost is reserved loopback adres (ea 127.0.0.1) try ping localhost.
The origin is basic networking, it existed before .net
Pinging localhost was quite common to check if your own network card still worked. As it ping 127.0.0.1, is a ping to your own network card. Next step in conectivity issues was pinging your gateway and then some remote IP or so.
A client cannot connect to a remote localhost (it will point its own network card).
in regard to the article, a server listens to its own network card.
unless you have some multiple nic environment with specific routes to follow
but then there is a config file for that.
Localhost is the default allocation of Windows, if you want to change the default name binding,
answer is simple just go to
C:\Windows\System32\drivers\etc\ folder
you can find as hosts file there just open it in notepad, if you want to change the locally hosted name add a new line in that text file like
127.0.0.1 domain name you want to use
for example
127.0.0.1 techdoubts.net
then your localhost will be changed to techdoubts.net
and one more, add that new name in internet information services website binding also.

WCF http services blocked by windows 10 firewall

I have 3 self hosted WCF windows services communicating with each other over http port 80 using basic http binding. On the same machine I have a website (also running on default port 80) hosted in IIS which also manages and communicates with one of those services. Everything works fine within this windows 10 hosting machine i.e. the website can talk to the services and the services can talk to each other.
When I try to access the website from another PC on the network I get a message in the browser saying 'server DNS address could not be found'. I can't even access the WCF service metadata url.
This looks like a firewall issue on the host machine so I added inbound and outbound rules for TCP port 80 and made sure the rules 'World Wide Web Services (HTTP Traffic-In)' and 'World Wide Web Services (HTTPS Traffic-In)' are enabled. None of these changes worked so I removed the TCP rules I added.
Finally I disabled the firewall completely and I was able to access the website from another PC. However, when I re-enabled the firewall, the website continued to work and all of a sudden my WCF metadata is also accessible!
I don't understand why this is happening. I have successfully recreated the problem several times.
Can anyone offer an explanation or suggest any other firewall rules to try?
My end goal is to package up the services and website into an installer so I don't want my end users to have to mess around with the firewall. They may not even be able to turn it off and on again.
Many Thanks
How about outbound rules on port 80 for http?
Finally figured it out. The url I was using to access the hosting machine used the machines name. In order for the machine to respond to a name lookup was to enable the firewall rule called 'Network Discovery (NB-Name-In)' for the public profile. This rule allows traffic on UDP port 137. Once the name lookup has been cached the url will be properly routed. This explains why it worked after I disabled then enabled the firewall again.

server not receving request by Ip

I've got an issue where my IIS 7 C# server is configured but only reciving requests only when i use http://localhost:6547/ and not when i change the localhost to my own ip.
My question is : how do i make the server actually 'listen' to my port and recevie and return requests.
facts that might help:
im using Windows 7
i gave iUsr and IIS_USER permissions to server's directory
added listening to 6547 port, in both TCP and UDP
tried disabling the firewall totally, still haven't worked this way.
when i try using requests, im using the Advanced Rest Client of chrome, either when i try with my ip or with localhost as mentioned before.
I think its something else related to premissions of remote access. my IIS 7 doesnt have permission manager for some reason even though i really added all the IIS related features available in the windows control panel.
If any data is missing i would gladly provide it.
You need to confirm that your IIS is bound to all ip's (the * in picture below).
Open IIS Adminstration->click on iis->click on bindings and update appropriately:
Other leads: https://serverfault.com/questions/148439/how-can-i-control-which-ip-address-iis7-uses

The server at www.localhost.com is taking too long to respond. asp.net

I am trying to run my website in visual studio 2008. It shows error message like:
The server at www.localhost.com is taking too long to respond.
The site could be temporarily unavailable or too busy. Try again in a few moments.
If you are unable to load any pages, check your computer's network connection.
If your computer or network is protected by a firewall or proxy, make sure that Firefox is permitted to access the Web.
I also run new project Print Label "helloworld" still throws same error
Change the url from your browser from www.localhost.com to localhost only. Usually, after 'localhost' is the name of your application. Sometimes, the browsers are trying to connect you to another domain if they detect that you might misspelled the url address. Might be the case.
Check if any blocking from your firewall settings, in my local when I turn off the firewall, it works. So if need add your port in firewall rules or simply turn off the firewall to test the site.
Same like the answers above, it should be only localhost. It's only itself a hostname to access your own computer's network services. If changing to localhost in your browser url doesn't work, try this one:
1) Go to Control Panel>Administrative Tools>Services
2) Start or Restart ASP .NET State Service
You need to make sure you have an entry in your hosts file for the "local" IP.
i.e. It needs to be your internal Lan IP. such as 192.168.1.XXX or what ever schema you use.....
The path for your hosts file should be something like this on your server
C:\Windows\System32\drivers\etc\hosts
The hosts file does not have an extension.... such as .txt or anything.
Sometimes, if you have a server on your local network, and you need to use it on a particular machine, you may need to include the IP or DNS Name in your hosts file, such as:
MyServerName MyWebSiteName
FredServer1 FredWorld.com

connect localhost from another machine

Is there anyway i can navigate to a website i develop on my computer from a smartphone connected to the same network?
the site is running on localhost, can I make a bridge or something like that?
thanks.
I think you can if you use you're IP directly as the website's name.For example in TOMCAT all the sites are localhost:port/Project_name/filename.html
So if you would use "http://your_ip:port/Project_name/filename.html", it should work.
As a note, the firewall may stop this from working.
As long as your site is available to the network, just use the name of your PC.
So if you were developing on http://localhost:12345 connect using http://muzE-PC:12345 (assuming muzE-PC was the name of your computer)
instead of localhost use, ip address.
Make sure that website is not blocked by windows firewall.
ipconfig can be used to determine ip address.
On remote system, localhost will refer to that remote system (not the system on which web site is running).

Categories

Resources