Поскольку я не могу позволить себе покупать подстановочный ssl-сертификат, я хочу приобрести еще один ssl-сертификат для m.mysite.com, поэтому mysite.com и www.mysite.com будут иметь другой ssl-сертификат, чем m.mysite.com
Будет ли это создавать какие-либо сложности, если я размещу и mysite.com, и m.mysite.com на одном сервере (с одним и тем же IP-адресом), или я должен разместить m.mysite.com на другом IP-адресе, чтобы ssl работал правильно?
Это серверный блок, который я использую для приема запросов на порт 403:
#
# SITE SSL
#
server {
listen 443 ssl;
ssl_certificate /srv/ssl/mysite.com.crt;
ssl_certificate_key /srv/ssl/mysite.com.key;
#enables all versions of TLS, but not SSLv2 or 3 which are weak, deprecated.
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
#Disables all weak ciphers
ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
ssl_prefer_server_ciphers on;
server_name mysite.com www.mysite.com;
error_log /var/www/mysite.com/public_html/error.log error;
access_log off;
location / {
root /var/www/mysite.com/public_html;
index index.php index.html index.htm;
try_files $uri $uri/ /index.php;
}
error_page 404 /404.html;
location = /404.html {
root /var/www/mysite.com/public_html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/mysite.com/public_html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root /var/www/mysite.com/public_html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS on;
fastcgi_param HTTP_SCHEME https;
include fastcgi_params;
try_files $uri =404;
}
}
Это зависит от используемого вами веб-сервера. Убедитесь, что он поддерживает SNI (Индикация имени сервера) (что имеет место, вероятно, на всех соответствующих веб-серверах) или используйте обратный прокси, такой как nginx или haproxy, для обработки SSL / TLS-соединения и перенаправления трафика на ваш внутренний сервер (-ы).
Если ваш сервер поддерживает SNI - вы сможете установить два сертификата SSL на один IP-адрес. В противном случае вам понадобится либо Wildcard SSL-сертификат, либо переместите субдомен в другую учетную запись, назначьте ему другой IP-адрес (отличный от первой учетной записи [основного домена]) и установите свой SSL-сертификат. Во втором случае вам также придется отредактировать зону DNS для вашего domain.com и изменить запись A для субдомана, чтобы она указывала на новый выделенный IP-адрес для второй учетной записи.