สัญลักษณ์ที่น่าสงสัยเกี่ยวกับการกำหนดค่า nginx


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_name

เช่นฉันเปลี่ยนสิ่งนี้:

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;
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.