У меня есть приложение asp net core, работающее на сервере Linux на движке Google Cloud.Домашняя страница отображается отлично, но когда я нажимаю кнопку, чтобы перейти к поддомену, я получаю «Этот сайт не доступен» с «ERR_NAME_NOT_RESOLVED».Я не вижу никаких ошибок в журнале приложений, поэтому я полагаю, что вызов не может даже достичь приложения.
Когда приложение работает на локальной машине Windows, все субдомены могут достичь и полностью работать,
Я попытался запустить приложение на локальной машине с Linux, и результаты остались прежними.Все работает нормально.
На субдомене сервера могут связаться только тогда, когда не запрашивается сертификат SSL для.
Например, когда я создаю поддомен: subdomain.example.com, могу ли я связаться с ним?С этой работой я запросил сертификат для текущего субдомена.Это работает также, и поддомен в настоящее время защищен.Но когда я создаю новый поддомен и повторяю предыдущие шаги, предыдущий поддомен больше не работает, а новый поддомен работает.
Кроме того, все эти субдомены отлично работают, когда не запрашивается сертификат, но тогда субдомены являются «незащищенными».
Сертификаты запрашиваются с помощью GoDaddy.
Это конфигурация Nginx:
server {
server_name example.com *.example.com;
location / {
proxy_pass https://localhost:5001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /activityhub {
proxy_pass https://localhost:5001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /votehub {
proxy_pass https://localhost:5001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
listen 443 ssl;
ssl_certificate /root/letsencrypt/dehydrated/certs/example.com/fullchain.pem;
ssl_certificate_key /root/letsencrypt/dehydrated/certs/example.com/privkey.pem;
}
server {
if ($host = example.com) {
return 301 https://$host$request_uri;
}
}
Идея - это сайт, где пользователи могут создавать разные субдомены для своих организаций.Поэтому, когда пользователь нажимает кнопку, он может создать поддомен: organisation.example.com для отображения своей собственной организации.В настоящий момент приложение создает поддомен на https://organisation.localhost:5001. Теперь это должно автоматически отображаться на веб-сайте с защитой dns, например "https://organisation.example.com.. Домены, запрашиваемые для SSL-сертификата, - example.com и * .example..com
Я ожидаю, что все субдомены будут работать с SSL-сертификатом, а субдомены будут небезопасными или недоступными. Все эти субдомены должны работать с подстановочными знаками.