Third Party Servers

by Justin Bodeutsch, Benson Lee, Etienne de Bruin | Last edited: 1/22/2020

Hosting the CMS on third party servers is supported. Outlined below are requirements, comments specific to IIS, common issues that arise, and our third party hosting policy.

Requirements

  • Create a media folder. This will be the folder where all feed files will be stored. This folder should be named "mediafiles" or "_media". A folder named "media" may sometimes conflict with a top level navigation item with the same name.
  • Make sure that your Web Host supports PHP 7.2+ and make sure that safe mode is not enabled.
  • Make sure that your Web Host supports Mod Rewriting. For Apache this is quite simple as it is almost always included via the mod_rewrite module and for IIS special installs need to be made.
  • Other required directories like monkcache and monkimage will be created by the CMS with appropriate permissions. 
  • It is recommended but not required that the PHP cURL module is enabled. The CMS will automatically detect if it is enabled.
  • It is recommended but not required that the PHP SQLite3 module is enabled. The CMS will automatically detect if it is enabled, and if it is, use it to store the cache in a database named monkcache.db. If not, the cache will be stored in individual files within a directory named monkcache.
 

Windows-Specific Comments

  • The easiest way to get a site working on a Windows server is with Apache + PHP.  XAMPP is a package that contains Apache + PHP + MySQL, and may be a good option for a fresh server.
  • If IIS is being used, it must have PHP5 support and mod_rewrite support. mod_rewrite packages that have worked previously:
    • MicroNovae's IIS Mod-Rewrite Pro Edition (link)
    • Helicon Tech's ISAPI_Rewrite 3 Full Version (link)
  • Windows does not have the CURL binaries installed by default.  The readfile method must be used.  In monkcode.php ensure the ACCESS line reads "ACCESS=readfile"
  • Confirm the following in php.ini:
    • allow_url_fopen = On
    • short_open_tag = On
    • Typically, safe_mode = off

Server Troubleshooting

There are several common issues that occur with third party servers.  Below are some of the more common ones.

  • Empty monkcache directory.  If you do not see content on your site, and/or there are no files in the monkcache directory, confirm that the webserver has permissions to write to the directory.  The content is cached locally for significantly improved load speeds, and if the webserver cannot write to this directory, site performance will be significantly degraded.
  • No content, size 0 files in monkcache.  If the site does not display content, files are being created in the monkcache directory, but they are all of size zero, the webserver has permissions to the monkcache directory, but cannot reach the API server.  Confirm that the server can reach to the API server (restrictive firewall rules may prevent this).  In monkcode.txt, if ACCESS=cURL, ensure the webserver has the cURL package installed.  If ACCESS=readfile, ensure allow_url_fopen = On in php.ini.  The webserver error logs may be useful in troubleshooting this.
  • If no content is being displayed, but the cache files are present with valid data, ensure that the webserver is properly interpreting PHP.  When accessing the site, view the page source.  You should NOT see any <? or <?php tags present.  If they are, ensure PHP is properly installed, and ensure that short_open_tag = On in php.ini

 

Policy

The client has the option to provide their own hosting environment and email services. The hosting server should include/support 1) Apache Web Server, 2) Mod Re-Writes, 3) PHP Support, and 4) full (writable) FTP access with the ability to set the directory names and paths for the hosting instance. We highly recommend that clients host with Monk Development if possible. Hosted sites will enjoy a quicker response time in uploading files and better website performance if the site and our system are on the same network. More information can be provided as needed.

Please note that outside hosting may limit our ability to resolve support issues. There are tools and status messages that assist the client with determining if a connection or write problem exists between our CMS and the hosting server; however our ability to troubleshoot or modify outside servers will be limited. Monk Development reserves the right to charge for troubleshooting and support of servers not our own. The current rate for outside server support is $195/hr.

 

Hosting Providers

This is a list of hosting providers that have been reported by resellers and clients to work with the CMS. Sites hosted with us are on Rackspace Cloud Servers, Rackspace Cloud Hosting, Linode, or Digital Ocean. We do not guarantee compatibility with these providers.

  • Hostmonster
  • Dreamhost
  • MediaTemple