Currently a static webserver run on a LEMP stack (Linux, Nginx, MySQL, PHP).
- Install and Set Up MariaDB
- NOTE: for some reason, no password is different from an empty password? You may need to set it explicitly:
sudo mysqlSET PASSWORD FOR 'root'@'localhost' = PASSWORD('mypass');FLUSH PRIVILEGES;
- NOTE: for some reason, no password is different from an empty password? You may need to set it explicitly:
- Create a new database on the MariaDB server named "website"
sudo mysqlCREATE DATABASE website;
- Run
sudo mysql website --force < database/backup.sql- (you can create a dump with
sudo mysqldump website > database/backup.sql)
- (you can create a dump with
sudo apt install nginxsudo apt install php8.1-common php8.1-cli php8.1-fpm php8.1-mysql php8.1-curl php8.1-mbstring php8.1-xml zip 7zip(might be different php versions for your dist)- Install Composer Dependencies
chmod +x install_composer.sh && ./install_composer.sh
- Copy
nginx.configinto your Nginx config foldersudo cp nginx.config /etc/nginx/sites-available/default- NOTE: You may need to change the PHP versions in this file, it currently includes "php8.1"
- Set global PHP params:
- Fill out
php-params.conf.examplewith the appropriate secrets, rename it tophp-params.conf, and place it in the/etc/nginx/snippetsdirectory
- Fill out
- Copy frontend folder to /var/www/html (or system equivalent default webroot)
sudo systemctl restart php8.1-fpmsudo nginx -tandsudo systemctl restart nginx
Your website should now be live at localhost:80 To get an ssl cert, use certbot: https://certbot.eff.org/ (unnecessary if hosting with cloudflare)
- Currently using Cloudflare for domain protections. Can actually create a tunnel to cloudflare without opening ports on our local server.
- https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/install-and-setup/tunnel-guide/local/
- https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/install-and-setup/tunnel-guide/local/as-a-service/linux/
I've created a script to simplify the process of creating a new post. Simply create a new markdown file in posts/, then run generate_new_post.py.
pip3 install mysql-connector-python
python3 generate_new_post.py
- Add colors to guestbook
- Add more songs
- Add more facts
- Replace background with live JavaScript
- Find ways to make assets lighter?
- Fix guestbook emoji bug
- Create a docker-compose file
- Add an AI scaper black hole
- Recover Guestbook and make it more obvious
- https://www.nesso.xyz/
- https://marginalia-search.com/explore
- https://rsmatchmaking.com/
- https://www.tvchany.com/home
- https://femtanyl.com
- https://svpacyberia.com