Hello. Two days ago, I downloaded the stand-alone confluence application and immediately fell in love with it.
I sell my team on it and start making preparations to install it on our company web server... and that's when things fall apart.
The problem is that we are a windows shop and our server runs IIS. There doesn't seem to be an easy way to install confluence on our server, assign a host name to it, and run it.
I was sorely disappointed and then I figured I could at least ask here on the forums and see if maybe I'm just missing something.
Anyone able to help with this?
Wow... so many responses so fast. That's really cool.Let me please clarify what I'm trying to acheive. First... I don't care about IIS at all. It doesn't matter to me if IIS is not in the picture.However, what I do care about is assigning a host name to the "site". By this I mean that,
There is some documentation on Atlassian's site about it, though I can't comment if it works :)
Hopefully you have found out that the installation of the Standalone instance is just fine on Windows, the main issue would be proxying the Confluence Tomcat server via your IIS server
Confluence is written in Java to run under the Java Servlet API - it can run in any web server that provides a servlet container to its hosted applications. Unfortunately, IIS is not one of these.
Lots of Java-based web servers will run fine on Windows. A version of Apache Tomcat is bundled within the Confluence-standalone download and is pretty easy to get up and running with, as long as you can get a Java JDK installed on your server.
We have some pretty comprehensive installation instructions, and you can always ask specific questions about them if you get stuck: http://confluence.atlassian.com/display/DOC/Installing+Confluence+Standalone+on+Windows+from+Zip+File
As Colin mentioned, it is possible to setup Confluence so that IIS is logically "in front" of Confluence's web server, so that to the end user it appears as if the content is coming from IIS. This can be done using the Apache foundation's AJP connector for IIS: http://tomcat.apache.org/connectors-doc/reference/iis.html However, unless you really have specific need to have IIS as a proxy for Confluence, it's really more trouble than it's worth.
It sounds like to me then the best solution is to disable IIS on the machine hosting Confuence. Or at least switch it off port 80,
1. Use tomcat directly
(using named based virtual hosting - http://confluence.atlassian.com/display/DOC/Guide+to+using+Apache+Tomcat's+Virtual+Hosts) or
2. Put an Apache webserver in front of Confluence and use a named based virtual host that points to Confluence's Apache Tomcat
Although the 2nd point sounds redundant, you'll find most people to it that way as it can be better performing due to Apache webserver proxying and also for future if you expand to other Atlassian apps.
As Colin and Joseph have already mentioned Confluence comes with its own web server called Apache Tomcat. If you don't have apecific requirements for using IIS (e.g. high scalability) there is no point in using it for Confluence although Confluence's Tomcat server can indeed be configured to run behind IIS.
To assign domain to your Confluence instance I believe you should do the following:
1. Register a domain (e.g. via Godaddy) and set its NS records to point to your machine running Confluence.
2. In your C:\WINDOWS\system32\drivers\etc\hosts file map your newly created domain to your IP address.
3. Go to confluence's conf directory and edit its server.xml file replacing port="8080" with port="80" in the <Connector> element to run on the default web server port, also change defaultHost attribute value in <Engine> element and name attribute value in <Host> element to your new domain.
4. Restart Confluence.
I believe that is pretty much what you need to do although I am not really that good in system administration and never did it myself so take what I say here with a grain of salt.
Hi Terrence, you should shut down IIS which apparently occupies default HTTP port 80.
Instructions by the link you mentioned are for configuring Confluence behind Apache web server. I believe that should work the same with IIS on Confluence's side but in order for this to work you should also configure IIS to forward requests from port 80 to Confluence's port 8080.
Wow... so many responses so fast. That's really cool.
Let me please clarify what I'm trying to acheive. First... I don't care about IIS at all. It doesn't matter to me if IIS is not in the picture.However, what I do care about is assigning a host name to the "site". By this I mean that,
The only reason I mentioned IIS, is because it's extremely easy to assign a host name to a site and I didn't see any way of doing this in the confluence admin (which is where I assumed the setting would be).I hope this better clarifies what I'm after.And thanks so much for the very detailed responses thus far.
It's definitely a breeze to do in IIS, with you on that one!
Because Confluence is designed to be run in various different web servers and the configuration for this kind of thing is done at the web server level, Confluence itself doesn't provide any way to make this kind of configuration within the Web UI.
Generally speaking, you'll need to edit a configuration file on disk to change the host name for Confluence. I'll post instructions for Tomcat as a separate answer.
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG