question: Provide two different Nginx configuration examples for setting up a reverse proxy, each with at least two placeholders for different server names or IP addresses. Each configuration example should be exactly two paragraphs long. Separate the two examples like so:
  Configuration Example 1
  ******
  Configuration Example 2
answer: Configuration Example 1  
  ******  
  In the first Nginx configuration example, we set up a basic reverse proxy that forwards incoming requests to two different backend servers based on the request URI. Begin by defining an `http` block where we set up an upstream server group named `backend_servers`. Within this group, specify two server placeholders: `server1_placeholder` and `server2_placeholder`, which represent different IP addresses or domain names of your backend servers. The `server` block listens on port 80 and uses the `location` directive to determine how requests are routed. For example, requests to `/api` are proxied to `backend_servers` using the `proxy_pass` directive, which directs traffic to the upstream group.
  
  In the `server` block, you can further customize the reverse proxy behavior by setting headers or adjusting timeouts. For instance, use `proxy_set_header Host $host;` to ensure the host header is passed to the backend servers. Additionally, `proxy_read_timeout 90;` can be used to specify the time Nginx will wait for a response from the upstream server. This configuration ensures that your reverse proxy setup can efficiently distribute requests between two backend servers, increasing availability and enabling load balancing.
  
  Configuration Example 2  
  ******  
  The second Nginx configuration example demonstrates setting up a reverse proxy with SSL termination for two different subdomains, each pointing to a different backend server. Begin by creating an `http` block and defining two `server` blocks. The first `server` block listens on port 443 and handles requests for `subdomain1_placeholder`. Inside this block, configure SSL with `ssl_certificate` and `ssl_certificate_key` directives, pointing to your SSL certificate files. The `location` directive routes requests to `server1_placeholder` using `proxy_pass`. Similarly, the second `server` block handles requests for `subdomain2_placeholder`, forwarding them to `server2_placeholder`.
  
  Within each `server` block, additional configurations can be added for security and performance. For instance, use `add_header X-Content-Type-Options nosniff;` and `add_header X-Frame-Options SAMEORIGIN;` to enhance security by preventing MIME type sniffing and clickjacking. You can also optimize performance with `proxy_cache` directives to cache responses from the backend servers. This setup allows you to efficiently manage traffic for different subdomains with secure SSL termination, directing them to specific backend servers while maintaining high performance and security standards.