Доброго времени суток уважаемые.
- Есть домен site.ru (c сертификатом SSL)
- Есть поддомен m.site.ru мобильная версия сайта (без сертификата)
- Есть домен cdn-site.ru для статики - фотки, и др... (с сертификатом).
Пытаюсь получить бесплатный сертификат (letsencrypt.org) для домена m.site.ru, но чтобы его получить нужно подтвердить владение доменом. Т.к. сертификата еще нет, попытался настроить хост на 80-м порту.
При входе на m.site.ru мозила и др. браузеры ругаются
Веб-сайт m.site.ru использует механизм HSTS. Открыть сайт в настоящее время нельзя.....
NGINX почему то вместо мобильной версии открывает
https://m.site.ru и при этом загружает конфиг от статики , домена cdn-site.ru.
В DNS записях для домена site.ru , я добавил A запись "m" и указал IP сервера.
Все домены смотрят на 1 IP адрес. (сервер с выделенным ip).
Пните плз в нужном направлении (замечания по конфигу приветствуются, так же отмечу в конце ваш ответ решением).
Ниже все мои конфиги nginx
Конфиг для статики# Для отображения картинок, если прилетел запрос http://cdn-site.ru/***.jpg
server {
listen 80;
server_name cdn-site.ru;
location ~* \.(?:jpe?g|png)$ {
expires max;
access_log off;
log_not_found off;
root /data/pics/www/;
}
}
# Для отображения картинок, если прилетел запрос https://cdn-site.ru/***.jpg
server {
listen 443 ssl;
server_name cdn-site.ru www.cdn-site.ru;
ssl on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_certificate /etc/nginx/ssl/cdn-site_ru.cert;
ssl_certificate_key /etc/nginx/ssl/cdn-site_ru.key;
ssl_stapling on;
ssl_session_timeout 10m;
ssl_session_cache shared:SSL:2m;
location ~* \.(?:jpe?g|png)$ {
expires max;
access_log off;
log_not_found off;
root /data/pics/www/;
}
}
Настройки для site.ru# Переадресация c site.ru www.site.ru на https://site.ru
server {
listen 80;
server_name site.ru www.site.ru;
return 301 https://site.ru$request_uri;
}
# Переадресация c https://www.site.ru на https://site.ru
server {
listen 443 ssl;
server_name www.site.ru;
ssl_stapling on;
ssl on;
ssl_session_cache shared:SSL:2m;
ssl_certificate /etc/nginx/ssl/site_ru.cert;
ssl_certificate_key /etc/nginx/ssl/site_ru.key;
ssl_session_timeout 24h;
ssl_session_cache shared:SSL:2m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
add_header Strict-Transport-Security "max-age=31536000;";
add_header Public-Key-Pins 'pin-sha256="base64+info1="; max-age=31536000' always;
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options DENY;
return 301 https://site.ru$request_uri;
}
server {
listen 443 ssl;
server_name site.ru default_server;
ssl_stapling on;
ssl on;
ssl_session_cache shared:SSL:2m;
ssl_certificate /etc/nginx/ssl/site_ru.cert;
ssl_certificate_key /etc/nginx/ssl/site_ru.key;
ssl_dhparam /etc/nginx/keys/dhparam.pem;
ssl_session_timeout 24h;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ОАРВВ-RSA-........... (почистил)
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:2m;
add_header Content-Security-Policy-Report-Only "default-src https:;
script-src https: 'unsafe-eval' 'unsafe-inline'; style-src https: 'unsafe-inline';
img-src https: data:; font-src https: data:; report-uri /csp-report";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options DENY;
add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains; preload';
client_body_buffer_size 1K;
client_header_buffer_size 2k;
client_max_body_size 12m;
large_client_header_buffers 2 1k;
root /home/www/site.ru/www;
location / {
index index.php;
try_files $uri $uri/ @siteru;
}
location ~* \.(?:jpe?g|png|gif|png|ico|css|pdf|txt|js)$ {
expires 1y;
access_log off;
log_not_found off;
root /home/www/site.ru/www/;
}
#Routing
location @siteru{
rewrite ^/id(\d+)/?$ /index.php?r=/user/view/id/$1 last;
rewrite ^/logout/?$ /index.php?r=/login/logout last;
rewrite ^/settings/?$ /index.php?r=/my/settings last;
......................
rewrite ^(.*)$ /index.php?r=$uri&$args last;
}
# отключаем обработку запросов к несуществующим статичным файлам
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
access_log off;
log_not_found off;
try_files $uri = 404;
}
location ~* \.(jpg|jpeg|png|ico|css|js|mp3|ogg|wav)$ {
expires 180d;
add_header Cache-Control public,max-age=259200;
}
location ~ \.php {
client_max_body_size 8m;
client_body_buffer_size 128k;
fastcgi_split_path_info ^(.+\.php)(.*)$;
set $fsn /index.php;
if (-f $document_root$fastcgi_script_name){
set $fsn $fastcgi_script_name;
}
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fsn;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fsn;
#fastcgi_param REQUEST_URI $request_url;
}
}
Настройки для m.site.ruserver {
listen 80;
server_name m.site.ru;
client_body_buffer_size 1K;
client_header_buffer_size 2k;
client_max_body_size 12m;
large_client_header_buffers 2 1k;
root /home/www/m.site.ru/www;
location / {
index index.php;
try_files $uri $uri/ @siteru;
}
location ~* \.(?:jpe?g|png|gif|png|ico|css|pdf|txt|js)$ {
expires 1y;
access_log off;
log_not_found off;
root /home/www/m.site.ru/www/;
}
location @siteru{
#Routing
............
}
# отключаем обработку запросов к несуществующим статичным файлам
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
access_log off;
log_not_found off;
try_files $uri = 404;
}
location ~* \.(jpg|jpeg|png|ico|css|js|mp3|ogg|wav)$ {
expires 180d;
add_header Cache-Control public,max-age=259200;
}
location ~ \.php {
client_max_body_size 8m;
client_body_buffer_size 128k;
fastcgi_split_path_info ^(.+\.php)(.*)$;
set $fsn /index.php;
if (-f $document_root$fastcgi_script_name){
set $fsn $fastcgi_script_name;
}
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fsn;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fsn;
}
}