-
Yassine Doghri authored
fix some style issues
Yassine Doghri authoredfix some style issues
How to install Castopod Host
Castopod Host was thought-out to be easy to install. Whether using dedicated or shared hosting, you can install it on most PHP-MySQL compatible web servers.
Table of contents
Install instructions
0. Pre-requisites
-
Get a Web Server with requirements installed
-
Create a MySQL database for Castopod Host with a user having access and modification privileges (for more info, see Web Server Requirements).
-
Activate HTTPS on your domain with an SSL certificate.
-
Download and unzip the latest Castopod Host Package onto the web server if you haven’t already.
-
Set the web server document root to thepublic/
sub-folder.
-
-
Add a cron task on your web server to run every minute (replace the paths accordingly):
* * * * * /path/to/php /path/to/castopod-host/public/index.php scheduled-activities
Social features will not work properly if you do not set the task. It is used to broadcast social activities to the fediverse.
(recommended) Install Wizard
- Run the Castopod Host install script by going to the install wizard page
(
https://your_domain_name.com/cp-install
) in your favorite web browser. - Follow the instructions on your screen.
- Start podcasting!
Note:
The install script writes a
.env
file in the package root. If you cannot go through the install wizard, you can create and update the.env
file manually.
(alternative) Manual configuration
- Rename the
.env.example
file to.env
and update the default values with your own. - Upload the
.env
file to the Castopod Host Package root on your server. - Go to
/cp-install
to finish the install process. - Start podcasting!
Web Server Requirements
PHP v8.0 or higher
PHP version 8.0 or higher is required, with the following extensions installed:
Additionally, make sure that the following extensions are enabled in your PHP:
- json (enabled by default - don't turn it off)
- xml (enabled by default - don't turn it off)
- mysqlnd
MySQL compatible database
We recommend using MariaDB.
You will need the server hostname, database name, username and password to complete the installation process. If you do not have these, please contact your server administrator.
NB. Castopod Host only works with supported MySQL compatible databases. It will break with MySQL v5.6 for example as its end of life was on February 5, 2021.
Privileges
User must have at least these privileges on the database for Castopod Host to
work: ALTER
, DELETE
, EXECUTE
, INDEX
, INSERT
, SELECT
, UPDATE
.
(Optional) Other recommendations
- Redis for better cache performances.
- CDN for static files caching and better performances.
- e-mail gateway for lost passwords.
Security concerns
Castopod Host is built on top of Codeigniter, a PHP framework that encourages good security practices.
To maximize your instance safety and prevent any malicious attack, we recommend you update all your Castopod Host files permissions after installation (to avoid any permission error):
-
writable/
folder must be readable and writable. -
public/media/
folder must be readable and writable. - any other file must be set to readonly.
For instance, if you are using Apache or NGINX with Ubuntu you may do the following:
sudo chown -R root:root /path/to/castopod-host
sudo chown -R www-data:www-data /path/to/castopod-host/writable
sudo chown -R www-data:www-data /path/to/castopod-host/public/media