Would it not be great if at least one person out there would be saved from experiencing the frustrations I just went through for the last 2 hours. My fingernails are gone now - one of my bad habits when under stress, stress caused by not being able to do what I have done 100 times before.
My goal was to setup a new Web Server, allowing me to publish existing and new Web sites and applications. Windows Server 2012 R2 was up and running in no time, thanks to the generous virtualized environment I am allowed to use.
After joining the domain and the mandatory restart that comes free of charge with that (takes about 10 seconds), I carefully began to add roles and services. As this will be a production server, I tried to limit them to the absolute minimum (another habit of mine).
Thanks to my terrible memory and my habit of never writing anything down, I went through the list of roles and features, trying to remember which ones to install, and which ones to leave away. And if in doubt, leave it away and add it later if needed.
Bad idea, very bad idea.
So, I ended up having IIS 8 up and running, went back to add the ASP.Net 3.0 and 4.5 features (which I conveniently had left away in the 1 step).
When checking again in IIS Manager I found them and was so happy, that I fell for the friendly invite by IIS Manager: I installed Web Platform Installer 4.6!
At that point it would not have been too late (yet). But I continued and installed Web Deploy 3.5.
Big, big mistake!
I went ahead and wanted to configure the users who are allowed to publish stuff. But I couldn't find the "IIS Manager Permissions", leave alone the whole "Management" section in my first web.
So, what little was left of my memory kicked in. I remembered, I needed to install the Windows Management feature. It was installed in no time, and the section appeared in IIS Manager, and I could allow users. I was smiling: "Look at me, I'm the greatest!"
My frustration was bigger than my smile after I tried to just quickly publish that web site.
Error ERROR_DESTINATION_NOT_REACHABLE: Web deployment task failed. (Could not connect to the remote computer ("top-secret-hostname").
That message was thrown into my face for the next hour or so. Following a list of things I tried and the number of times I tried it (order might not be accurate):
- Check Firewall (3x)
- Check DNS (3x)
- Check if Web Management Service is running (7x)
- Check if Web Deployment Service is running (6x)
- Check if need another service, install it, try, remove it (4x)
- Check level of my coffee cup, get refill (3x)
- Check if the error message was still the same (5x)
Then I gave up. I fired up bing.com and Ctrl+C/Ctrl+V went the error message from above.
The first result I opened made me sweat blood and swear at the same time: http://forums.iis.net/p/1200087/2053474.aspx?Web+Deploy+Produces+an+Error
My feelings towards the person who had marked the green as answered were not positive ones. I quickly dismissed the post, looked at two more and decided it was time to do some more thinking of my own.
That was when I saw the light at the end of the tunnel, and I remembered that I had been fighting with the exact same thing before. I will write it down here, for myself to remember and for everybody else too.
DO NOT INSTALL "Web Deploy 3.5" BEFORE INSTALLING THE IIS MANAGEMENT SERVICE!
It will not give you any warning or error message. Everything will look okay, but it isn't.
The solution is really simple. Uninstall "Web Deploy 3.5" via Control Panel, reinstall "Web Deploy 3.5" via Web Platform Installer.
I wasn't even excited when everything worked on the first attempt afterwards, just annoyed with myself. That was when I decided to take the time needed to immediately write this down. Before I would forget it again.
Thanks for reading :)