You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Roshless 0a3e258764 store pastes on disk instead of database 4 months ago
assets Initial public commit 9 months ago
config another go mod try 7 months ago
database store pastes on disk instead of database 4 months ago
helpers add checking file size of pastes directory 4 months ago
requests add content type header in paste view 5 months ago
templates Package rework 7 months ago
.drone.yml test all packages 7 months ago
.gitignore update git ignore 8 months ago
LICENSE Initial public commit 9 months ago
README.md another go mod try 7 months ago
go.mod update deps 4 months ago
go.sum update deps 4 months ago
main.go add checking file size of pastes directory 4 months ago

README.md

gopaste

simple paste sever in golang

test only with nginx proxy (because I run it anyway)

config file by default is located in $HOME named gopaste.json.

nginx example config:

limit_req_zone $binary_remote_addr zone=limits:10m rate=10r/s;

upstream paste {
    server 127.0.0.1:9090;
}

server {
  listen 80;
  listen [::]:80;
  server_name paste.domain.tld;
  return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;
  server_name paste.domain.tld;

  client_max_body_size 35M; # set desired max file size
  limit_req zone=limits burst=20 nodelay;
  limit_req_log_level warn;

  ssl_certificate /etc/letsencrypt/live/paste.domain.tld/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/paste.domain.tld/privkey.pem;
  
  location / {
    proxy_pass http://paste;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    #proxy_set_header Host $http_host;
  }
}