
Install Castopod in 5mn
Installing Castopod is pretty straighforward. You do not need advanced skills in server administration. Depending on the traffic you expect, you may choose a dedicated server, a virtual machine or even a shared hosting (as long as it runs php/mysql and allows to specify root folder).
For your peace of mind we recommend that you install Castopod on CloudPanel: CloudPanel will take care of PHP versions and dependencies, MySQL, LetsEncypt certificate, Redis cache…
Castopod is built on CodeIgniter4. Its requirements are:
- a web server (Apache, NGinx…) with PHP version >= 8.0
- HTTPS
- intl extension
- mbstring extension
- libcurl extension
- php-json, php-mysqlnd and php-xml enabled
- MySQL (5.1+) with MySQLi driver
Under Debian/Ubuntu, you probably need to run:
$ sudo apt-get install nginx mysql-server php-fpm python3-certbot-nginx
$ sudo mysql_secure_installation
$ sudo apt-get install php-mysqlnd php-json php-xml php-intl php-mbstring php-curl
You also need a rewrite module:
- Apache needs
mod_rewrite
enabled and you needAllowOverride All
in order to havepublic/.htaccess
enabled, or you need the following directive in Apache configuration file:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
</IfModule>
- NGinx configuration file needs the followings:
try_files $uri $uri/ /index.php?$args;
index index.php index.html;
Troubleshooting: If you get an error 500 page and do not know how to fix it, add CI_ENVIRONMENT=development
in your .env
file in order to get the full error message.
- Download and unzip Castopod's bundle, then upload it to your server.
- Modify your hosting parameters so that root folder points to Castopod's
public/
subfolder.
- Open your favorite web browser. Go to your website. Since Castopod is not configured yet, you should see an error, that's totally fine: Don't panic.
- Go to
/cp-install
page. Follow the instructions:
Note: Use media base URL if you have a CDN for your audio files and/or an external analytics service. - Enter database information.
- Select the cache system you want to use. (Redis and Memcached are faster but they require additionnal installation and are usually not available on personal hostings.)
- You are almost there, the database and its tables are now created. You just need to create a superadmin user.
- You may now connect to Castopod's admin…
- You are all set. Start podcasting!
- For broadcasting social activities to the fediverse, add a cron task on
your web server to run every minute (replace the paths accordingly):
* * * * * /path/to/php /path/to/castopod/public/index.php scheduled-activities
To continue, create a podcast in 3mn with Castopod.
Castopod source files are available here:
https://code.castopod.org/adaures/castopod/-/releases
Photo by Pixabay.