Important compatibility note
Due to the nature of freistilbox and the design of Piwik it is not yet possible to fully support Piwik on our infrastructure. Piwik will work and do its job as expected, but you will see error messages complaining that piwik.js is not writeable, and you may experience a few limitations because of this. To be more precise, it means that plugins cannot use the JavaScript tracker.
How to set up Piwik on freistilbox
Create a database
You have two options here: either you create a new site just for Piwik, or you create a second database for an existing site. By default, we limit the number of data bases per site to one, but we can raise this limit to allow more. Just contact our support team.
Unpack Piwik locally
Clone the git repo of the site you want to install Piwik to and unpack the Piwik tarball or zipfile into the docroot/ directory, but do not yet push. It is important that Piwik is reachable under the /piwik location (e. g., www.domain.com/piwik) as we already have our default Varnish configuration set up in a way to properly handle Piwik.
Remove config directory from the repository
Parts of Piwik must be writeable and thus reside in the shared storage of freistilbox. These parts must not be checked in via git, but you need to copy them there once not using git. So move (not copy!) this directory out of the git repository:
mv /docroot/piwik/config /tmp
The files inside that directory need to be copied after you have pushed the repository (don’t do that yet), see below.
Changes to the .gitignore file
Append these lines to your existing .gitignore file:
/docroot/piwik/tmp
/docroot/piwik/config
Adapt the Boxfile
The [Boxfile][boxfile] configures the shared folders for this site. For Piwik, you need at least these entries:
version: 2.0
shared_folders:
- docroot/piwik/tmp
- docroot/piwik/config
Create .user.ini
Create a file called .user.ini
in the docroot/ directory containing at least this:
always_populate_raw_post_data=-1
Deploy
Commit all changes and deploy them using git push
.
Copy config files
Copy the files you moved to /tmp
before to the shellhost, and there to the correct location. You can do this by issuing:
rsync -avz /tmp/config/* sSITE-ID@cCLUSTER-IDs.freistilbox.net:current/docroot/piwik/config
Replace SITE-ID and CLUSTER-ID with the correct values for your site and cluster. The actual command would look like this:
rsync -avz /tmp/config/* s1234@c123s.freistilbox.net:current/docroot/piwik/config
Test
Confirm your installation is working. As mentioned above, the core functionallity will work, but you may encouter error messages saying that piwik.js is not writeable. If you encounter any issues, do not to hesitate contact our support team.