Quercus: Wordpress Mu

From Resin 3.0

Revision as of 15:51, 8 July 2008 by Emil (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Running Wordpress Mu 1.5.1 on Resin 3.2.0

WordPress Mu is a multi-user version of WordPress that allows for several different blogs to be maintained side-by-side in a single deployment. It also offers management capabilities for handling the different blogs. Blogs can appear as different virtual hosts or in sub-paths. This page shows how to install WordPress Mu using virtual hosts.


  1. MySQL server
  2. Java 1.5 or higher
  3. Access to your DNS server

Full installation

  1. Add a wildcard entry to your DNS record (usually of the form *.example.com, details here)
  2. Download WordPress Mu 1.5.1 from http://mu.wordpress.org/download/
  3. Download Resin Pro 3.2.0 from http://www.caucho.com/download

Do the following steps as root, either logging in as root or using sudo.

  1. Unzip Resin Pro 3.2.0 in /usr/local/share
  2. Add the user "resin":
    useradd resin
  3. Change the ownership of the Resin Pro directory to "resin":
    chown -R resin:resin /usr/local/share/resin-pro-3.2.0
  4. Create the directory /var/www/hosts
  5. Change the ownership of the directory to "resin":
    chown resin:resin /var/www/hosts
  6. Copy /usr/local/share/resin-3.2.0/conf/resin.xml to /etc/resin/resin.xml
  7. Change the ownership of /etc/resin/resin.xml to "resin":
    chown resin:resin /etc/resin/resin.xml

Do the following as user "resin", unless otherwise specified

  1. Run the following within /usr/local/share/resin-pro-3.2.0:
    ./configure; make; make install
  2. Place your Resin license in /usr/local/share/resin-pro-3.2.0/licenses
  3. Edit /etc/resin/resin.xml:
    1. Change the line
      <http address="*" port="8080"/>
      <http address="*" port="80"/>
    2. Allow for wildcard virtual hosts by changing the default <host> tag to:
      <host host-name="example.com">
      <web-app id="/" root-directory="/var/www/hosts/default/webapps/ROOT"/>
      <web-app id="/resin-admin" root-directory="${resin.home}/php/admin">
      - Administration application /resin-admin
      <resin:set var="resin_admin_external" value="false"/>
      <resin:set var="resin_admin_insecure" value="true"/>
    3. Make Resin run as user "resin" by uncommenting the following lines:
    4. Remove the following lines from <host-default>
      <!-- creates the webapps directory for .war expansion -->
      <web-app-deploy path="webapps"/>
  4. Create a virtual host directory for your domain:
  5. Unzip WordPress Mu and copy all files and directories to /var/www/hosts/default/webapps/ROOT
  6. Create the WordPress database:
    mysql -u root
    mysql> CREATE DATABASE wordpress;
  7. Create the directory /var/www/hosts/default/webapps/ROOT/WEB-INF/lib
  8. Download MySQL Connector/J 5.1.6 (http://dev.mysql.com/downloads/connector/j/5.1.html)
  9. Unzip MySQL Connector/J and place the mysql-connector-java-5.1.6-bin.jar in /var/www/hosts/blog.example.com/webapps/ROOT/WEB-INF/lib
  10. Create the file /var/www/hosts/default/webapps/ROOT/WEB-INF/resin-web.xml:
    <?xml version="1.0"?>
    <web-app xmlns="http://caucho.com/ns/resin">
    <servlet-mapping url-pattern="*.php"
    <!-- rewrite-dispatch replaces the mod_rewrite rules included with WordPress Mu -->
    <!-- uploaded files -->
    <forward full-url-regexp="^(.*/)?files/$"
    <forward full-url-regexp="^(.*/)?files/(.*)"
    <!-- pass through requests that go to real files -->
    <when exists="$0"/>
    <forward full-url-regexp="^([_0-9a-zA-Z-]+/)?(wp-.*)" target="$2"/>
    <forward full-url-regexp="^([_0-9a-zA-Z-]+/)?(.*\.php)$" target="$2"/>
    <!-- send all other requests to index.php -->
    <forward target="/index.php"/>
  11. As root, run
    java -jar /usr/local/share/resin-3.2.0/lib/resin.jar -conf /etc/resin/resin.xml start
  12. Browse to your host and set up WordPress Mu according to the online directions
Personal tools