HTTP headers are the core part of the HTTP requests and responses, and they carry information about the client browser, the requested page, the server and more.
Here are the main headers which can be used while using Cloudjiffy environments for deploying my apps:
Header | Description | Value |
---|---|---|
host | this request-header field specifies the Internet host and port number of the resource being requested, as obtained from the original URL given by the user or referring resource |
{environment_name}.{hoster_domain}: |
x-forwarded-proto | the originating protocol of an HTTP request | http/https |
x-real-ip | ending IP address of a client connecting to a web server | xxx.x.x.x (IP) |
x-forwarded-for | the originating IP addresses of a client connecting to a web server through an HTTP proxy or load balancer | xxx.x.x.x, xx.xx.xxx.xx (IPs) |
x-host | the originating domain name of the server (for virtual hosting) and optionally the TCP port number | {environment_name}.{hoster_domain} |
x-uri | a string of characters used to identify a name or a web resource | / |
In Cloudjiffy I should take into consideration the following scenarios concerning environment topology:
- Only 1 application server instance
- Balancer (as an entry point) and application server(s)
- Only 1 application server instance with Public IP
- Balancer (as an entry point) with Public IP and application server(s)
Topology | Supported headers |
---|---|
1 app server | host x-forwarded-proto x-real-ip x-forwarded-for x-host |
balancer and app server(s) | host x-real-ip x-host x-forwarded-for x-uri x-forwarded-proto |
1 app server with Public IP | host |
balancer with Public IP and app server(s) | host x-real-ip x-host x-uri |