Score:0

Nginx พร้อม Docker : nginx: [emerg] คำสั่งที่ไม่รู้จัก "เปิดใช้งาน" ใน /etc/nginx/nginx.conf

ธง ms

ฉันมีเซิร์ฟเวอร์ 2 เครื่อง เครื่องหนึ่งอยู่บนมหาสมุทรดิจิทัล และอีกเครื่องอยู่ที่อื่น ฉันมีโครงการหนึ่งและทำงานได้ดีกับแอปทั้งหมดบนเซิร์ฟเวอร์นั้น แต่ฉันต้องการสร้างหยดและย้ายไปยังมหาสมุทรดิจิทัล ดังนั้นฉันจึงคัดลอกไฟล์ทั้งหมดไปยังเซิร์ฟเวอร์ใหม่ (มหาสมุทรดิจิทัล) ผ่านทาง sudo scp สั่งการ. บริการทั้งหมดทำงานได้ดียกเว้น Nginx ส่งคืนรหัสทางออก 1 ตามภาพด้านล่าง รหัสทั้งหมดเหมือนกันดังนั้นฉันจึงสับสนมากว่าทำไมมันถึงไม่ทำงานเหมือนกัน

บริการ

ฉันขอทราบได้ไหมว่าฉันขาดอะไรไป

มันเป็นไฟล์ nginx.conf ของฉัน:

worker_processes 4;
    
    เหตุการณ์ {
      worker_connections 4096;
    }
    
    http {
    
      เซิร์ฟเวอร์ {
        ฟัง 80 default_server;
        ชื่อเซิร์ฟเวอร์ "";
        กลับ 444;
      }
    
      เซิร์ฟเวอร์ {
        server_name game-dev.myappapp.com;
    
        ที่ตั้ง / {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-ส่งต่อ-สำหรับ $proxy_add_x_forwarded_for;
          proxy_set_header โฮสต์ $http_host;
          proxy_set_header X-NginX-Proxy จริง;
          proxy_http_version 1.1;
          proxy_set_header อัพเกรด $http_upgrade;
          proxy_set_header การเชื่อมต่อ "อัพเกรด";
    
          proxy_pass http://game_nodes;
          ปิด proxy_redirect;
        }
      }
      เซิร์ฟเวอร์ {
        ถ้า ($host = game-dev.myappapp.com) {
          ส่งคืน 301 https://$host$request_uri;
        }
    
    
        ฟัง 80;
        ฟัง [::]:80;
        server_name game-dev.myappapp.com;
        กลับ 404;
      }
    
      ต้นน้ำ game_nodes {
        # เปิดใช้งานเซสชันปักหมุด
        #ip_hash;
        เซิร์ฟเวอร์เกมอัลฟ่า:3000;
        Keepalive 8;
      }
    
      เซิร์ฟเวอร์ {
        server_name api-dev.myappapp.com;
    
        ที่ตั้ง / {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-ส่งต่อ-สำหรับ $proxy_add_x_forwarded_for;
          proxy_set_header โฮสต์ $http_host;
          proxy_set_header X-NginX-Proxy จริง;
    
          proxy_pass http://main_nodes;
          ปิด proxy_redirect;
    
        }
      }
    
      เซิร์ฟเวอร์ {
        ถ้า ($host = api-dev.myappapp.com) {
          ส่งคืน 301 https://$host$request_uri;
        }
    
        ฟัง 80;
        ฟัง [::]:80;
        server_name api-dev.myappapp.com;
        กลับ 404;
      }
    
      ต้นน้ำ main_nodes {
        เซิร์ฟเวอร์หลัก-alpha:8000;
        เซิร์ฟเวอร์หลักเบต้า: 8000;
        Keepalive 8;
      }
    }

มันคือ Dockerfile ของฉัน:

จาก nginx
คัดลอก nginx.conf /etc/nginx/nginx.conf

ดังที่คุณเห็นจากภาพหน้าจอด้านล่าง (เซิร์ฟเวอร์ด้านซ้ายคือ droplet ของฉัน ส่วนด้านขวาคือเซิร์ฟเวอร์อื่นของฉัน) droplet ของฉันไม่ฟังพอร์ต 80 โดยปกติแล้วควรฟังพอร์ต 80 ของเซิร์ฟเวอร์อื่น

ภาพหน้าจอ

นี่คือบันทึก Nginx ของฉัน

root@knowin-project-dev:/home/cihat/app# นักเทียบท่าบันทึก nginx
/docker-entrypoint.sh: /docker-entrypoint.d/ ไม่ว่างเปล่า จะพยายามดำเนินการกำหนดค่า
/docker-entrypoint.sh: ค้นหาเชลล์สคริปต์ใน /docker-entrypoint.d/
/docker-entrypoint.sh: เปิดตัว /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: ข้อมูล: รับการตรวจสอบของ /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: ข้อมูล: เปิดใช้งานการฟังบน IPv6 ใน /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: เปิดตัว /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: เปิดตัว /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: การกำหนดค่าเสร็จสมบูรณ์; พร้อมสำหรับการเริ่มต้น
13/06/2021 20:22:46 [ฉุกเฉิน] 1#1: คำสั่งที่ไม่รู้จัก "เปิดใช้งาน" ใน /etc/nginx/nginx.conf:45
nginx: [ฉุกเฉิน] คำสั่งที่ไม่รู้จัก "เปิดใช้งาน" ใน /etc/nginx/nginx.conf:45

หมายเหตุ: สถานะของ ufw ไม่ได้ใช้งาน ดังนั้นจึงมีพอร์ตทั้งหมด

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา