Merge HTTP & HTTPS Definition In The Same Section

Yaoxing yaoxing.zhang at
Wed Feb 3 10:21:12 MSK 2010

Hi all,
I'm wondering if it's possible to merge the HTTP and HTTPS definition
into one section.
The situation is like this, my server serves both HTTP and HTTPS, both
of them have the same redirecting rules. I don't want to define them in
2 places. I looked up the document and find that it is possible to bind
both HTTP & HTTPS ports in the same "server" section like this:
listen 80;
listen 443 default ssl;
but in this way how can I define stuff related to SSL? Such as
certifications etc.? I tried
if ($server_ports = 443) {
ssl on;
ssl_certificate /etc/ssl/abc.pem;
ssl_certificate_key /etc/ssl/abc.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_prefer_server_ciphers on;
but i'm told that
"ssl" directive is not allowed here
Could anyone tell me how to do it?
Thanks for help.


More information about the nginx mailing list