Installation Guide

Box Social is supported on both Microsoft .Net Framework under Windows and Mono platforms under Linux.

[toc]

Configure web server

Linux

The following guide uses Ubuntu 12.04. The commands listed may differ for other distributions.

Configure Linux

  1. Install Mono
    Code
    apt-get install mono-complete
  2. Install Mozroots certificates
    Code
    mozroots --import --ask-remove --machine
  3. Install mod_mono
    Code
    apt-get install libapache2-mod-mono mono-apache-server2 mono-apache-server4
    apt-get install mono-devel
    a2enmod rewrite
    a2enmod mod_mono_auto
    apt-get install apache2-mpm-worker
    service apache2 restart

  4. Configure mod_mono.conf for ASP.NET 4.0
    /etc/apache2/mods-enabled/mod_mono.conf
    AddType application/x-asp-net .aspx .ashx .asmx .ascx .asax .config .ascx
    DirectoryIndex index.aspx

    # Include the web application definitions generated by mono-server{2,4}-update.
    #
    # If you want to use ASP.NET 2.0 (via mono-apache-server2), use:
    # Include /etc/mono-server2/mono-server2-hosts.conf
    #
    # If you want to use ASP.NET 4.0 (via mono-apache-server4), use:
    # Include /etc/mono-server4/mono-server4-hosts.conf

    Include /etc/mono-server4/mono-server4-hosts.conf

    Note: See this advice for installing on Ubuntu 14.04
  5. Turn Http KeepAlive to off in Apache
    /etc/apache2/apache2.conf
    Turn KeepAlive Off
  6. Configure sites
    /etc/apache2/sites-enabled/000-default
    <VirtualHost *:80>
            ServerAdmin webmaster@localhost

            DocumentRoot /var/www
            <Directory />
                    Options FollowSymLinks
                    AllowOverride None
            </Directory>
            <Directory /var/www/>
                    Options Indexes FollowSymLinks MultiViews
                    AllowOverride All
                    Order allow,deny
                    allow from all
            </Directory>

            ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
            <Directory "/usr/lib/cgi-bin">
                    AllowOverride None
                    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                    Order allow,deny
                    Allow from all
            </Directory>

            ErrorLog ${APACHE_LOG_DIR}/error.log

            # Possible values include: debug, info, notice, warn, error, crit,
            # alert, emerg.
            LogLevel warn

            CustomLog ${APACHE_LOG_DIR}/access.log combined

        Alias /doc/ "/usr/share/doc/"
        <Directory "/usr/share/doc/">
            Options Indexes MultiViews FollowSymLinks
            AllowOverride None
            Order deny,allow
            Deny from all
            Allow from 127.0.0.0/255.0.0.0 ::1/128
        </Directory>

    </VirtualHost>

  7. Install librsvg
    Code
    apt-get install librsvg2-2 librsvg2-bin
  8. Install imagemagick (recommended)
    Code
    apt-get install imagemagick

Configure Rackspace Opencloud

  1. Install Rackspace cloud SSL certificate
    Code
    certmgr -ssl [url]https://mycloud.rackspace.com[/url]

Configure Solr

  1. Download and install Solr
  2. Configure solr
  3. Add the following configuration keys to the Box Social Web.Config
    Web.Config
        <add key="search-provider" value="solr" />
        <add key="solr-server" value="{SOLR_IP}:{SOLR_PORT}/solr/boxsocial" />

Configure Lucene

If you are only running a small installation you may want to run the bundled Lucene indexer. It is however recommended to use solr.

  1. Create a new directory under the web root called lucene
  2. Adjust the permissions so ASP.Net has write access. On Ubuntu it should look like this.
    Code
    drwxrwxrwx  2 www-data www-data   4096 Jul 19 13:11 lucene
  3. You should configure your web server to deny access to the lucene directory.

Windows

Configure Database

MySQL

MySQL must be configured properly for unicode support. Failure to use the below configuration will result in emoji not working.

  1. Install MySQL normally
    Ubuntu 12.04
    apt-get install mysql-server
  2. Ensure the following configuration options are enabled in my.cnf.
    my.cnf
    [client]
    default-character-set = utf8mb4

    [mysql]
    default-character-set = utf8mb4

    [mysqld]
    character-set-client-handshake = FALSE
    character-set-server = utf8mb4
    collation-server = utf8mb4_unicode_ci

  3. Login to MySQL and create an empty database. It is good practice to also create a user with limited permissions for Box Social to use.
    Ubuntu 12.04
    mysql -u {USERNAME} -p
    CREATE DATABASE boxsocial;
    CREATE USER '{LIMITED_USERNAME}'@'localhost' IDENTIFIED BY '{PASSWORD}';
    GRANT SELECT,INSERT,UPDATE,DELETE ON `boxsocial`.* TO '{LIMITED_USERNAME}'@'localhost';

    Note: You can also use MySQL Administrator

Install Box Social

Box Social includes a command line installer that can be executed on either Windows or Linux.

  1. Extract boxsocial.zip
  2. Download the following third party libraries and put them in the installer directory, take note of the file name case written below.

  3. Execute BoxSocial.Install.exe
    Ubuntu 12.04
    sudo mono BoxSocial.Install.exe
  4. Once installed to not delete the installation directory from the server. Configuration files created to allow Box Social to be easily updated.

Last Modified: July 19, 2014 with 19 page views.

This page is licensed under the following license: GNU Free Document License