PLDB
Languages Patterns Calendar About Lists Join

About this Web Server

About this Web Server

You can download all the source code for this site and browse it completely offline from GitHub.

PLDB.pub

PLDB.pub is registered with Google Domains and also uses Google Domains for DNS.

This site is served using NGINX on Ubuntu 20 running on the smallest Digital Ocean droplet. SSL certificate is generated using certbot.

Analytics

This site does not use cookies or include any tracking scripts. You can view a report of web traffic to this site here.

The log reports are generated using goaccess and is run once daily via the cron job below.

0 5 * * * zcat -f /var/log/nginx/access.log* | goaccess -o /var/www/html/nginxStats.html --log-format=COMBINED

Server setup

ssh root@pldb.pub apt-get update apt-get upgrade reboot # Log back in: ssh root@pldb.pub adduser pldb usermod -aG sudo pldb su pldb cd sudo apt-get install nginx # google "digital ocean certbot" and follow instructions. # deploy the site to /var/www/html # add the server stats cron job below with: crontab -e

Nginx Setup

# Update nginx conf to allow CORS using the snippet below: vim /etc/nginx/nginx.conf sudo systemctl restart nginx

CORS is enabled by putting the below code in our nginx config.

add_header 'Access-Control-Allow-Origin' '*' always; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always; add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' always; add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range' always;

The custom 404 page is activated using the code below:

error_page 404 /custom_404.html; location = /custom_404.html { root /var/www/html; internal; }

Deploying

PLDB is deployed using rsync.

Logo and favicons

Favicon designed with this and favicon files generated with this.

Article source

PLDB - Build the next great programming language. v5.0.0 - Email ยท Github