Создал сервер phpMyAdmin и универсальное правило по которому со всех поддоменов "pma" всех доменов идет аллиас на сервер с phpMyAdmin. У каждого домена/сервера есть SSL сертификат выданный на сам домен и все его поддомены.
Сейчас SSL на pma стоит от 1го домена и настроен как обычно, как настроить сервер pma что бы он выдавал сертификат в зависимjсти от домена с которого к нему обращаются ?
$server_name не работает в директиве SSL.
pma.domen0.ru = SSL domen0.ru
pma.domen1.ru = SSL domen1.ru
pma.domen2.ru = SSL domen2.ru
pma.domen*.ru = SSL domen*.ru
server {
listen 443 ssl http2;
listen [::]:443 ssl http2 ipv6only=on;
server_name "~^pma\.(.*)$";
access_log /web/pma/acces.log;
error_log /web/pma/error.log error;
#SSL
include /etc/nginx/snippets/ssl.conf;
ssl_certificate /etc/letsencrypt/live/domen1.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domen1.ru/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/domen1.ru/fullchain.pem;
location ^~ /.well-known/acme-challenge {
default_type "text/plain";
alias /var/www/letsencrypt/.well-known/acme-challenge;
}
#увеличение размера файла и ожидания
client_max_body_size 512m;
proxy_connect_timeout 1200;
proxy_send_timeout 1200;
proxy_read_timeout 1200;
#точка входа в phpMyadmin
location / {
alias /usr/share/phpmyadmin/;
location ~ \.php$ {
try_files $uri = 404;
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_read_timeout 3600;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
access_log off;
log_not_found off;
expires 1M;
}
index index.php index.html index.htm;
}
#ошибки
error_page 404 /404.html;
location = /404.html {
internal;
root /web/errors/;
}
error_page 400 500 502 503 504 /50x.html;
location /50x.html {
internal;
root /web/errors/;
}
}