Без какой-либо конфигурации с моей стороны, nginx обслуживает веб-сайт для www. а также домен, который я установил server_name
. Я понятия не имею, как это происходит, но я хотел бы отключить это.
Значение: я настроил сервер subdomain.example.com
, который работает нормально, но www.subdomain.example.com
также работает!
Это мой nginx conf:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
include /etc/nginx/conf.d/*.conf;
}
А затем файл примера из /etc/nginx/conf.d/
:
server {
listen 80;
server_name subdomain.example.com;
location / {
proxy_pass http://656.655.665.655:3277;
}
}
Я проверил, и у меня нет подстановочных знаков ни в одном из других конфигов.
Когда я добавляю:
server {
server_name www.subdomain.example.com;
return 301 $scheme://subdomain.example.com$request_uri;
}
Это работает, и www. перенаправляется, но мне не нравится это решение, по разным причинам я хотел бы просто отключить www. полностью.
Есть идеи?
curl
и до сих пор проходит, без каких-либо упоминаний о www в конфигурации nginxОтветы:
Этот ответ переполнения стека предлагает использовать этот код для удаления
www
перед любым доменом:Обратите внимание, что если это зло , но говорят, что работать с
rewrite
.источник