Explorer
/proc/thread-self/root/tmp/nginx-active.conf
← Zurück ↓ Download
# configuration file /etc/nginx/nginx.conf:
user www-data;
worker_processes auto;
pid /run/nginx.pid;
error_log /var/log/nginx/error.log;
include /etc/nginx/modules-enabled/*.conf;

events {
	worker_connections 768;
	# multi_accept on;
}

http {

	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	types_hash_max_size 2048;
	# server_tokens off;

	# server_names_hash_bucket_size 64;
	# server_name_in_redirect off;

	include /etc/nginx/mime.types;
	default_type application/octet-stream;

	##
	# SSL Settings
	##

	ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
	ssl_prefer_server_ciphers on;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;

	##
	# Gzip Settings
	##

	gzip 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 application/x-javascript image/svg+xml;

	##
	# Virtual Host Configs
	##

	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}


#mail {
#	# See sample authentication script at:
#	# http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
#
#	# auth_http localhost/auth.php;
#	# pop3_capabilities "TOP" "USER";
#	# imap_capabilities "IMAP4rev1" "UIDPLUS";
#
#	server {
#		listen     localhost:110;
#		protocol   pop3;
#		proxy      on;
#	}
#
#	server {
#		listen     localhost:143;
#		protocol   imap;
#		proxy      on;
#	}
#}
stream {
    server {
        listen 100.112.250.41:7687 ssl;
        ssl_certificate /etc/letsencrypt/live/neo4j.agentsolutions-mallorca.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/neo4j.agentsolutions-mallorca.com/privkey.pem;
        proxy_pass 127.0.0.1:7687;
        proxy_connect_timeout 10s;
        proxy_timeout 300s;
    }
}

# configuration file /etc/nginx/modules-enabled/50-mod-stream.conf:
load_module modules/ngx_stream_module.so;

# configuration file /etc/nginx/mime.types:

types {
    text/html                                        html htm shtml;
    text/css                                         css;
    text/xml                                         xml;
    image/gif                                        gif;
    image/jpeg                                       jpeg jpg;
    application/javascript                           js;
    application/atom+xml                             atom;
    application/rss+xml                              rss;

    text/mathml                                      mml;
    text/plain                                       txt;
    text/vnd.sun.j2me.app-descriptor                 jad;
    text/vnd.wap.wml                                 wml;
    text/x-component                                 htc;

    image/avif                                       avif;
    image/png                                        png;
    image/svg+xml                                    svg svgz;
    image/tiff                                       tif tiff;
    image/vnd.wap.wbmp                               wbmp;
    image/webp                                       webp;
    image/x-icon                                     ico;
    image/x-jng                                      jng;
    image/x-ms-bmp                                   bmp;

    font/woff                                        woff;
    font/woff2                                       woff2;

    application/java-archive                         jar war ear;
    application/json                                 json;
    application/mac-binhex40                         hqx;
    application/msword                               doc;
    application/pdf                                  pdf;
    application/postscript                           ps eps ai;
    application/rtf                                  rtf;
    application/vnd.apple.mpegurl                    m3u8;
    application/vnd.google-earth.kml+xml             kml;
    application/vnd.google-earth.kmz                 kmz;
    application/vnd.ms-excel                         xls;
    application/vnd.ms-fontobject                    eot;
    application/vnd.ms-powerpoint                    ppt;
    application/vnd.oasis.opendocument.graphics      odg;
    application/vnd.oasis.opendocument.presentation  odp;
    application/vnd.oasis.opendocument.spreadsheet   ods;
    application/vnd.oasis.opendocument.text          odt;
    application/vnd.openxmlformats-officedocument.presentationml.presentation
                                                     pptx;
    application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
                                                     xlsx;
    application/vnd.openxmlformats-officedocument.wordprocessingml.document
                                                     docx;
    application/vnd.wap.wmlc                         wmlc;
    application/wasm                                 wasm;
    application/x-7z-compressed                      7z;
    application/x-cocoa                              cco;
    application/x-java-archive-diff                  jardiff;
    application/x-java-jnlp-file                     jnlp;
    application/x-makeself                           run;
    application/x-perl                               pl pm;
    application/x-pilot                              prc pdb;
    application/x-rar-compressed                     rar;
    application/x-redhat-package-manager             rpm;
    application/x-sea                                sea;
    application/x-shockwave-flash                    swf;
    application/x-stuffit                            sit;
    application/x-tcl                                tcl tk;
    application/x-x509-ca-cert                       der pem crt;
    application/x-xpinstall                          xpi;
    application/xhtml+xml                            xhtml;
    application/xspf+xml                             xspf;
    application/zip                                  zip;

    application/octet-stream                         bin exe dll;
    application/octet-stream                         deb;
    application/octet-stream                         dmg;
    application/octet-stream                         iso img;
    application/octet-stream                         msi msp msm;

    audio/midi                                       mid midi kar;
    audio/mpeg                                       mp3;
    audio/ogg                                        ogg;
    audio/x-m4a                                      m4a;
    audio/x-realaudio                                ra;

    video/3gpp                                       3gpp 3gp;
    video/mp2t                                       ts;
    video/mp4                                        mp4;
    video/mpeg                                       mpeg mpg;
    video/ogg                                        ogv;
    video/quicktime                                  mov;
    video/webm                                       webm;
    video/x-flv                                      flv;
    video/x-m4v                                      m4v;
    video/x-matroska                                 mkv;
    video/x-mng                                      mng;
    video/x-ms-asf                                   asx asf;
    video/x-ms-wmv                                   wmv;
    video/x-msvideo                                  avi;
}

# configuration file /etc/nginx/sites-enabled/agents.agentsolutions-mallorca.com:
server {
    server_name agents.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:5004;
        proxy_http_version 1.1;
        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;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/agents.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/agents.agentsolutions-mallorca.com/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 = agents.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name agents.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/letsencrypt/options-ssl-nginx.conf:
# This file contains important security parameters. If you modify this file
# manually, Certbot will be unable to automatically provide future security
# updates. Instead, Certbot will print and log an error message with a path to
# the up-to-date file that you will need to refer to when manually updating
# this file. Contents are based on https://ssl-config.mozilla.org

ssl_session_cache shared:le_nginx_SSL:10m;
ssl_session_timeout 1440m;
ssl_session_tickets off;

ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;

ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";

# configuration file /etc/nginx/sites-enabled/agentsolutions-mallorca.com:
server {
    listen 80;
    server_name agentsolutions-mallorca.com;
    location /test/ {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        alias /var/www/html/test/;
        index index.html;
    }

    location /downloads/donna/ {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        alias /var/www/donna-releases/;
        autoindex on;
    }

    location / {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        proxy_pass http://127.0.0.1:5000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
server {
    listen 443 ssl;
    server_name agentsolutions-mallorca.com;
    ssl_certificate /etc/letsencrypt/live/agentsolutions-mallorca.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/agentsolutions-mallorca.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    location /test/ {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        alias /var/www/html/test/;
        index index.html;
    }

    location /downloads/donna/ {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        alias /var/www/donna-releases/;
        autoindex on;
    }

    location / {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        proxy_pass http://127.0.0.1:5000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

# configuration file /etc/nginx/sites-enabled/buzz.agentsolutions-mallorca.com:
server {
    listen 80;
    listen [::]:80;

    server_name buzz.agentsolutions-mallorca.com;

    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name buzz.agentsolutions-mallorca.com;

    ssl_certificate /etc/letsencrypt/live/buzz.agentsolutions-mallorca.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/buzz.agentsolutions-mallorca.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    client_max_body_size 500M;

    location = /health {
        return 404;
    }

    location = /_readiness {
        return 404;
    }

    location = /_liveness {
        return 404;
    }

    location / {
        proxy_pass http://127.0.0.1:5005;
        proxy_http_version 1.1;

        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;

        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        proxy_connect_timeout 10s;
        proxy_read_timeout 86400s;
        proxy_send_timeout 86400s;
    }
}

# configuration file /etc/nginx/sites-enabled/case.agentsolutions-mallorca.com:
server {
    server_name case.agentsolutions-mallorca.com;

    client_max_body_size 50M;

    location / {
        proxy_pass http://127.0.0.1:8651;
        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;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/case.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/case.agentsolutions-mallorca.com/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 = case.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    server_name case.agentsolutions-mallorca.com;

    listen 80;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/content-extraction.agentsolutions-mallorca.com:
server {
    server_name content-extraction.agentsolutions-mallorca.com;
    client_max_body_size 20M;

    location /admin/ {
        deny all;
        return 403;
    }

    location / {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        proxy_pass http://127.0.0.1:8100;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_read_timeout 120;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/content-extraction.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/content-extraction.agentsolutions-mallorca.com/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 = content-extraction.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name content-extraction.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/default:
##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# https://www.nginx.com/resources/wiki/start/
# https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/
# https://wiki.debian.org/Nginx/DirectoryStructure
#
# In most cases, administrators will remove this file from sites-enabled/ and
# leave it as reference inside of sites-available where it will continue to be
# updated by the nginx packaging team.
#
# This file will automatically load configuration files provided by other
# applications, such as Drupal or Wordpress. These applications will be made
# available underneath a path with that package name, such as /drupal8.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##

# Default server configuration
#
server {
	listen 80 default_server;
	listen [::]:80 default_server;

	# SSL configuration
	#
	# listen 443 ssl default_server;
	# listen [::]:443 ssl default_server;
	#
	# Note: You should disable gzip for SSL traffic.
	# See: https://bugs.debian.org/773332
	#
	# Read up on ssl_ciphers to ensure a secure configuration.
	# See: https://bugs.debian.org/765782
	#
	# Self signed certs generated by the ssl-cert package
	# Don't use them in a production server!
	#
	# include snippets/snakeoil.conf;

	root /var/www/html;

	# Add index.php to the list if you are using PHP
	index index.html index.htm index.nginx-debian.html;

	server_name _;

	location / {
		# First attempt to serve request as file, then
		# as directory, then fall back to displaying a 404.
		try_files $uri $uri/ =404;
	}

	# pass PHP scripts to FastCGI server
	#
	#location ~ \.php$ {
	#	include snippets/fastcgi-php.conf;
	#
	#	# With php-fpm (or other unix sockets):
	#	fastcgi_pass unix:/run/php/php7.4-fpm.sock;
	#	# With php-cgi (or other tcp sockets):
	#	fastcgi_pass 127.0.0.1:9000;
	#}

	# deny access to .htaccess files, if Apache's document root
	# concurs with nginx's one
	#
	#location ~ /\.ht {
	#	deny all;
	#}
}


# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
#	listen 80;
#	listen [::]:80;
#
#	server_name example.com;
#
#	root /var/www/example.com;
#	index index.html;
#
#	location / {
#		try_files $uri $uri/ =404;
#	}
#}

# configuration file /etc/nginx/sites-enabled/explorer.agentsolutions-mallorca.com:
server {
    server_name explorer.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:5058;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }

    listen 443 ssl;
    ssl_certificate /etc/letsencrypt/live/explorer.agentsolutions-mallorca.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/explorer.agentsolutions-mallorca.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
server {
    if ($host = explorer.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    }
    listen 80;
    server_name explorer.agentsolutions-mallorca.com;
    return 404;
}

# configuration file /etc/nginx/sites-enabled/graphiti:
server {
    server_name graphiti.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:8644;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/graphiti.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/graphiti.agentsolutions-mallorca.com/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 = graphiti.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name graphiti.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/hermes.agentsolutions-mallorca.com:
server {
    listen 80;
    server_name hermes.agentsolutions-mallorca.com;

    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name hermes.agentsolutions-mallorca.com;

    ssl_certificate /etc/letsencrypt/live/hermes.agentsolutions-mallorca.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/hermes.agentsolutions-mallorca.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    location / {
        proxy_pass http://127.0.0.1:9119;
        proxy_http_version 1.1;

        proxy_set_header Host 127.0.0.1:9119;
        proxy_set_header Origin http://127.0.0.1:9119;
        proxy_set_header X-Real-IP 127.0.0.1;
        proxy_set_header X-Forwarded-For 127.0.0.1;
        proxy_set_header X-Forwarded-Proto https;

        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        proxy_read_timeout 3600;
        proxy_send_timeout 3600;
    }
}

# configuration file /etc/nginx/sites-enabled/ki-automation.agentsolutions-mallorca.com:
server {
    server_name ki-automation.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:5003;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection upgrade;
        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;
        proxy_connect_timeout 60;
        proxy_read_timeout 86400;
        proxy_send_timeout 86400;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/ki-automation.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/ki-automation.agentsolutions-mallorca.com/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 = ki-automation.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    server_name ki-automation.agentsolutions-mallorca.com;
    listen 80;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/leads.agentsolutions-mallorca.com:
server {
    server_name leads.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:3300;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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_cache_bypass $http_upgrade;
        proxy_read_timeout 86400;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/leads.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/leads.agentsolutions-mallorca.com/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 = leads.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name leads.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/litellm.agentsolutions-mallorca.com:
server {
    server_name litellm.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:4000;
        proxy_http_version 1.1;
        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;
        proxy_connect_timeout 60;
        proxy_read_timeout 300;
        proxy_send_timeout 300;
    }

    listen 443 ssl;
    ssl_certificate /etc/letsencrypt/live/litellm.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/litellm.agentsolutions-mallorca.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

}
server {
    if ($host = litellm.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    }
    server_name litellm.agentsolutions-mallorca.com;
    listen 80;
    return 404;


}

# configuration file /etc/nginx/sites-enabled/mirofish:
server {
    server_name mirofish.agentsolutions-mallorca.com;

    auth_basic "MiroFish";
    auth_basic_user_file /etc/nginx/.htpasswd;

    location / {
        proxy_pass http://localhost:3104;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_read_timeout 300s;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/mirofish.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/mirofish.agentsolutions-mallorca.com/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 = mirofish.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name mirofish.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/n8n.agentsolutions-mallorca.com:
server {
    server_name n8n.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:5678;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_cache_bypass $http_upgrade;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/n8n.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/n8n.agentsolutions-mallorca.com/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 = n8n.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name n8n.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/neo4j.agentsolutions-mallorca.com:
server {
    server_name neo4j.agentsolutions-mallorca.com;

    auth_basic "Neo4j";
    auth_basic_user_file /etc/nginx/.htpasswd;

    location / {
        proxy_pass http://localhost:7474;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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;
        proxy_read_timeout 300s;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/neo4j.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/neo4j.agentsolutions-mallorca.com/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 = neo4j.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name neo4j.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/portainer.agentsolutions-mallorca.com:
server {
    server_name portainer.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:9000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/portainer.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/portainer.agentsolutions-mallorca.com/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 = portainer.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    server_name portainer.agentsolutions-mallorca.com;

    listen 80;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/projects.agentsolutions-mallorca.com:
server {
    listen 80;
    server_name projects.agentsolutions-mallorca.com;
    location / {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        proxy_pass http://127.0.0.1:5001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
server {
    listen 443 ssl;
    server_name projects.agentsolutions-mallorca.com;
    ssl_certificate /etc/letsencrypt/live/projects.agentsolutions-mallorca.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/projects.agentsolutions-mallorca.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    location / {
        auth_basic "Agent Solutions";
        auth_basic_user_file /etc/nginx/.htpasswd;
        proxy_pass http://127.0.0.1:5001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

# configuration file /etc/nginx/sites-enabled/reports.agentsolutions-mallorca.com:
server {
    server_name reports.agentsolutions-mallorca.com;

    auth_basic "Agent Solutions";
    auth_basic_user_file /etc/nginx/.htpasswd;

    location / {
        proxy_pass http://127.0.0.1:5055;
        proxy_set_header Host $host;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/reports.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/reports.agentsolutions-mallorca.com/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 = reports.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name reports.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/social-media-agent:
server {
    server_name sma.agentsolutions-mallorca.com;
    client_max_body_size 20M;

    # AA-019 Gate 2: authenticated SMA-Core read API only.
    # proxy_pass has no URI component, so /sma-api/... is preserved.
    location ^~ /sma-api/ {
        proxy_pass http://127.0.0.1:8765;
        proxy_http_version 1.1;
        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 X-Request-ID $request_id;
        proxy_read_timeout 45s;
        client_max_body_size 64k;
    }

    location = /login {
        proxy_pass http://127.0.0.1:8765;
        proxy_http_version 1.1;
        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 X-Request-ID $request_id;
        client_max_body_size 64k;
    }

    location = /logout {
        proxy_pass http://127.0.0.1:8765;
        proxy_http_version 1.1;
        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 X-Request-ID $request_id;
        client_max_body_size 64k;
    }

    # H-009: rein lesende statische Entwicklungsvorschau (H-008-Artefakte).
    # Kein Proxy, keine fachliche Logik, nur GET auf statische Dateien.
    location ^~ /preview/h008/ {
        alias /var/www/sma-preview-h008/;
        index index.html;
        autoindex off;
        add_header Cache-Control "no-store" always;
        add_header X-Robots-Tag "noindex, nofollow" always;
    }

    location / {
        proxy_pass http://127.0.0.1:8652;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
    }


    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/sma.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/sma.agentsolutions-mallorca.com/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 = sma.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    server_name sma.agentsolutions-mallorca.com;
    listen 80;
    return 404; # managed by Certbot


}

# configuration file /etc/nginx/sites-enabled/social.agentsolutions-mallorca.com:
server {
    server_name social.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:3200;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        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_cache_bypass $http_upgrade;
        client_max_body_size 10M;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/social.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/social.agentsolutions-mallorca.com/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 = social.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name social.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/solar.agentsolutions-mallorca.com:
server {
    server_name solar.agentsolutions-mallorca.com;

    location /.well-known/acme-challenge/ {
        root /var/www/html;
    }

    location = /landingpage-preview {
        return 301 /landingpage-preview/;
    }

    location = /landingpage-preview/ {
        auth_basic "Solar Landingpage Vorschau";
        auth_basic_user_file /etc/nginx/.htpasswd-solar-preview;
        rewrite ^ /landingpage-preview/index.html last;
        add_header X-Robots-Tag "noindex, nofollow, noarchive" always;
        add_header Cache-Control "private, no-store" always;
    }

    location ^~ /landingpage-preview/ {
        auth_basic "Solar Landingpage Vorschau";
        auth_basic_user_file /etc/nginx/.htpasswd-solar-preview;
        alias /opt/struktur/solar-landingpage-preview/;
        index index.html;
        autoindex off;
        add_header X-Robots-Tag "noindex, nofollow, noarchive" always;
        add_header Cache-Control "private, no-store" always;
    }

    location = /website-preview {
        auth_basic "Website-Vorschau";
        auth_basic_user_file /etc/nginx/.htpasswd-solar-preview;
        return 301 /website-preview/;
    }

    location = /website-preview/ {
        auth_basic "Website-Vorschau";
        auth_basic_user_file /etc/nginx/.htpasswd-solar-preview;
        rewrite ^ /website-preview/index.html last;
        add_header X-Robots-Tag "noindex, nofollow, noarchive" always;
        add_header Cache-Control "private, no-store" always;
    }

    location ^~ /website-preview/ {
        auth_basic "Website-Vorschau";
        auth_basic_user_file /etc/nginx/.htpasswd-solar-preview;
        alias /opt/struktur/solar-website-preview/;
        autoindex off;
        add_header X-Robots-Tag "noindex, nofollow, noarchive" always;
        add_header Cache-Control "private, no-store" always;
    }

    location / {
        proxy_pass http://127.0.0.1:5091;
        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;
    }

    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/solar.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/solar.agentsolutions-mallorca.com/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 = solar.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    listen [::]:80;
    server_name solar.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}

# configuration file /etc/nginx/sites-enabled/vento.agentsolutions-mallorca.com:
server {
    server_name vento.agentsolutions-mallorca.com;

    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;

    # Oeffentlich: Health-Check (kein Datenzugriff)
    location = /health {
        proxy_pass http://127.0.0.1:8650;
    }

    # Oeffentlich: WhatsApp-Webhook (GET-Verify fuer Meta + POST;
    # POST wird in der App per Signatur/Shared-Secret geprueft)
    location = /webhook/whatsapp {
        proxy_pass http://127.0.0.1:8650;
    }

    # Alles andere (u.a. /customers, /docs, /openapi.json): Basic Auth
    location / {
        auth_basic "Vento - Zugang erforderlich";
        auth_basic_user_file /etc/nginx/.htpasswd;
        proxy_pass http://127.0.0.1:8650;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/vento.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/vento.agentsolutions-mallorca.com/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 = vento.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

    server_name vento.agentsolutions-mallorca.com;

    listen 80;
    return 404; # managed by Certbot
}

# configuration file /etc/nginx/sites-enabled/vpsverwaltung.agentsolutions-mallorca.com:
server {
    server_name vpsverwaltung.agentsolutions-mallorca.com;

    location / {
        proxy_pass http://127.0.0.1:5002;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection upgrade;
        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;
        proxy_connect_timeout 60;
        proxy_read_timeout 86400;
        proxy_send_timeout 86400;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/vpsverwaltung.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/vpsverwaltung.agentsolutions-mallorca.com/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 = vpsverwaltung.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    server_name vpsverwaltung.agentsolutions-mallorca.com;
    listen 80;
    return 404; # managed by Certbot


}
# configuration file /etc/nginx/sites-enabled/werkstandard.agentsolutions-mallorca.com:
server {
    server_name werkstandard.agentsolutions-mallorca.com;

    location / {
        client_max_body_size 50m;
        proxy_pass http://127.0.0.1:3013;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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;
        proxy_connect_timeout 60;
        proxy_read_timeout 86400;
        proxy_send_timeout 86400;
    }

    listen 443 ssl;
    ssl_certificate /etc/letsencrypt/live/werkstandard.agentsolutions-mallorca.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/werkstandard.agentsolutions-mallorca.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
server {
    if ($host = werkstandard.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    }
    server_name werkstandard.agentsolutions-mallorca.com;
    listen 80;
    return 404;
}

# configuration file /etc/nginx/sites-enabled/worker.agentsolutions-mallorca.com:
server {
    listen 80;
    server_name worker.agentsolutions-mallorca.com;

    location ^~ /.well-known/acme-challenge/ {
        root /var/www/certbot;
    }

    location / {
        return 301 https://$host$request_uri;
    }
}

server {
    listen 443 ssl;
    server_name worker.agentsolutions-mallorca.com;

    ssl_certificate /etc/letsencrypt/live/worker.agentsolutions-mallorca.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/worker.agentsolutions-mallorca.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    location / {
        proxy_pass http://127.0.0.1:8088;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host 127.0.0.1;
        proxy_set_header Origin "http://127.0.0.1";
        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;
        proxy_connect_timeout 60;
        proxy_read_timeout 86400;
        proxy_send_timeout 86400;
    }
}

# configuration file /etc/nginx/sites-enabled/youtube.agentsolutions-mallorca.com:
server {
    server_name youtube.agentsolutions-mallorca.com;
    client_max_body_size 50M;
    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_read_timeout 120;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/youtube.agentsolutions-mallorca.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/youtube.agentsolutions-mallorca.com/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 = youtube.agentsolutions-mallorca.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name youtube.agentsolutions-mallorca.com;
    return 404; # managed by Certbot


}