Support for both HTTP and HTTPS requests on port 443

Igor Sysoev igor at sysoev.ru
Wed Oct 27 17:50:10 MSD 2010


On Wed, Oct 27, 2010 at 04:42:54PM +0300, Pasi Kärkkäinen wrote:

> Hello,
> 
> I have HTTPS/SSL server configured like this:
> 
> server {
>        listen                  1.2.3.4:443 ssl;
>        server_name             ssl.dom.tld
> 
>        ssl                     on;
>        keepalive_timeout       70;
> 
>        access_log              /var/log/nginx/ssl-access.log;
>        error_log               /var/log/nginx/ssl-error.log;
> 
>        location / {
> 
>                proxy_pass      https://10.0.0.1;
> 
>                proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
>                proxy_set_header Host $host;
>                proxy_set_header X-Real-IP $remote_addr;
>                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
>                proxy_redirect     off;
>        }
> }
> 
> Is it possible to forward also *http* (not https) requests made to port 443 
> to the backend (10.0.0.1) port 443 ?
> 
> Yes I know, it doesn't make any sense basicly, but I have a broken
> application that wants to receive both http and https requests on port 443.
> 
> Is that possible with nginx? 

I did not tested this, but you may try:

        error_page  497 = @no_https;

        location @no_https {
                proxy_pass      https://10.0.0.1;
 
                proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_redirect     off;
        }


-- 
Igor Sysoev
http://sysoev.ru/en/



More information about the nginx mailing list