Score:0

NGINX กำลังเปลี่ยนเส้นทางไปยัง localhost:3000

ธง es

ฉันใช้ ruby ​​on rail ในคอนเทนเนอร์นักเทียบท่าที่ใช้งานเว็บไซต์ของฉัน https://redrebelgames.com ที่พอร์ต 3000 ฉันกำลังพยายามตั้งค่า NGINX ให้เปลี่ยนเส้นทาง http:// การรับส่งข้อมูลไปที่ https:// และเปลี่ยนเส้นทางพอร์ต 80 ไปยังพอร์ต 3000 มันใช้งานได้ถ้าคุณไปที่ที่อยู่ IP โดยตรง: 143.244.156.208 มันเปลี่ยนเส้นทางการรับส่งข้อมูลไปยังพอร์ต 80 ด้วยซ้ำ อย่างไรก็ตาม รูปภาพบางรูปไม่โหลดดังที่แสดงด้านล่าง: ป้อนคำอธิบายรูปภาพที่นี่

และโดเมนเองก็ใช้งานไม่ได้ เกิดอะไรขึ้นกับการกำหนดค่าของฉันใน /etc/nginx/sites-available/default คุณสามารถดูด้านในของไฟล์ด้านล่าง:

##
# คุณควรดู URL ต่อไปนี้เพื่อทำความเข้าใจที่แน่นอน
# ของไฟล์การกำหนดค่า Nginx เพื่อปลดปล่อยพลังของ Nginx ได้อย่างเต็มที่
# https://www.nginx.com/resources/wiki/start/
# https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/
# https://wiki.debian.org/Nginx/DirectoryStructure
#
# ในกรณีส่วนใหญ่ ผู้ดูแลระบบจะลบไฟล์นี้ออกจากไซต์ที่เปิดใช้งาน/ และ
# ปล่อยให้เป็นข้อมูลอ้างอิงภายในไซต์ที่มีอยู่ซึ่งจะยังคงอยู่ต่อไป
# อัปเดตโดยทีมบรรจุภัณฑ์ nginx
#
# ไฟล์นี้จะโหลดไฟล์การกำหนดค่าที่ผู้อื่นให้มาโดยอัตโนมัติ
# แอปพลิเคชัน เช่น Drupal หรือ Wordpress แอปพลิเคชันเหล่านี้จะทำขึ้น
# อยู่ภายใต้เส้นทางที่มีชื่อแพ็คเกจนั้น เช่น /drupal8
#
# โปรดดู /usr/share/doc/nginx-doc/examples/ สำหรับตัวอย่างโดยละเอียดเพิ่มเติม
##

# การกำหนดค่าเซิร์ฟเวอร์เริ่มต้น
#
เซิร์ฟเวอร์ {
    ฟัง 80 default_server;
    ฟัง [::]:80 default_server;

    # การกำหนดค่า SSL
    #
    # ฟัง 443 ssl default_server;
    # ฟัง [::]:443 ssl default_server;
    #
    # หมายเหตุ: คุณควรปิดการใช้งาน gzip สำหรับการรับส่งข้อมูล SSL
    # ดู: https://bugs.debian.org/773332
    #
    # อ่านข้อมูลเพิ่มเติมเกี่ยวกับ ssl_ciphers เพื่อให้แน่ใจว่ามีการกำหนดค่าที่ปลอดภัย
    # ดู: https://bugs.debian.org/765782
    #
    # ใบรับรองที่ลงนามด้วยตนเองที่สร้างขึ้นโดยแพ็คเกจ ssl-cert
    # ห้ามใช้ในเซิร์ฟเวอร์ที่ใช้งานจริง!
    #
    # รวมตัวอย่าง/snakeoil.conf;

    # ราก /var/www/html;

    # เพิ่ม index.php ในรายการหากคุณใช้ PHP
    # ดัชนี index.html index.htm index.nginx-debian.html;

    ชื่อเซิร์ฟเวอร์ _;

    ที่ตั้ง / {
        proxy_pass http://localhost:3000;
        # proxy_http_version 1.1;
        # proxy_set_header อัพเกรด $http_upgrade;
        # proxy_set_header การเชื่อมต่อ 'อัปเกรด';
        # proxy_set_header โฮสต์ $host;
        # proxy_cache_bypass $http_upgrade;
    
        # ความพยายามครั้งแรกในการให้บริการคำขอเป็นไฟล์ จากนั้น
        # เป็นไดเร็กทอรี จากนั้นถอยกลับไปแสดง 404
        #try_files $uri $uri/ =403;
    }

    # ส่งสคริปต์ PHP ไปยังเซิร์ฟเวอร์ FastCGI
    #
    #location ~ \.php$ {
    # รวมตัวอย่าง/fastcgi-php.conf;
    #
    # # ด้วย php-fpm (หรือซ็อกเก็ตยูนิกซ์อื่น ๆ ):
    # fastcgi_pass ยูนิกซ์:/var/run/php/php7.4-fpm.sock;
    # # ด้วย php-cgi (หรือซ็อกเก็ต tcp อื่น ๆ ):
    # fastcgi_pass 127.0.0.1:9000;
    #}

    # ปฏิเสธการเข้าถึงไฟล์ .htaccess ถ้ารูทเอกสารของ Apache
    # เห็นด้วยกับของ nginx
    #
    #location ~ /\.ht {
    #ปฏิเสธทั้งหมด
    #}
}


# การกำหนดค่าโฮสต์เสมือนสำหรับ example.com
#
# คุณสามารถย้ายไปยังไฟล์อื่นภายใต้ไซต์ที่มีจำหน่าย/ และ symlink ที่
# เพื่อเปิดใช้งานไซต์ / เพื่อเปิดใช้งาน
#
#เซิร์ฟเวอร์ {
# ฟัง 80;
# ฟัง [::]:80;
#
# server_name example.com;
#
# ราก /var/www/example.com;
# ดัชนี index.html;
#
#   ที่ตั้ง / {
# try_files $uri $uri/ =404;
# }
#}

เซิร์ฟเวอร์ {

    # การกำหนดค่า SSL
    #
    # ฟัง 443 ssl default_server;
    # ฟัง [::]:443 ssl default_server;
    #
    # หมายเหตุ: คุณควรปิดการใช้งาน gzip สำหรับการรับส่งข้อมูล SSL
    # ดู: https://bugs.debian.org/773332
    #
    # อ่านข้อมูลเพิ่มเติมเกี่ยวกับ ssl_ciphers เพื่อให้แน่ใจว่ามีการกำหนดค่าที่ปลอดภัย
    # ดู: https://bugs.debian.org/765782
    #
    # ใบรับรองที่ลงนามด้วยตนเองที่สร้างขึ้นโดยแพ็คเกจ ssl-cert
    # ห้ามใช้ในเซิร์ฟเวอร์ที่ใช้งานจริง!
    #
    # รวมตัวอย่าง/snakeoil.conf;

    # ราก /var/www/html;

    # เพิ่ม index.php ในรายการหากคุณใช้ PHP
    # ดัชนี index.html index.htm index.nginx-debian.html;
    server_name redrebelgames.com; # จัดการโดย Certbot


    ที่ตั้ง / {
        proxy_pass http://localhost:3000;
        # proxy_http_version 1.1;
        # proxy_set_header อัพเกรด $http_upgrade;
        # proxy_set_header การเชื่อมต่อ 'อัปเกรด';
        # proxy_set_header โฮสต์ $host;
        # proxy_cache_bypass $http_upgrade;
    
        # ความพยายามครั้งแรกในการให้บริการคำขอเป็นไฟล์ จากนั้น
        # เป็นไดเร็กทอรี จากนั้นถอยกลับไปแสดง 404
        #try_files $uri $uri/ =404;
    }

    # ส่งสคริปต์ PHP ไปยังเซิร์ฟเวอร์ FastCGI
    #
    #location ~ \.php$ {
    # รวมตัวอย่าง/fastcgi-php.conf;
    #
    # # ด้วย php-fpm (หรือซ็อกเก็ตยูนิกซ์อื่น ๆ ):
    # fastcgi_pass ยูนิกซ์:/var/run/php/php7.4-fpm.sock;
    # # ด้วย php-cgi (หรือซ็อกเก็ต tcp อื่น ๆ ):
    # fastcgi_pass 127.0.0.1:9000;
    #}

    # ปฏิเสธการเข้าถึงไฟล์ .htaccess ถ้ารูทเอกสารของ Apache
    # เห็นด้วยกับของ nginx
    #
    #location ~ /\.ht {
    #ปฏิเสธทั้งหมด
    #}


    ฟัง [::]:443 ssl ipv6only=เปิด; # จัดการโดย Certbot
    ฟัง 443 ssl; # จัดการโดย Certbot
    ssl_certificate /etc/letsencrypt/live/redrebelgames.com/fullchain.pem; # จัดการโดย Certbot
    ssl_certificate_key /etc/letsencrypt/live/redrebelgames.com/privkey.pem; # จัดการโดย Certbot
    รวม /etc/letsencrypt/options-ssl-nginx.conf; # จัดการโดย Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # จัดการโดย Certbot

}
เซิร์ฟเวอร์ {
    ถ้า ($host = redrebelgames.com) {
        ส่งคืน 301 https://$host$request_uri;
    } # จัดการโดย Certbot


    ฟัง 80 ;
    ฟัง [::]:80 ;
    server_name redrebelgames.com;
    กลับ 404; # จัดการโดย Certbot


}
Steffen Ullrich avatar
se flag
*"ฉันกำลังพยายามตั้งค่า NGINX เพื่อเปลี่ยนเส้นทางการรับส่งข้อมูล http:// ไปยัง https:// และ __redirect__ port 80 ไปยัง port 3000"* - ไม่ คุณกำลังพยายาม __proxy__ port 80 ไปยัง port 3000 ตามที่เห็นได้จาก คำสั่ง `proxy_pass` __Redirect__ หมายถึงการสั่งให้เบราว์เซอร์ไปที่ URL อื่น ซึ่งเป็นไปไม่ได้ในกรณีของคุณ เนื่องจาก `localhost:3000` สามารถเข้าถึงได้จากเครื่องท้องถิ่นเท่านั้น __Proxy__ หมายถึงการส่งคำขอของไคลเอนต์ไปยังเซิร์ฟเวอร์ภายในและส่งการตอบสนองของเซิร์ฟเวอร์กลับไปยังไคลเอนต์ วิธีนี้จะทำให้เซิร์ฟเวอร์ภายในบน localhost มองเห็นได้จากภายนอก
Michael Hampton avatar
cz flag
คุณยังมีปัญหาอยู่หรือไม่? ไซต์ของคุณโหลดได้ดี ไม่มีสัญญาณของการเปลี่ยนเส้นทางที่ไม่เหมาะสม
es flag
ในเครื่องของฉัน มันยังคงเปลี่ยนเส้นทางไปที่ https://localhost:3000 คุณรู้หรือไม่ว่ามีอะไรผิดปกติ?

โพสต์คำตอบ

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