Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to configure WordPress to work with Cherokee Web Server. The multi-site set up in WordPress is and uses 'sub-domains'. Thus, I have sites like, - they all work fine so far.

However, I have another completely different domain: Within WordPress, the sub-domain set up is When a public user accesses, it cannot properly be redirected to the WordPress sub-domain

How do I set up Cherokee to properly redirect virtual domains to WordPress? That means, the domain facing public would be but WordPress would want to see to properly return the correct content for the specific site.

(I tried and it always get redirected to something like this: "")

share|improve this question
up vote 0 down vote accepted

First, set up your DNS to point both the sub-domain and mapped domain properly.

Then, in Cherokee...

Create a Source (under Sources)
 Type: Remote Host
 Nickname: Cherokee
 Connection: [the ip and port which can reach Cherokee Web Server]

In WordPress.. (you need to enable multisite first).

Create the WordPress Site
My Sites -> Sites -> (Add New)
add the site...

Then, go to -> My Sites -> Network Admin -> Sites -> (select site)
in Settings, change only these 2 fields:
 Fileupload Url:

Then, back in Cherokee...

Create a new Virtual Server and assign it to your sub-domain, eg. ""
This is a PHP Virtual Server, so follow the instructions from Cherokee Help Manual,
and test it to make you can get WordPress running. 

Now, you can go back to WordPress...

Go to site... configure, etc.
(set permalinks properly, etc.)

Finally, back in Cherokee...

Create yet another another Virtual Server - this time a HTTP Reverse Proxy server for your mapped domain name
 Document Root: path to WordPress directory

... in Basics
 Directory Indexes - empty

... in Rule Management
 remove all except Default
 change Handler to HTTP Reverse Proxy, 
  Request -> URL Rewriting
   Add RegEx: ^/(.*)$
   ... click Add
 Back-end Servers 
  Balancer -> Round Robin
 Assign Information Sources
  Application Server -> "Cherokee" (as an Information Sources)

Lastly, restart Cherokee! That's it!

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.