Installation:website
IF YOU ARE USING NGINX: Read the section about Nginx below!
Contents
VIDEO TUTORIAL
GoldTrigger has created an installation walkthrough for Prometheus. It explains step-by-step how to install and is recommended for novice web hosters:
Please note: the version of Prometheus being used for this tutorial is out of date, however, installation is still generally completed in a similar way.
WEBSITE INSTALLATION
The web installation is pretty straight forward.
- Extract the contents of the "Web files" folder to your web server
- Create a MySQL database and user using your website's control panel. Make sure to give the user read/write/execute access to the database.
- Rename the config.example.php file to config.php. In older versions of Prometheus the file is already named config.php.
- Edit the file config.php that you have uploaded and fill in the MySQL database and user information from step 2. (for the host, typically you can leave it as 'localhost' and port '3306')
- After you have modified your config.php file, navigate to yourwebsite.com/install.php. Here, you will see something similar to this:
The three last fields will be automatically filled in and the other ones are pretty self explanatory.
Extra Steps for Linux Installations
The next step is for Linux only. Make sure to set the right permissions for your files! This can be done by running these commands in a Linux terminal:
cd path/to/installdir sudo chown www-data:www-data install.php img/pkgs updates themes sudo chmod 775 install.php cert/* ipn_errors.log img/pkgs updates sudo chmod 0777 cache/* themes
BLANK PAGE / ERROR 500
If you are encountering an issue with the page being blank or your web browser stating an 'Internal Error 500', please follow the below guide in order to fix it:
Windows
The next step is for Windows only!
- Right click on the cache folder -> Properties -> Security and make sure guests have access to write to the directory
- If you are having error 500 and have already allowed IIS_USRS access, please make sure to also grant IUSR access.
Linux
- Right click on the cache folder in filezilla/WinSCP and give it 0777 chmod permissions recursively
- Alternatively, you can also just run the SSH command sudo chmod 0777 cache/* whilst in the Prometheus directory.
Both
If the blank page issue persists, please find a PHP error log and submit a ticket over at gmodstore.com with your host's PHP error log (found on your website's control panel typically). It's likely that you are missing a dependency.
When you have completed the installation you can now visit yourwebsite.com and click 'Sign In' from the menu. The first user that signs in is the one that will get root admin permission, so please make sure to sign in quickly to make sure you don't get locked out.
IF YOU USE NGINX (VERY IMPORTANT)
Make sure to make your cache folder inaccessible to the public through nginx.conf or your website's config. You can do this by adding a new location block:
location ~ /path/to/prometheus/cache { deny all; }
Remmeber to replace the path with the correct path relative to your Nginx root setting. The easiest way to think about this is if your Prometheus is hosted at /donate on your website, this path should be /donate/cache
If you don't do this you will end up with security issues. This does not apply to you if you use IIS or Apache.
OPTIONAL INSTALLATION STEPS
You may complete the following additional tasks to extend your Prometheus installation's capabilities:
- You can set your /img folder to have read/write permissions (CHMOD 0777) to allow you to upload files directly when configuring packages and servers.
- If you include a Steam API key in your config.php file, it will be used as a fallback in case Steam authorization fails. This is recommended.