Hey Perryg, thanks for your comment. That's exactly what it was, having said that, it took a while longer to figure it out.
I read a TON of posts regarding how to do this and basically, I was looking at all of the wrong places. You are right, my setup was mostly correct, but I overcomplicated a LOT of things that were unnecessary, so I decided to write a bit about it.
When it came to setting up the application. I was one of the many people that were screaming "You can only use localhost as your server". From there, all hell broken loose. Since I'm a complete noob (or was, I learned a lot these past few days) I kept thinking that the issue was with my host-guest setup, etc....
So, I removed all of my network drives, reset all of my information and started from scratch. I had the best results with bridged-connection since I received a 192.168.1.102 IP address (meaning that I had an assigned, local network, IP address) and debugged a connection to it.
Host machine IP: 192.168.1.118
Guest machine's IP: 192.168.1.102
Debugging #1 - Get a packet sniffer
I picked up a TCP packet sniffer (Wireshark) so I could verify that I was getting connections between my host and the guest.
I run Wireshark on my guest setup and from my host, I ping my guest's ip address
Great, that's the right setup and my host is communicating with guest!
I then start by setting up my Visual Studio project.
1. Open project in Visual Studio
2. Enable IIS Express (after installing it) in the Project View by selecting my project solution on the right, right clicking it, then clicking "Enable IIS Express".
3. Select the project in the Project Viewer, right click and select properties.
- I make sure that my start actions are pointing to the "Current Page".
- I make sure that I have "Use Local Web Server" instead of "Visual Studio Development Server"
- I enable IIS Express and tell the project url to be:
http://localhost:8080/
- I do NOT override the application root URL
I save the project and close it.
I open up the applicationHosting.config file located in my computer's user folder. In my case, my PC is called Na-PC so I navigate to the User/Documents/IISExpress/config/applicationhost.config and go to the bindings section
I then remove the localhost from "*:8080:localhost" and leave it as follows:
<bindings>
<binding protocol="http" bindingInformation="*:8080:" />
</bindings>
One step that I added, is that I had a lot of problems keeping visual studio running with the right folder, so I opened up my .csproj and made sure that the IIS information and port was correct:
Do a search for <ProjectExtensions> and I make sure that:
<DevelopmentServerPort>8080</DevelopmentserverPort>
<IISUrl>
http://localhost:8080/</IISUrl>
I can then run my application and the server comes up fine. At this point, I still can't connect to my server other than through localhost.
I then go to Windows Firewall and create a custom port setting target port 8080 and I make sure that it's set for all network setups (domain, private and public). I also go to my router's page and make sure that port forwarding for port 8080 is pointing to my GUEST's IP address (192.168.1.102).
At this point, I can go to my HOST machine and connect to my GUEST by typing the following on a browser:
http: //192.168.1.102:8080/
Or I can connect to the guest remotely (because I forwarded the port 8080 in my router to 192.168.1.102) by connecting to my real IP address. http: //174.7.XXX.YYY:8080/
Thanks a lot for the help guys. I chased a TON of different resources and it ended up being a LOT simpler than what many people have recommended. Having said that, I feel a lot more confident in my networking skills... 3 days later...
Cheers VirtualBox forums!