| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396 |
- commit b62710efac804ff8c8a342aacdd74e361ff5692b
- Author: unknown <C:\TheBat\Mail>
- Date: Sat Apr 18 12:34:33 2026 +0200
- feat: implement Google OAuth, localize fonts, and fix translations
- diff --git a/nginx.conf b/nginx.conf
- index 3c83210..ac9b785 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -37,8 +37,15 @@ server {
- access_log off;
- }
-
- + # Font files (local hosting, long-term cache)
- + location /fonts/ {
- + expires 10y;
- + add_header Cache-Control "public, immutable";
- + access_log off;
- + }
- +
- # Other static files
- - location ~* \.(?:ico|gif|jpe?g|png|woff2?|eot|otf|ttf|svg|webp|avif)$ {
- + location ~* \.(?:ico|gif|jpe?g|png|svg|webp|avif)$ {
- expires 7d;
- add_header Cache-Control "public";
- access_log off;
- commit 4e7163df2f3af8f7a4a451a577cf112fe0393e06
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 21:56:03 2026 +0200
- perf: optimize page speed (caching, font loading, lazy loading) and fix admin ui bug
- diff --git a/nginx.conf b/nginx.conf
- index fc10195..3c83210 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -6,10 +6,42 @@ server {
-
- # Gzip Compression
- gzip on;
- - gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
- + gzip_static on;
- + gzip_vary on;
- + gzip_proxied any;
- + gzip_comp_level 6;
- + gzip_buffers 16 8k;
- + gzip_http_version 1.1;
- + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml font/woff2;
- +
- + # Security Headers
- + add_header X-Frame-Options "SAMEORIGIN";
- + add_header X-XSS-Protection "1; mode=block";
- + add_header X-Content-Type-Options "nosniff";
- + add_header Referrer-Policy "strict-origin-when-cross-origin";
- + # add_header Content-Security-Policy "default-src 'self' http: https: data: blob: 'unsafe-inline'" always;
-
- location / {
- try_files $uri $uri/ /index.html;
- +
- + # Caching for index.html (don't cache)
- + location = /index.html {
- + add_header Cache-Control "no-store, no-cache, must-revalidate";
- + }
- + }
- +
- + # Static assets in /assets/ (Vite)
- + location /assets/ {
- + expires 1y;
- + add_header Cache-Control "public, immutable";
- + access_log off;
- + }
- +
- + # Other static files
- + location ~* \.(?:ico|gif|jpe?g|png|woff2?|eot|otf|ttf|svg|webp|avif)$ {
- + expires 7d;
- + add_header Cache-Control "public";
- + access_log off;
- }
-
- # Proxy API requests to backend
- @@ -17,6 +49,8 @@ server {
- proxy_pass http://127.0.0.1:8000/;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- + proxy_set_header X-Forwarded-Proto $scheme;
- }
-
- # Standalone Deploy Webhook
- @@ -32,12 +66,13 @@ server {
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "Upgrade";
- proxy_set_header Host $host;
- + proxy_read_timeout 86400;
- }
-
- # Static uploads
- location /uploads/ {
- alias /var/www/radionica3d/backend/uploads/;
- - expires 7d;
- + expires 30d;
- add_header Cache-Control "public";
- }
-
- commit 229204fd2bf5efaccdd53b667ae8d34c89561236
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 21:18:15 2026 +0200
- fix(nginx/backend): use 127.0.0.1 instead of localhost to avoid IPv6 issues and harden security
- diff --git a/nginx.conf b/nginx.conf
- index 0134f85..fc10195 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -14,7 +14,7 @@ server {
-
- # Proxy API requests to backend
- location /api/ {
- - proxy_pass http://localhost:8000/;
- + proxy_pass http://127.0.0.1:8000/;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- }
- @@ -27,7 +27,7 @@ server {
-
- # WebSocket requests
- location /ws/ {
- - proxy_pass http://localhost:8000/;
- + proxy_pass http://127.0.0.1:8000/;
- proxy_http_version 1.1;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "Upgrade";
- commit fa2c09d93612b0027fa36c16a44d782163e97fa5
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 20:41:31 2026 +0200
- fix(nginx): remove duplicate /ws/ prefix for websocket proxying
- diff --git a/nginx.conf b/nginx.conf
- index 0c90674..0134f85 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -27,7 +27,7 @@ server {
-
- # WebSocket requests
- location /ws/ {
- - proxy_pass http://localhost:8000/ws/;
- + proxy_pass http://localhost:8000/;
- proxy_http_version 1.1;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "Upgrade";
- commit 3cd2994dfa88f30f006454870e8787446af0866c
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 19:41:29 2026 +0200
- fix: use explicit shell and venv paths in scripts
- diff --git a/nginx.conf b/nginx.conf
- index 12d540e..0c90674 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -1,7 +1,7 @@
- server {
- server_name radionica3d.me 148.230.71.134;
-
- - root /var/www/radionica3d/html;
- + root /var/www/radionica3d/dist;
- index index.html;
-
- # Gzip Compression
- commit 169118e860e5bbaee3d253e166666e67f43bba21
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 19:30:53 2026 +0200
- style: remove www prefix
- diff --git a/nginx.conf b/nginx.conf
- index b7bbf6a..12d540e 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -1,5 +1,5 @@
- server {
- - server_name radionica3d.me www.radionica3d.me;
- + server_name radionica3d.me 148.230.71.134;
-
- root /var/www/radionica3d/html;
- index index.html;
- @@ -54,6 +54,6 @@ server {
- } # managed by Certbot
-
- listen 80;
- - server_name radionica3d.me www.radionica3d.me;
- + server_name radionica3d.me;
- return 301 https://radionica3d.me$request_uri;
- }
- commit 767c4a5846dc951db722f35db3f80c17e025404a
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 19:26:05 2026 +0200
- chore: finalize nginx with ssl and correct paths
- diff --git a/nginx.conf b/nginx.conf
- index fe4139d..b7bbf6a 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -1,8 +1,7 @@
- server {
- - listen 80;
- - server_name radionica3d.me www.radionica3d.me 148.230.71.134;
- + server_name radionica3d.me www.radionica3d.me;
-
- - root /usr/share/nginx/html;
- + root /var/www/radionica3d/html;
- index index.html;
-
- # Gzip Compression
- @@ -35,10 +34,26 @@ server {
- proxy_set_header Host $host;
- }
-
- - # Static uploads (if served via Nginx instead of FastAPI)
- + # Static uploads
- location /uploads/ {
- - alias /app/uploads/;
- + alias /var/www/radionica3d/backend/uploads/;
- expires 7d;
- add_header Cache-Control "public";
- }
- +
- + listen 443 ssl; # managed by Certbot
- + ssl_certificate /etc/letsencrypt/live/radionica3d.me/fullchain.pem; # managed by Certbot
- + ssl_certificate_key /etc/letsencrypt/live/radionica3d.me/privkey.pem; # managed by Certbot
- + include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
- + ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
- +}
- +
- +server {
- + if ($host = radionica3d.me) {
- + return 301 https://$host$request_uri;
- + } # managed by Certbot
- +
- + listen 80;
- + server_name radionica3d.me www.radionica3d.me;
- + return 301 https://radionica3d.me$request_uri;
- }
- commit 408b5288c2819b47476a2588938f87e2fd5a9b8f
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 19:23:21 2026 +0200
- chore: migrate to radionica3d.me domain
- diff --git a/nginx.conf b/nginx.conf
- index 539da66..fe4139d 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -1,6 +1,6 @@
- server {
- listen 80;
- - server_name radionica3d.com www.radionica3d.com 148.230.71.134;
- + server_name radionica3d.me www.radionica3d.me 148.230.71.134;
-
- root /usr/share/nginx/html;
- index index.html;
- commit 36b39d97c8f342c6797bc07aa725d1897ad35027
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 19:08:09 2026 +0200
- fix: replace backend with localhost in nginx ws block
- diff --git a/nginx.conf b/nginx.conf
- index e66f9d7..539da66 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -28,7 +28,7 @@ server {
-
- # WebSocket requests
- location /ws/ {
- - proxy_pass http://backend:8000/ws/;
- + proxy_pass http://localhost:8000/ws/;
- proxy_http_version 1.1;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "Upgrade";
- commit e61c07a115797fd7ecfc06163518797550af5443
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 19:05:49 2026 +0200
- fix: add IP to nginx server_name
- diff --git a/nginx.conf b/nginx.conf
- index 0ba596e..e66f9d7 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -1,6 +1,6 @@
- server {
- listen 80;
- - server_name radionica3d.com;
- + server_name radionica3d.com www.radionica3d.com 148.230.71.134;
-
- root /usr/share/nginx/html;
- index index.html;
- commit 60afc342de08f4bdb87a5e406d79585a926c2cc8
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 19:02:49 2026 +0200
- chore: setup standalone deploy infrastructure
- diff --git a/nginx.conf b/nginx.conf
- index 86bc57e..0ba596e 100644
- --- a/nginx.conf
- +++ b/nginx.conf
- @@ -15,12 +15,15 @@ server {
-
- # Proxy API requests to backend
- location /api/ {
- - proxy_pass http://backend:8000/;
- - proxy_http_version 1.1;
- - proxy_set_header Upgrade $http_upgrade;
- - proxy_set_header Connection 'upgrade';
- + proxy_pass http://localhost:8000/;
- + proxy_set_header Host $host;
- + proxy_set_header X-Real-IP $remote_addr;
- + }
- +
- + # Standalone Deploy Webhook
- + location /deploy-webhook {
- + proxy_pass http://127.0.0.1:9000;
- proxy_set_header Host $host;
- - proxy_cache_bypass $http_upgrade;
- }
-
- # WebSocket requests
- commit 9e9e68d399ca3a1e2b59119325d3e8603dca9f50
- Author: unknown <C:\TheBat\Mail>
- Date: Fri Apr 17 18:48:02 2026 +0200
- Auto-init: project ready for production
- diff --git a/nginx.conf b/nginx.conf
- new file mode 100644
- index 0000000..86bc57e
- --- /dev/null
- +++ b/nginx.conf
- @@ -0,0 +1,41 @@
- +server {
- + listen 80;
- + server_name radionica3d.com;
- +
- + root /usr/share/nginx/html;
- + index index.html;
- +
- + # Gzip Compression
- + gzip on;
- + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
- +
- + location / {
- + try_files $uri $uri/ /index.html;
- + }
- +
- + # Proxy API requests to backend
- + location /api/ {
- + proxy_pass http://backend:8000/;
- + proxy_http_version 1.1;
- + proxy_set_header Upgrade $http_upgrade;
- + proxy_set_header Connection 'upgrade';
- + proxy_set_header Host $host;
- + proxy_cache_bypass $http_upgrade;
- + }
- +
- + # WebSocket requests
- + location /ws/ {
- + proxy_pass http://backend:8000/ws/;
- + proxy_http_version 1.1;
- + proxy_set_header Upgrade $http_upgrade;
- + proxy_set_header Connection "Upgrade";
- + proxy_set_header Host $host;
- + }
- +
- + # Static uploads (if served via Nginx instead of FastAPI)
- + location /uploads/ {
- + alias /app/uploads/;
- + expires 7d;
- + add_header Cache-Control "public";
- + }
- +}
|