Okay, this is just a really small post to resurrect the blog, but this could be useful as I lost some time looking for an answer to that problem, and that's why I'll write this one in english :)


If you're trying to set up a phpMyAdmin with nginx and an SSL vhost and fastcgi, you should have seen an issue with the urls produced by phpMyAdmin.

phpMyAdmin does not detect that the pages are served through an HTTPS connection and only detect the used port. It will result in urls like "http://phpmyadmin.mydomain.com:443/"

Trying to follow theses urls will result with nginx sending a 400 error like "The plain HTTP request was sent to HTTPS port"


I tried to dig in the code to see how phpMyAdmin was doing to detect HTTPS setups, and one of the few ways was looking for a $_SERVER['HTTPS'] variable set to 'on'. But in fact I didn't have to look for this as alxkbs already provided the (quite simple) solution on his russian blog : http://alexkbs.livejournal.com/208480.html

So, to have working HTTPS setup, you only have to add to snippet in your nginx vhost with your other fastcgi parameters :

fastcgi_param HTTPS on;

phpMyAdmin will then properly detect the SSL setup and produce clean, working urls.

Hope this can save some time for people running into the same problem !