FileRun installation guide

Installing FileRun on a web server doesn't really require any technical knowledge. There is no config file to be edited and absolutely no command line action. You basically just upload the downloaded application files to your server.
Tutorials on how to install FileRun on Ubuntu, CentOS, Synology and more are available on our blog.filerun.com

Let's assume for this guide that your website is mywebsite.com and you want to have FileRun running at “http://www.mywebsite.com/my-files”.

Option 1 (Recommended): Upload the FileRun zip to your server and extract it there:

  1. Create the folder my-files on your web server.
  2. Download FileRun (the server component - it's a small zip archive) and upload it to your server inside the my-files folder as FileRun.zip.
  3. Download this script file unzip.php and also upload it to your my-files folder, next to FileRun.zip.
  4. Open your browser and go to http://www.mywebsite.com/filerun/unzip.php

This is the preferred method because it's faster and also ensures that FileRun/PHP has write access to the application folders.

Option 2: Unzip the FileRun files yourself and upload them to your server via FTP (or any other method you prefer). If you have opted for this method, before proceeding with the next step of the installation, you might need to change the permissions of the folder system/data so that PHP can make changes to it. FileRun needs to be able to write temporary files inside that folder.

You should now be presented with the FileRun installation wizard. If not, skip to the troubleshooting section bellow.

The web-based installer will make sure your server configuration is suitable for FileRun and will help you setup the FileRun database. FileRun needs a MySQL database for storing various data and settings. (Note that FileRun never stores files inside the database. Files are always stored in regular folders on the server's drive.)

You will be asked to type in the username and password of the MySQL user account FileRun will use to access its database. We recommend you to avoid connecting FileRun using the MySQL root account. From a security perspective, it is much better to create a separate MySQL user account.

Once you have FileRun running, it is strongly recommended to follow these steps in order to secure it:

  • The default user account, superuser, is the only account not protected against brute force login attacks, so it is very important that you set a password that cannot be guessed by a computer. Set a long password, containing also uppercase letters, digits and symbols.
  • By default, the superuser's home folder is located inside system/data/ folder. It is important that you change the user's settings (from the FileRun control panel) and set the home folder path pointing to a folder which is located outside the public area of your web server (ie. outside www).
  • Accessing the FileRun installation via SSL/HTTPS, instead of plain HTTP will strongly increases your data security. Get a free SSL certificate for your server here: https://letsencrypt.org
  • Make sure session.cookie_httponly is set to On, in your server's PHP configuration file, for increased security against cross-site-scripting attacks.
  • Update the configured MySQL user account and remove the “ALTER” and “DROP” privileges. (You might need to add these back before installing any FileRun update.)
  • If you are on a shared hosting service, make sure the permissions of the FileRun application files do not allow PHP (or any other web server application) to make changes to them. Make an exception for the “system/data” folder, where FileRun needs to be able to make changes.

In 99% of the cases problems are caused by a server or PHP configuration problem. Checking the PHP error log for the error information should be the first course of action. The location of the PHP error log is defined in the PHP configuration using the directive “error_log”. If unsure about the PHP configuration, use the recomended settings.

Cannot add user: failed to create user

The solution is the same as bellow, updating the MySQL configuration.

Fatal error: Uncaught Error: Call to a member function fetchAll()

The solution is the same as bellow, updating the MySQL configuration.

MySQL error: Invalid default value for 'date'

The solution is to locate your MySQL configuration file “my.ini/my.cnf”, look for the following line (the value might be different):

sql-mode = "STRICT_TRANS_TABLES,NO_ZERO_DATE"

and change it to:

sql-mode = ""

and finally restart the MySQL server.

Feel free to get contact us with anything, we are here to make sure you will be able to install and run FileRun successfully.