diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8c864ea3d6d3f65ab686516327bb644fcd532093..f8307b63a2ba39b7834d634e476012088a64810f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -31,6 +31,7 @@ deploy_test:
     DOCKER_HOST: unix:///var/run/docker.sock
   script:
     - echo "deploying test"
+    - cp ./nginx_snippets/* /etc/nginx/snippets/
     - docker login -u $DOCKERHUBUSER -p $DOCKERHUBPASSWORD docker.io
     - docker stop strudel2_backend || echo "Failed to stop existing container"
     - docker ps -a -q | xargs -I{} docker rm  {} || echo "No containers to remove"
@@ -50,6 +51,7 @@ deploy_dev:
     DOCKER_HOST: unix:///var/run/docker.sock
   script:
     - echo "deploying dev"
+    - cp ./nginx_snippets/* /etc/nginx/snippets/
     - docker login -u $DOCKERHUBUSER -p $DOCKERHUBPASSWORD docker.io
     - docker stop strudel2_backend || echo "Failed to stop existing container"
     - docker ps -a -q | xargs -I{} docker rm  {} || echo "No containers to remove"
@@ -69,6 +71,7 @@ deploy_prod:
     DOCKER_HOST: unix:///var/run/docker.sock
   script:
     - echo "deploying prod"
+    - cp ./nginx_snippets/* /etc/nginx/snippets/
     - docker login -u $DOCKERHUBUSER -p $DOCKERHUBPASSWORD docker.io
     - docker stop strudel2_backend || echo "Failed to stop existing container"
     - docker ps -a -q | xargs -I{} docker rm  {} || echo "No containers to remove"
diff --git a/nginx_snippets/logging.conf b/nginx_snippets/logging.conf
new file mode 100644
index 0000000000000000000000000000000000000000..ff35c09b15fd09601cdfa0d8e4b65e4fce92fc9a
--- /dev/null
+++ b/nginx_snippets/logging.conf
@@ -0,0 +1,6 @@
+location /logging/ {
+        access_log "/var/log/nginx/logging";
+        error_log "/var/log/nginx/logging.err";
+	add_header 'Access-Control-Allow-Origin' $http_origin;
+        return 204;
+}
diff --git a/nginx_snippets/tes.conf b/nginx_snippets/tes.conf
new file mode 100644
index 0000000000000000000000000000000000000000..f108c732dfa5c04f494df8a240274f4dd507b54d
--- /dev/null
+++ b/nginx_snippets/tes.conf
@@ -0,0 +1,40 @@
+location /tes/ {
+	proxy_pass http://localhost:8080/;
+	proxy_http_version 1.1;
+        proxy_set_header Upgrade $http_upgrade;
+        proxy_set_header Connection $connection_upgrade;
+        add_header 'Access-Control-Allow-Origin' $http_origin always;
+        add_header 'Access-Control-Allow-Credentials' 'true' always;
+
+     if ($request_method = 'OPTIONS') {
+        add_header 'Access-Control-Allow-Origin' $http_origin always;
+        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
+        #
+        # Custom headers and headers various browsers *should* be OK with but aren't
+        #
+        add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
+        add_header 'Access-Control-Allow-Credentials' 'true' always;
+        #
+        # Tell client that this pre-flight info is valid for 20 days
+        #
+        add_header 'Access-Control-Max-Age' 1728000;
+        add_header 'Content-Type' 'text/plain; charset=utf-8';
+        add_header 'Content-Length' 0;
+        return 204;
+     }
+     if ($request_method = 'POST') {
+        add_header 'Access-Control-Allow-Origin' $http_origin always;
+        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
+        add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
+        add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
+        add_header 'Access-Control-Allow-Credentials' 'true' always;
+     }
+     if ($request_method = 'GET') {
+        add_header 'Access-Control-Allow-Origin' $http_origin always;
+        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
+        add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
+        add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
+        add_header 'Access-Control-Allow-Credentials' 'true' always;
+     }
+}
+
diff --git a/nginx_snippets/tws.conf b/nginx_snippets/tws.conf
new file mode 100644
index 0000000000000000000000000000000000000000..f68f4962c30a14c728eec3e53020756ad061b01f
--- /dev/null
+++ b/nginx_snippets/tws.conf
@@ -0,0 +1,12 @@
+location / {
+	proxy_pass http://localhost:8090;
+        proxy_set_header Origin '';
+	proxy_set_header Referer /;
+	proxy_http_version 1.1;
+        proxy_set_header Upgrade $http_upgrade;
+        proxy_set_header Connection $connection_upgrade;
+        add_header 'Access-Control-Allow-Origin' $http_origin;
+        add_header 'Access-Control-Allow-Credentials' 'true';
+	client_max_body_size 50M;
+
+}