Usually a proxy is not source-transparent, e.g. it will have it's own address as the client address in the connection to the target server and not the original client address. This is especially true for a CGI-script working as a proxy like in your case. This behavior is independent from using a TLS or a plain TCP connection.
But some (often misconfigured) servers check for an X-Forwarded-For request header to determine the original client IP. This header can be set from inside the proxy, but again this is independent from using TLS or plain TCP.