{"id":359,"date":"2025-01-29T18:58:22","date_gmt":"2025-01-29T17:58:22","guid":{"rendered":"https:\/\/rhein-ruhr-informatik.de\/?p=359"},"modified":"2025-03-03T10:55:38","modified_gmt":"2025-03-03T09:55:38","slug":"echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker","status":"publish","type":"post","link":"https:\/\/rhein-ruhr-informatik.de\/en\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/","title":{"rendered":"How to Obtain Real IP through Cloudflare - Nginx Reverse Proxy - Docker"},"content":{"rendered":"<p><strong>Introduction<\/strong><\/p>\n\n\n\n<p>When using Cloudflare as a CDN and DDoS protection service, it acts as an intermediary between your website and its visitors. This means that by default, the IP address visible to your web server is the one belonging to Cloudflare, not the original visitor. This can create issues for logging, analytics, and security policies based on IP addresses. In this article, we will walk through the steps necessary to configure your Nginx server to properly log and use the real IP addresses of visitors when using Cloudflare, even within a Dockerized environment.<\/p>\n\n\n\n<p><strong>Understanding the Problem<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"945\" height=\"124\" src=\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png\" alt=\"\" class=\"wp-image-362\" srcset=\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png 945w, https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10-300x39.png 300w, https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10-768x101.png 768w, https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10-18x2.png 18w\" sizes=\"auto, (max-width: 945px) 100vw, 945px\" \/><\/figure>\n\n\n\n<p>When a visitor connects to your website through Cloudflare, the original IP address is masked by Cloudflare\u2019s own IP. This helps in protecting your server from direct attacks, but it makes it difficult to identify the true visitor IP. To solve this issue, Cloudflare includes headers like <code>X-Forwarded-For<\/code> and <code>CF-Connecting-IP<\/code> , which contain the original IP of the client. Nginx, by default, does not use these headers, so additional configuration is needed.<\/p>\n\n\n\n<p><strong>Prerequisites<\/strong><\/p>\n\n\n\n<p>Before starting, ensure you have:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>On Nginx server installed with the <code>ngx_http_realip_module <\/code>module enabled. This module is necessary to correctly handle the real IP headers.<\/li>\n\n\n\n<li>A basic understanding of Nginx configuration and Docker.<\/li>\n\n\n\n<li>Access to your server\u2019s configuration files.<\/li>\n<\/ol>\n\n\n\n<p><strong>Step 1: Configuring Nginx to Use Real IP Headers<\/strong><\/p>\n\n\n\n<p>To make Nginx recognize the real IP from the headers provided by Cloudflare, you need to modify the configuration. First, ensure that the <code>ngx_http_realip_module <\/code>module is installed. This module is usually included in most Nginx installations by default.<\/p>\n\n\n\n<p>Next, create a file named <code>Cloudflare <\/code>in the <code>\/etc\/nginx\/<\/code> directory with the following content:<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>set_real_ip_from 103.21.244.0\/22;\nset_real_ip_from 103.22.200.0\/22;\n...\nreal_ip_header CF-Verbindungs-IP;\n<\/code><\/pre>\n\n\n\n<p>This file lists all Cloudflare IP ranges and instructs Nginx to trust these IPs and use the CF-Connecting-IP header for the real IP. For future updates, it\u2019s important to regularly check Cloudflare\u2019s IP ranges, as they might change over time.<\/p>\n\n\n\n<p><strong>Step 2: Including the Cloudflare Configuration in Nginx<\/strong><\/p>\n\n\n\n<p>Edit the main Nginx configuration file, usually located at <code>\/etc\/nginx\/nginx.conf<\/code> In the <code>http {}<\/code> section, include the newly created cloudflare configuration file:<\/p>\n<\/div><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>http {\n     include \/etc\/nginx\/cloudflare;\n     ...\n}<\/code><\/pre>\n\n\n\n<p>This ensures that the real IP configuration is applied globally across all your server blocks.<\/p>\n\n\n\n<p><strong>Step 3: Logging Real IP Addresses<\/strong><\/p>\n\n\n\n<p>To include the original visitor IP in your logs, modify the log_format directive in your <code>nginx.conf<\/code>to use the variables <code>$http_cf_connecting_ip<\/code> and <code>$http_x_forwarded_for<\/code> . For example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>log_format main '$remote_addr - $http_cf_connecting_ip &#91;$time_local] \"$request\" '\n    '$status $body_bytes_sent \"$http_referer\" '\n    '\"$http_user_agent\" \"$http_x_forwarded_for\"';<\/code><\/pre>\n\n\n\n<p>This allows you to see both the Cloudflare IP and the original visitor IP in your logs.<\/p>\n\n\n\n<p><strong>Step 4: Applying the Changes<\/strong><\/p>\n\n\n\n<p>To apply the changes, test the Nginx configuration:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For CentOS\/RHEL:<\/li>\n<\/ul>\n\n\n\n<p><code>nginx -t<\/code><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For Ubuntu:<\/li>\n<\/ul>\n\n\n\n<p><code>service nginx restart<\/code><\/p>\n\n\n\n<p><strong>Step 5: Verifying the Configuration<\/strong><\/p>\n\n\n\n<p>Check your website and inspect the Nginx access and error logs (e.g., <code>\/var\/log\/nginx\/access.log<\/code>) to verify that the real visitor IPs are being logged correctly. This step is crucial to ensure that your configuration is working as expected.<\/p>\n\n\n\n<p><strong>Optional: Handling Real IP in a Dockerized Environment<\/strong><\/p>\n\n\n\n<p>If your web application runs inside a Docker container, you need to pass the real IP to the containerized application. Add the following line in your Nginx configuration, right after the <code>fastcgi_pass <\/code>directive:<\/p>\n\n\n\n<p><code>fastcgi_param REMOTE_ADDR $http_x_real_ip;<\/code><\/p>\n\n\n\n<p>This sets the <code>$_SERVER['REMOTE_ADDR']<\/code> variable to the original IP in PHP-based applications.<\/p>\n\n\n\n<p><strong>Common Issues and Troubleshooting<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Incorrect IP in Logs: <\/strong>Double-check that the Cloudflare IP ranges are up-to-date and that the <code>real_ip_header <\/code>directive is correctly set.<\/li>\n\n\n\n<li><strong>Nginx Configuration Errors: <\/strong>Use <code>nginx -t<\/code>to check for syntax errors in the configuration files before restarting Nginx.<\/li>\n\n\n\n<li><strong>Docker Networking Issues:<\/strong> Ensure that Docker\u2019s network mode allows for correct IP forwarding.<\/li>\n<\/ol>\n\n\n\n<p><strong>Conclusion<\/strong><\/p>\n\n\n\n<p>By following the steps outlined in this article, you can ensure that your Nginx server, even when running inside Docker, correctly logs and uses the original visitor IP addresses provided by Cloudflare. This is essential for accurate logging, security configurations, and analytics. With proper configuration, you can leverage the benefits of Cloudflare\u2019s protection without sacrificing the visibility of real user data.<\/p>","protected":false},"excerpt":{"rendered":"<p>Einf\u00fchrung Wenn Sie Cloudflare als CDN- und DDoS-Schutzdienst verwenden, fungiert es als Vermittler zwischen Ihrer Website und ihren Besuchern. Das bedeutet, dass die f\u00fcr Ihren Webserver sichtbare IP-Adresse standardm\u00e4\u00dfig die von Cloudflare ist, nicht die des urspr\u00fcnglichen Besuchers. Dies kann zu Problemen bei der Protokollierung, der Analyse und den auf [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,17,14,16],"tags":[8,9,7],"class_list":["post-359","post","type-post","status-publish","format-standard","hentry","category-articles","category-cloudflare","category-docker","category-nginx","tag-cloudflare","tag-docker","tag-nginx"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker - Rhein-Ruhr-Informatik<\/title>\n<meta name=\"description\" content=\"echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/rhein-ruhr-informatik.de\/en\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker - Rhein-Ruhr-Informatik\" \/>\n<meta property=\"og:description\" content=\"echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker\" \/>\n<meta property=\"og:url\" content=\"https:\/\/rhein-ruhr-informatik.de\/en\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/\" \/>\n<meta property=\"og:site_name\" content=\"Rhein-Ruhr-Informatik\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-29T17:58:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-03T09:55:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png\" \/>\n\t<meta property=\"og:image:width\" content=\"945\" \/>\n\t<meta property=\"og:image:height\" content=\"124\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Rhein-Ruhr-Informatik\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rhein-Ruhr-Informatik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/\"},\"author\":{\"name\":\"Rhein-Ruhr-Informatik\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/person\/29f8c93b2080ee25df204d589a7f2477\"},\"headline\":\"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt &#8211; Nginx Reverse Proxy &#8211; Docker\",\"datePublished\":\"2025-01-29T17:58:22+00:00\",\"dateModified\":\"2025-03-03T09:55:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/\"},\"wordCount\":669,\"publisher\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#organization\"},\"image\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png\",\"keywords\":[\"cloudflare\",\"docker\",\"nginx\"],\"articleSection\":[\"Artikel\",\"Cloudflare\",\"Docker\",\"Nginx\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/\",\"url\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/\",\"name\":\"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker - Rhein-Ruhr-Informatik\",\"isPartOf\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png\",\"datePublished\":\"2025-01-29T17:58:22+00:00\",\"dateModified\":\"2025-03-03T09:55:38+00:00\",\"description\":\"echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker\",\"breadcrumb\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage\",\"url\":\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png\",\"contentUrl\":\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/rhein-ruhr-informatik.de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt &#8211; Nginx Reverse Proxy &#8211; Docker\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#website\",\"url\":\"https:\/\/rhein-ruhr-informatik.de\/\",\"name\":\"Rhein-Ruhr-Informatik\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/rhein-ruhr-informatik.de\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#organization\",\"name\":\"Rhein-Ruhr-Informatik\",\"url\":\"https:\/\/rhein-ruhr-informatik.de\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/02\/logo-2.png\",\"contentUrl\":\"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/02\/logo-2.png\",\"width\":570,\"height\":570,\"caption\":\"Rhein-Ruhr-Informatik\"},\"image\":{\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/person\/29f8c93b2080ee25df204d589a7f2477\",\"name\":\"Rhein-Ruhr-Informatik\",\"sameAs\":[\"https:\/\/rhein-ruhr-informatik.de\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker - Rhein-Ruhr-Informatik","description":"echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/rhein-ruhr-informatik.de\/en\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/","og_locale":"en_US","og_type":"article","og_title":"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker - Rhein-Ruhr-Informatik","og_description":"echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker","og_url":"https:\/\/rhein-ruhr-informatik.de\/en\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/","og_site_name":"Rhein-Ruhr-Informatik","article_published_time":"2025-01-29T17:58:22+00:00","article_modified_time":"2025-03-03T09:55:38+00:00","og_image":[{"width":945,"height":124,"url":"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png","type":"image\/png"}],"author":"Rhein-Ruhr-Informatik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Rhein-Ruhr-Informatik","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#article","isPartOf":{"@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/"},"author":{"name":"Rhein-Ruhr-Informatik","@id":"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/person\/29f8c93b2080ee25df204d589a7f2477"},"headline":"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt &#8211; Nginx Reverse Proxy &#8211; Docker","datePublished":"2025-01-29T17:58:22+00:00","dateModified":"2025-03-03T09:55:38+00:00","mainEntityOfPage":{"@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/"},"wordCount":669,"publisher":{"@id":"https:\/\/rhein-ruhr-informatik.de\/#organization"},"image":{"@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage"},"thumbnailUrl":"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png","keywords":["cloudflare","docker","nginx"],"articleSection":["Artikel","Cloudflare","Docker","Nginx"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/","url":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/","name":"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker - Rhein-Ruhr-Informatik","isPartOf":{"@id":"https:\/\/rhein-ruhr-informatik.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage"},"image":{"@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage"},"thumbnailUrl":"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png","datePublished":"2025-01-29T17:58:22+00:00","dateModified":"2025-03-03T09:55:38+00:00","description":"echte IP \u00fcber Cloudflare erh\u00e4lt - Nginx Reverse Proxy - Docker","breadcrumb":{"@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#primaryimage","url":"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png","contentUrl":"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/10\/image-10.png"},{"@type":"BreadcrumbList","@id":"https:\/\/rhein-ruhr-informatik.de\/2025\/01\/29\/echte-ip-ueber-cloudflare-erhaelt-nginx-reverse-proxy-docker\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/rhein-ruhr-informatik.de\/"},{"@type":"ListItem","position":2,"name":"Wie man eine echte IP \u00fcber Cloudflare erh\u00e4lt &#8211; Nginx Reverse Proxy &#8211; Docker"}]},{"@type":"WebSite","@id":"https:\/\/rhein-ruhr-informatik.de\/#website","url":"https:\/\/rhein-ruhr-informatik.de\/","name":"Rhein-Ruhr-Informatik","description":"","publisher":{"@id":"https:\/\/rhein-ruhr-informatik.de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/rhein-ruhr-informatik.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/rhein-ruhr-informatik.de\/#organization","name":"Rhein-Ruhr-Informatik","url":"https:\/\/rhein-ruhr-informatik.de\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/logo\/image\/","url":"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/02\/logo-2.png","contentUrl":"https:\/\/rhein-ruhr-informatik.de\/wp-content\/uploads\/2024\/02\/logo-2.png","width":570,"height":570,"caption":"Rhein-Ruhr-Informatik"},"image":{"@id":"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/rhein-ruhr-informatik.de\/#\/schema\/person\/29f8c93b2080ee25df204d589a7f2477","name":"Rhein-Ruhr-Informatik","sameAs":["https:\/\/rhein-ruhr-informatik.de"]}]}},"_links":{"self":[{"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/posts\/359","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/comments?post=359"}],"version-history":[{"count":5,"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/posts\/359\/revisions"}],"predecessor-version":[{"id":370,"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/posts\/359\/revisions\/370"}],"wp:attachment":[{"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/media?parent=359"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/categories?post=359"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rhein-ruhr-informatik.de\/en\/wp-json\/wp\/v2\/tags?post=359"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}