У меня есть следующие два серверных блока в моем конфигурационном файле в sites-available:
server {
listen 80;
server_name www.mydomain.be;
root /usr/share/nginx/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 80;
server_name sub.mydomain.be;
root /usr/share/nginx/sub;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
Я также создал A-запись для www.domain.be и sub.domain.be с IP-адресом моего сервера в качестве значения.
Тем не менее, когда я пытаюсь перезагрузить свою конфигурацию nginx с помощью перезагрузки службы nginx, это не удается.
Когда я удаляю второй серверный блок, он перезагружается, как и ожидалось.
Я знаю, что эта тема популярна и что здесь много таких вопросов [nginx] [subdomain], но ни один из них, похоже, не обсуждает явно, как следующие три вещи связаны вместе:
Прямо сейчас у меня сложилось впечатление, что отсутствие знаний об этой общей картине, а не конкретных знаний о конфигурации nginx мешает мне выполнить эту работу.
Обновить:
Отследил проблему
Изначально я получил провал без каких-либо объяснений.
С помощью
sudo nginx -c /etc/nginx/nginx.conf -t
Я получил это сообщение
nginx: [emerg] could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32
после раскомментирования
server_names_hash_bucket_size 64;
проблема была решена.
Выявлена проблема (которая не связана с A-записями или файлом / etc / hosts)
Изначально я получил провал без каких-либо объяснений.
С помощью
sudo nginx -c /etc/nginx/nginx.conf -t
Я получил это сообщение
nginx: [emerg] could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32
после раскомментирования
server_names_hash_bucket_size 64;
в nginx.conf проблема решена.