nginx + ssl
Added by Michael Lednev over 14 years ago
Hello.
I've set up redmine on nginx + ssl but somehow it does not want to use https:// urls for POST requests and redirects to http://
How can fix that behavior?
Replies (8)
RE: nginx + ssl - Added by Michael Lednev over 14 years ago
It was set to HTTPS before I asked here. Didn't help.
RE: nginx + ssl - Added by Felix Schäfer over 14 years ago
Do you use passenger or nginx as a reverse proxy?
RE: nginx + ssl - Added by Michael Lednev over 14 years ago
No, I use FCGI. Here's nginx config for redmine:
server { listen 8080; # ssl on; # ssl_protocols SSLv3 TLSv1; # ssl_certificate /etc/nginx/ssl/redmine.crt; # ssl_certificate_key /etc/nginx/ssl/redmine.key; client_max_body_size 100m; client_body_buffer_size 128k; root /var/www/rails/redmine/public; access_log /var/log/nginx/https.log; location ~* \.(ico|css|js|html)$ { root /var/www/rails/redmine/public/; } location ~* /images/ { root /var/www/rails/redmine/public/; } location / { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.fcgi; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param REQUEST_URI $request_uri; fastcgi_param SERVER_NAME $server_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param REMOTE_ADDR $http_forwareded_for; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; } }
RE: nginx + ssl - Added by Felix Schäfer over 14 years ago
Mmh, I use neither cgi nor nginx, so I won't be much help. Somehow your rails environment seems not to notice being called on https, but I can't say why, sorry.
RE: nginx + ssl - Added by Igor Isaenko over 14 years ago
I has forced to work it in proxy mode.
And key point was: "proxy_set_header X-Forwarded-Proto https;"
Here config:
root /opt/redmine/public;
location / {
try_files $uri @fallback;
}
location @fallback {
proxy_pass http://127.0.0.1:3000;
proxy_connect_timeout 15;
proxy_redirect off;
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_set_header X-Forwarded-Proto https;
}
RE: nginx + ssl: solution: a bit hackerish, but works - Added by Lauri Korts-Pärn about 14 years ago
add to nginx.conf
fastcgi_param HTTPS "on";