Підозрілі символи в nginx config


41

У мене є така конфігурація nginx, наприклад

server {
        listen   80;
        server_name example.com
        allow 127.0.0.0/8;

Коли я перезавантажуюсь, він попереджає мене:

Restarting nginx: nginx: [warn] server name "127.0.0.0/8" has suspicious 
symbols in /etc/nginx/sites-enabled/xxx

Будь-яка ідея?

Відповіді:


101

Я думаю, вам не вистачає ;в кінці server_nameдирективи, тому вона інтерпретує allowрядок як частину імені сервера.

server {
        listen   80;
        server_name example.com;
        allow 127.0.0.0/8;

4
Я був тут раніше ... Я ось-ось збирався підтвердити вашу відповідь, тоді зрозумів, що вже зробив! Дякую вдруге :-)
codenamejames

Дякую. Мені не було ;в кінці, і це викликало 404 Not Found nginxв моєму браузері та server name "/var/www/mysite" has suspicious symbols in /etc/nginx/sites-available/mysite.conf:8в моєму /var/log/nginx/error.log.
Райан

3

Для мене причиною цієї помилки було те, що в імені_сервера було вказано "http: //".

тобто я змінив це:

server {
    listen <Server name>:80;
    server_name <DNS name> http://localhost:28080;
    ...

До цього:

server {
    listen <Server name>:80;
    server_name <DNS name> localhost:28080;
    ...

2

Проста директива складається з імені та параметрів, розділених пробілами і закінчується крапкою з комою (;).

У вашому випадку server_name example.com відсутня крапка з комою (;).

server {
        listen   80;
        server_name example.com;
        allow 127.0.0.0/8;
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.