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.
- Need hosting? Get $10 credit with DigitalOcean, a hosting service we recommend for FileRun.
- Installing on DigitalOcean or CentOS? Use this tutorial
- Familiar with Docker? Use this guide
- Using Cloudron? FileRun should be able for installation with just a click.
- Using a cPanel hosting? Follow “this guide” instead.
- Before proceeding, make sure your server meets the requirements: http://www.filerun.com/requirements
1. Upload FileRun to your server
Let's assume for this guide that your website is
mywebsite.com and you want to have FileRun running at “
Option 1 (Recommended): Upload the FileRun zip to your server and extract it there:
- Create the folder
my-fileson your web server.
- Download FileRun (the server component - it's a small zip archive) and upload it to your server inside the
- Download this script file unzip.php and also upload it to your
my-filesfolder, next to
- Open your browser and go to
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.
2. Complete the installation
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.
Securing the installation
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
- 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_httponlyis 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.
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.
Still having troubles
Feel free to get contact us with anything, we are here to make sure you will be able to install and run FileRun successfully.