- PHP 100%
| LICENSE | ||
| README.md | ||
| Splashdown.php | ||
| splashdown.service | ||
Splashdown
A simple Gemini protocol server written in PHP
See it in action at gemini://omg.lol.
Features
- Supports multiple domains, including wildcard domains (works great with Caddy’s certs!)
- Serves static gemtext (.gmi files) and executes PHP (.php files)
- Just one ~300 line PHP script!
Getting started
These directions are for running Splashdown as a service on a Debian server. Feel free to adjust for your own setup/needs accordingly.
- Clone this repo locally:
git clone https://source.tube/neatnik/Splashdown.git - Create a directory where Splashdown will live:
sudo mkdir /etc/splashdown - Move Splashdown.php to that directory:
sudo cp Splashdown/Splashdown.php /etc/splashdown - Install the service file:
sudo cp Splashdown/splashdown.service /etc/systemd/system/ && sudo systemctl daemon-reload - Enable the service and start it:
sudo systemctl enable splashdown && sudo systemctl start splashdown - Verify that it’s running:
sudo systemctl status splashdown
Now you’ll want to configure things properly, so open Splashdown (/etc/splashdown/Splashdown.php) in your editor of choice. You can leave the default host and port alone for a standard setup, but you’ll want to configure the $capsules array. Add one item for each capsule you’re hosting, and then for each of those, specify the directory where your content will live, as well as the certificate and key files (you can directly reference Caddy certificate files here if to make life easy).
Save the script, and then reload the service to apply your changes: sudo systemctl restart splashdown.
Have fun!