Installing the DocMoto web client

The following instructions are for OSX Standard machines (Sierra and greater).  It also assumes you are installing the web client on the same computer as your DocMoto server. See note ** for installation on an OSX server.

These instructions cover the DocMoto web client from v3.8 onwards. If you have a previous web client installed some of the instructions may already have been completed. See note *** below before you start.

For customers with a CentOS 6.x based DocMoto server the instructions are here.

Setting up Apache

By default Apache will already be installed on your mac. To check if it's running type localhost into the address line of your browser. You should see a page displayed saying It Works!

If you do not see this message then it is possible Apache is installed but not running. See note * at the bottom of this article for the simplest method to check this.

You will need to make some changes to the Apache configuration and find the location of Apache's document root.

Locate the file httpd.conf, this is usually in /etc/apache2 which is accessible via the terminal application. When using the terminal application it is as well to switch to the root user, you can do this by typing sudo -s followed by your password at the command line.

  1. Edit /etc/apache2/httpd.conf and uncomment the line:
    LoadModule php5_module libexec/apache2/libphp5.so
    
    N.B. For High Sierra Edit the same /etc/apache2/httpd.conf file and uncomment the line:
    LoadModule php7_module libexec/apache2/libphp7.so
  2. Uncomment the line:
    LoadModule rewrite_module libexec/apache2/mod_rewrite.so
    
  3. Find the DocumentRoot entry and change the AllowOverride setting from None to All as below:
    DocumentRoot "/Library/WebServer/Documents"
    <Directory "/Library/WebServer/Documents">
        #
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        #
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        #
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs/2.4/mod/core.html#options
        # for more information.
        #
        Options FollowSymLinks Multiviews
        MultiviewsMatch Any
    
        #
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   AllowOverride FileInfo AuthConfig Limit
        #
        AllowOverride All
    
        #
    </Directory>
    
  4. Make a note of the location of the DocumentRoot, in our case /Library/WebServer/Documents
  5. Make a note of the Apache user, generally _www
    User _www
    Group _www
    

Setting up PHP

  1. Copy /etc/php.ini.default to /etc/php.ini, unless you already have a php.ini file in which case use that.
  2. Edit /etc/php.ini and change the section under [Date] to define a default timezone:
    [Date] ; Defines the default timezone used by the date functions 
    http://php.net/date.timezone date.timezone = "UTC"
    
  3. The default file size that php allows you to upload is rather small at 2M per file and 8M in a single POST.  Change this by editing /etc/php.ini and setting to more suitable sizes by adjusting the post_max_size and upload_max_filesize parameters, for example:
    post_max_size = 500M
    upload_max_filesize = 500M
    

    Alternatively you can add this to .htaccess after installing the Web Client.
    php_value upload_max_filesize 1G
    php_value post_max_size 2G
    
  4. The default number of files that can be uploaded is 20. You can change this by adjusting the max_file_uploads value, for example.
    max_file_uploads = 100
    

Installing the DocMoto Web Client

  1. Obtain the file docmotoWebclient.zip.
  2. Decide where you want to install the web client. The location is none-critical but MUST NOT be in the Apache document root. In this example we will install it inside the /var/opt folder alongside the existing docmoto folder.
    1. Select the docmotoWebclient.zip folder from Downloads and unzip it by double clicking (your browser may have already unzipped it).
    2. Copy the docmotoWebclient folder to your clipboard.
    3. Open Finder, under the Go menu select Go to Folder... option and enter /var/opt and press Go.
    4. Copy the docmotoWebclient folder into this location.
  3. Return to terminal, and still logged in as root create a symbolic link in general form ln -s "<your path to dm client>/docmotoWebClient/web" "<your apache document root>/web”.

    This will make the DocMoto web client accessible as http://localhost/web from your browser.

    If you want a different URL then modify the ln command:

    eg. ln -s "<your path to dm client>/docmotoWebClient/web" "<your apache document root>/docmoto” will make the web client accessible via http://localhost/docmoto. In our example the full command is:

    ln -s "/var/opt/docmotoWebClient/web" "/Library/WebServer/Documents/docmoto"
    

    To test the link is correct type the following ls -la /Library/WebServer/Documents/docmoto/ and you should see a file listing as follows:

    total 32
    drwxr-xr-x@ 10 wayneprice  wheel  340 25 Oct 16:09 .
    drwx------@ 28 wayneprice  wheel  952 26 Oct 14:58 ..
    -rw-r--r--@  1 wayneprice  wheel  647 25 Oct 14:32 .htaccess
    drwxrwxrwx@  3 wayneprice  wheel  102 25 Oct 16:09 assets
    drwxr-xr-x@  4 wayneprice  wheel  136 25 Oct 16:09 css
    -rw-r--r--@  1 wayneprice  wheel  318  6 Aug  2015 favicon.ico
    drwxr-xr-x@ 24 wayneprice  wheel  816 25 Oct 16:09 images
    -rw-r--r--@  1 wayneprice  wheel  376 25 Oct 16:09 index.php
    drwxr-xr-x@  9 wayneprice  wheel  306 25 Oct 16:09 js
    -rw-r--r--@  1 wayneprice  wheel   23  6 Aug  2015 robots.txt
    
  4. Apache needs access to the /var/opt/docmotoWebClient folder. This is best done by making the apache user (note in Setting up Apache above) the owner. In our case this is _www giving the command as:
    chown -R _www /var/opt/docmotoWebClient
    
  5. Restart Apache by typing:
    apachectl restart
    
  6. Open your browser and type the following into the address bar http://localhost/docmoto. You should see your DocMoto web client displayed.
  7. Log in as usual using your normal DocMoto user name and password.

Connecting users

Internal users - Internal users will be able to view the web site by typing either the machine name or IP address instead of "localhost".

External users - External users will require your firewall being configured such that traffic is correctly routed to your internal web site.

Browser Support

The DocMoto web client requires a browser with good Javascript and CSS support that supports jQuery.  This includes most modern browsers.

The multiple file upload feature requires a browser that supports the HTML5 multiple attribute.  For earlier browsers you can only select one file at a time.

With regard to Microsoft Internet Explorer, only version 9 and greater are fully supported.

SSL

We recommend that you ONLY connect to your web client via SSL, even if you are using the web client internally. This is because password information is sent in plain text and can be read by anybody monitoring your network. The ONLY way to protect this information is using SSL.

Installing an SSL certificate on Apache is outside the scope of this article. If you are unsure how to install one then please contact a qualified IT professional. CHL Software cannot provide support on SSL certificate installation.

Ensuring Secure Access

The web client is shipped with a .htaccess file to control access. This can be modified such that any insecure traffic (http) is automatically redirected to a secure path (https).

To configure this open the .htaccess file in a command line editor and uncomment the following two lines:

RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]

Non standard ports

If you are configuring the web client and sharing on your internal use and want it accessible externally then you will by default need port 443 (the default SSL port). If another service is using port 443 then you will need to configure your Apache server to use a non-standard port.

In this example we assume that you are not using your Apache server for any other applications.

To configure your Apache server to use a non-standard SSL port do as follows:

  1. Choose a port that is not already in use, in this example we use port 4444.
  2. In terminal find Apache's SSL config file httpd-ssl.conf, usually in /etc/apache2/extra.
  3. Open the file using an editor and replace entries for 443 with 4444. Specifically change the Listen and VirtualHost _default_ settings as follows
  4. Listen 4444
    <VirtualHost _default_:4444>
    
  5. Save the file and restart apache.

Users will now be able to access the DocMoto web site by entering https://yourcompanydomain.com:4444.

If you are using the .htaccess file to automatically redirect any traffic to https you will need to modify it as follows:

RewriteRule ^/?(.*) https://%{SERVER_NAME}:4444/$1 [R,L]

See note ****

Notes

  • * Apache is controlled from the command line using the apachectl command.

    • apachectl status - returns whether Apache is running or not.
    • apachectl start - starts Apache.
    • apachectl stop - stops Apache.
    • apachectl restart - restarts Apache.
  • ** Apple's Server product provides a graphical user interface for the web server.  To access this go to "Applications", double click on the "Server" icon and highlight the "Web" menu item under "Services".

    If it has not already been switched on, switch your web server to "on" and tick "Enable PHP web applications".

    If your web server is not in use you will be able to install the DocMoto web client in your default web contents folder.

    In most cases this is the folder /Library/Server/Web/Data/Sites/Default.

    If your web server is in use you should check with the web administer for a safe location to install your web client.

  • *** If you already have a previous version of the DocMoto web client installed then it will be placed in the Apache document root.

    Whilst installations may vary, the majority will be found in a folder called docmoto or dm.

    Prior to installing the version 3.8 client either delete this existing folder or rename it and remove it once the v3.8 installation is completed.

  • **** If you have changed the standard http port away from port 80 you will need to add an extra condition such that only traffic on this non-standard port is redirected to port 4444 on SSL.

Installation on CentOS

CHL provide an rpm for web client installation on CentOS. This will install the correct version of php (5.4 or greater) which is not accessible via Yum on CentOS 6.XX.

The installation assumes that the CentOS server is dedicated to DocMoto and that the Apache root is not used by any other application.

The instructions for installing CentOS are as follows:

  1. Obtain the web client rpm.
  2. Become a superuser using sudo -s
  3. Type yum install centos-release-SCL
  4. Type yum install docmoto-x.x-xxxx-centos6-release-Linux-webclient.rpm

By default Apache's settings are configured. We recommend that you double check these match those listed in the above article.

To configure sharing on CentOS follow the same steps as with OS X excepting that DocMoto is installed in /opt/docmoto, that the share URL will be <http://yourserverdomain/share> and restarting the DocMoto server uses the service docmoto restart command.

For instructions on installing the DocMoto server on CentOS 6.x see here.

Still have a question?

If you still can't find the answer to your question or need
more information, please contact the DocMoto team: