This library finds the public address of the running server. This can 
be used to construct URLs that are visible from anywhere on the 
internet. This module was introduced to deal with OpenID, where a 
request is redirected to the OpenID server, which in turn redirects to 
our server (see http_openid.pl).
The address is established from the settings http:public_host 
and
http:public_port if provided. Otherwise it is deduced from 
the request.
true (default false), try to replace a 
local hostname by a world-wide accessible name.This predicate performs the following steps to find the host and port:
http:public_host and http:public_portX-Forwarded-Host header, which applies if this 
server runs behind a proxy.Host header, which applies for HTTP 1.1 if we 
are contacted directly.| Request | is the current request. If it is left unbound, and the request is needed, it is obtained with http_current_request/1. |