Nginx SSL conf to access phpMyAdmin
ideanet
nginx-forum at nginx.us
Fri May 7 17:30:18 MSD 2010
Hi,
I have some trouble to configure correctly the access to phpMyAdmin via SSL.
1. problem: when i call the URL https://mydomain.com/phpmyadmin/ I don't have access.
2. problem: If I call the URL https://mydomain.com/phpmyadmin/index.php, I see the login page. I enter the account and password and after I'm redirected to the port 443 (http://mydomain.com:443/phpmyadmin/) with the message:
400 Bad Request
The plain HTTP request was sent to HTTPS port
At this point, if I press the back button of the browser and reload the login page, I can enter on the phpMyAdmin.
I read that is needed the conf "fastcgi_param HTTPS on;", that I have included on my SSL section, but doesn't have any effect...
Here my SSL conf:
[i]server {
listen 443;
server_name mydomain.com;
server_tokens off;
root /var/www/html;
ssl on;
ssl_certificate /etc/nginx/mydomain.crt;
ssl_certificate_key /etc/nginx/mydomain.key;
keepalive_timeout 70;
add_header Front-End-Https on;
client_max_body_size 50M;
fastcgi_param HTTPS on;
## Protect some directory and files
location ~ (^/(app/|includes/|lib/|/pkginfo/|var/|report/config.xml)|/\.svn/|/.hta.+) {
deny all;
}
## Specific SSL log files
access_log /var/log/nginx/ssl.access.log;
error_log /var/log/nginx/ssl.error.log;
## this rewrites all the requests to the maintenance.html
if (-f $document_root/system/maintenance.html) {
rewrite ^(.*)$ /system/maintenance.html last;
break;
}
## Handle all .php files, /downloader and /report
location ~ (\.php|/downloader/?|/report/?)$ {
if ($request_uri ~ /(downloader|report)$){
# no trailing /, redirecting
rewrite ^(.*)$ $1/ permanent;
}
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
if (-e $request_filename) { # check if requested path exists
fastcgi_pass backend;
}
}
## Magento specific configuration
location / {
# set expire headers
if ($request_uri ~* "\.(ico|css|js|gif|jpe?g|png)$") {
expires max;
}
# set fastcgi settings, not allowed in the "if" block
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
fastcgi_param SCRIPT_NAME /index.php;
fastcgi_param HTTPS on;
fastcgi_read_timeout 240;
# rewrite a file not found, pass it to the backend
if (!-f $request_filename) {
fastcgi_pass backend;
break;
}
}
}[/i]
Thank you for any help
Luca
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,83832,83832#msg-83832
More information about the nginx
mailing list