Hi,
I have an Nginx http proxy server with SSL. What I want to do is:
If a client that has a certificate is trying to access the server's
address, he is to be redirected to our production server, to certain URL.
If a client doesn't have a certificate, he is to be redirected to the
same production server, but a different URL.
The problem is that if the client doesn't have a certificate, he gets
the following error:
400 Bad Request
The SSL certificate error
------------------------------------------------------------------------
nginx/0.6.39
I've tried the following:
server {
listen 8443;
ssl on;
ssl_certificate /etc/httpd/ssl/proxy-ssl.cer;
ssl_certificate_key /etc/httpd/ssl/server.key;
ssl_client_certificate /etc/httpd/ssl/ca-bundle.crt;
ssl_verify_client on
.............................................................................................
.............................................................................................
error_page 400 /400.html;
location = /400.html {
root /usr/share/nginx/html;
but the error page 400 statement is simply ignored. Does anyone have an
idea how can I do it ? I tried to find the 400 error page, thinking
maybe I can make the redirect there, but it is simply not to be found.
P.S. my programming/scripting skills aren't any.....
Typo ...... error_page 400 http://URL ZZZ wrote:> Hi, > > I have an Nginx http proxy server with SSL. What I want to do is: > > If a client that has a certificate is trying to access the server's > address, he is to be redirected to our production server, to certain URL. > If a client doesn't have a certificate, he is to be redirected to the > same production server, but a different URL. > The problem is that if the client doesn't have a certificate, he gets > the following error: > > 400 Bad Request > > The SSL certificate error > > ------------------------------------------------------------------------ > nginx/0.6.39 > > > > > > I've tried the following: > > server { > listen 8443; > > ssl on; > ssl_certificate /etc/httpd/ssl/proxy-ssl.cer; > ssl_certificate_key /etc/httpd/ssl/server.key; > ssl_client_certificate /etc/httpd/ssl/ca-bundle.crt; > ssl_verify_client on > ............................................................................................. > ............................................................................................. > > error_page 400 /400.html; > location = /400.html { > root /usr/share/nginx/html; > > but the error page 400 statement is simply ignored. Does anyone have an > idea how can I do it ? I tried to find the 400 error page, thinking > maybe I can make the redirect there, but it is simply not to be found. > > > P.S. my programming/scripting skills aren't any..... > _______________________________________________ > CentOS mailing list > CentOS at centos.org > http://lists.centos.org/mailman/listinfo/centos >