Main setup

  1. Extract the downloaded dmBridge distribution. This will result in a single folder called dmbridge-x.x.x.

  2. Rename the dmbridge-x.x.x folder to dm.

  3. Move the dm folder into your CONTENTdm® web server's document root. (This is the same place where your current cdm4 and dmscripts folders reside.

  4. Copy dm/data/config.default.xml to dm/data/config.xml.

  5. Move the dm/data folder somewhere where it is not web-accessible. This may be anywhere outside your web server's document root; or you may be able to "lock down" a specific directory with a web server configuration directive.


    Failure to complete this step means that your database password and/or social data may be exposed to the public.

  6. Copy config.default.ini to config.ini.

  7. In config.ini, set dmbridge.data_path to the new absolute path of the dm/data folder. If you are unsure of the absolute path, create an empty PHP script in the same folder, type the following code into it, and load it in a web browser:

    <?php die(dirname(__FILE__)); ?>

    This will show you the full path to your dmBridge folder. Adjust it appropriately to point to your data folder instead. Make sure to change any backslashes to forward slashes.

  8. Ensure the permissions on the dm/data folder are set so that the web server process has read/write access to all of the files and folders inside it.

  9. If using CONTENTdm® 5.x, open Content5/docs/dmscripts/DMSystem.php and find the following around line 1811:

    print("<!-- $url //-->\n");

    And comment it out by appending two slashes to it:

    // print("<!-- $url //-->\n");

  10. Edit config.ini appropriately. Each setting is documented within the file and will not be discussed here.

  11. In a web browser, navigate to the following URI and verify that it outputs XML without any <dmException> elements showing up (you may have to view the page source to see it):


  12. Modify robots.txt appropriately, if necessary.

dmBridge is now installed, but it is not yet configured. This will be done in the next section.