Versions:
- Windows Server 2008 R2 SP1
- TeamCity 7.0.2
- Tomcat 7.0.27
- IIS 7.5
- ARR 2.5
- URL ReWrite 7.2.2
TeamCity is installed into a pre-existing TomCat installation as a JavaEE WAR.
IIS has been successfully setup to reverse proxy calls for TeamCity. My rewrite rule is below:
<rule name="TeamCity Redirect" stopProcessing="true">
<match url="^(TeamCity.*)" />
<action type="Rewrite" url="http://localhost:8080/{R:1}" logRewrittenUrl="true" />
</rule>
I have no problem logging into TeamCity from a remote host and using/administering it.
However, when I enable the built-in NuGet server, I encounter a frustrating issue.
Trying to access the nuget feed from any remote host proxying through IIS gives me an HTTP 404 error. The 404 error comes from IIS. When I remove the final path part from the url, the 404 error comes from Tomcat.
Example:
- http://proteus.pointloma.edu/TeamCity/guestAuth/app/nuget/v1/FeedService.svc from any host gives an provided IIS 404 error.
- http://proteus.pointloma.edu/TeamCity/guestAuth/app/nuget/v1/ from any host gives a TomCat 404 Error.
- http://localhost:8080/TeamCity/httpAuth/app/nuget/v1/FeedService.svc from the server where TeamCity is installed provides the feed correctly.
So, somewhere I am having issues with IIS respecting a redirect with *.svc files, but for the life of me, I cannot figure out why, or where this is set.
Any help is greatly appreciated.
Best Answer
Ah, the power of posting. After asking the question, I decided to take a look at the rules I had setup one more time.
The rules were setup on the site level. I moved them to the server level, and everything works like a charm.