serve.conf 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. server {
  2. listen 80;
  3. server_name SERVER_NAME;
  4. return 301 https://$host$request_uri;
  5. }
  6. server {
  7. listen 443 ssl;
  8. server_name SERVER_NAME;
  9. ssl_certificate /etc/letsencrypt/live/SERVER_NAME/fullchain.pem;
  10. ssl_certificate_key /etc/letsencrypt/live/SERVER_NAME/privkey.pem;
  11. ssl_session_timeout 5m;
  12. ssl_protocols TLSv1.2 TLSv1.3;
  13. ssl_ciphers HIGH:!aNULL:!MD5;
  14. ssl_prefer_server_ciphers on;
  15. client_max_body_size 1024m;
  16. location /group/signal {
  17. proxy_pass http://serve:8080;
  18. proxy_http_version 1.1;
  19. proxy_set_header Upgrade $http_upgrade;
  20. proxy_set_header Connection "upgrade";
  21. proxy_set_header Host $host;
  22. proxy_set_header X-Real-IP $remote_addr;
  23. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  24. proxy_set_header X-Forwarded-Proto $scheme;
  25. }
  26. location /files/ {
  27. root /var/lib/webpage/;
  28. }
  29. location / {
  30. proxy_set_header Host $host;
  31. proxy_set_header X-Real-IP $remote_addr;
  32. proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
  33. if ($request_method = 'OPTIONS') {
  34. add_header 'Access-Control-Allow-Origin' '$http_origin';
  35. add_header 'Access-Control-Allow-Methods' '*';
  36. add_header 'Access-Control-Allow-Headers' '*';
  37. add_header 'Access-Control-Allow-Credentials' 'true';
  38. add_header 'Content-Type' 'text/plain; charset=utf-8';
  39. add_header 'Content-Length' 0;
  40. return 204;
  41. }
  42. if ($http_dandelion_service = true) {
  43. proxy_pass http://serve:8192;
  44. break;
  45. }
  46. proxy_pass http://serve:8080;
  47. }
  48. }