I want to host my website in my raspberry pi, I’ve read that I would need a web server software for this. Which one do you recommend? It won’t be a complex website.
Caddy! It has HTTPS built in and provides simple but powerful configuration with sane defaults.
Example Caddyfile for a static file server:
example.com {
root * /var/www
file_server
}
I used nginx in the past, but didn’t like it’s verbose config files.
Nginx! Simplex essential and easy.
Unless you need to rely a lot on CGIs then apache maybe is better.
nginx
Not sure why others are suggesting a Raspberry Pi and nginx would cause problems? I run three public facing websites on a single Raspberry Pi 4 with 2GB RAM. Has been working flawlessly for 2 years. Typical uptime is measured in multiple months.
Running Wordpress, fail2ban and certbot. Booting and running of a USB drive - have considered SSD but no need as I cache to RAM for performance.
Apache, the OG HTTP server. Fast, well documented, battle-tested, FOSS and community-led (unlike nginx which is corporate-led). People will tell you that nginx is “faster” but never point to actual benchmarks. Both are ok.
Yeah apache is awesome. Lots of settings if u want, and every question I’ve ever asked and probably am yet to ask has already been answered on stack with multiple duplicates aha
Check out mod_md - this module allows getting certificates from Let’s Encrypt (or any other ACME cert provider) automatically. Just set this anywhere in your config, reload apache and you’re set. No more fiddling around with certbot.
MDCertificateAgreement accepted
MDContactEmail me@example.org
MDomain my.example.org
Also other comments make it look like only nginx supports FastCGI (e.g. php-fpm), apache has supported talking to FastCGI since 2005:
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php/php8.2-fpm.sock|fcgi://localhost"
</FilesMatch>
Yeah I use php-fpm, I didn’t know much about it the first time I installed it, I just needed it for HTTP 2.
For ssl I just install certbot and let it autorun LetsEncrypt, I haven’t had any issues with any of my ssl certs, it’s pretty nice.
The age old LAMP stack is pretty solid, except for me it’s LAPP cuz I don’t wanna use mysql.
I use nginx for simple websites: https://raspberrytips.com/nginx-on-raspberry-pi/#:~:text=The%20main%20package%20for%20Nginx,made%20in%20%2Fetc%2Fnginx.