Score:0

ตั้งค่าพร็อกซีย้อนกลับเป็น google.com ในขณะที่ดูแลบริการเว็บเดิมที่โฮสต์บน apache

ธง cn
เซิร์ฟเวอร์ {
    ฟัง 80;
    server_name example.com;
    ที่ตั้ง / {
        เขียนใหม่ ^/(.*)$ https://$host$1 ถาวร;
    }
}

เซิร์ฟเวอร์ {
    ฟัง 443 ssl;
    server_name example.com;

    ssl_certificate /etc/ssl/example.crt;
    ssl_certificate_key /etc/ssl/example.key;

    ssl_session_cache ที่แชร์:SSL:1m;
    ssl_session_timeout 5 นาที;

    ที่ตั้ง / {
        proxy_pass https://www.google.com;
        proxy_set_header โฮสต์ www.google.com;
        proxy_set_header ผู้อ้างอิง https://www.google.com;

        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header ยอมรับการเข้ารหัส "";
        proxy_set_header ภาษาที่ยอมรับได้ $http_accept_language;
        proxy_set_header X-ส่งต่อ-สำหรับ $proxy_add_x_forwarded_for;

        sub_filter google.com ตัวอย่าง.คอม;
        sub_filter_once ปิด;
    }
}

ฉันกำลังพยายามใช้สิ่งนี้ แต่ 0.0.0.0:80 ใช้งานโดย apache แต่คำถามคือฉันจะย้อนกลับคำขอพร็อกซีจาก bi.example.com ไปยัง google.com ได้อย่างไรในขณะที่ยังมี webservice.example.com เปลี่ยนเส้นทาง ส่งคำขอไปที่ example.com ซึ่งโฮสต์บริการเว็บ API ฉันไม่คิดว่ามันสามารถทำได้ แต่ฉันอาจคิดผิด

ฉันได้รับข้อผิดพลาดนี้เมื่อฉันพยายามเริ่ม nginx:

28 ธันวาคม 10:52:22 example.com nginx[27291]: nginx: [emerg] bind() ถึง 0.0.0.0:443 ล้มเหลว (98: ที่อยู่ al...use)
28 ธันวาคม 10:52:23 example.com nginx[27291]: nginx: [emerg] bind() ถึง 0.0.0.0:80 ล้มเหลว (98: ที่อยู่ alr...use)
28 ธันวาคม 10:52:23 example.com nginx[27291]: nginx: [emerg] bind() ถึง 0.0.0.0:443 ล้มเหลว (98: ที่อยู่ al...use)
28 ธันวาคม 10:52:23 example.com nginx[27291]: nginx: [emerg] bind() ถึง 0.0.0.0:80 ล้มเหลว (98: ที่อยู่ alr...use)
28 ธันวาคม 10:52:23 example.com nginx[27291]: nginx: [emerg] bind() ถึง 0.0.0.0:443 ล้มเหลว (98: ที่อยู่ al...use)
28 ธันวาคม 10:52:24 example.com nginx[27291]: nginx: [emerg] ยังไม่สามารถผูก ()

ฉันตรวจสอบพอร์ตและมีการใช้โดย httpd ซึ่งสอดคล้องกับ Apache

เพื่ออธิบายเพิ่มเติม ฉันมีการเปลี่ยนเส้นทาง CNAME สองครั้งไปที่ example.com และฉันต้องการเปลี่ยนเส้นทางไปยังหน้าเว็บอื่นที่ไม่ใช่ Google แต่นี่เป็นเพียงตัวอย่าง ดังนั้นเนื่องจาก CNAME ทั้งสองเปลี่ยนเส้นทางไปยัง URL เดียวกัน ฉันไม่คิดว่านี่คือ เป็นไปได้และการเปลี่ยนเส้นทางจาก URL ไปยังอีก URL เพื่อมอบใบรับรอง SSL ไปยังลิงก์อื่นที่ไม่ใช่ Google.com จะไม่สามารถทำได้หาก Apache ใช้พอร์ต 80 นอกเหนือจากการใช้เซิร์ฟเวอร์ใหม่สำหรับสิ่งนี้ มีความเป็นไปได้อื่นอีกไหม? ขณะนี้ มีการเปลี่ยนเส้นทาง CNAME จาก bi.example.com ไปยัง URL อื่นที่ไม่ใช่ Google และฉันพยายามตั้งค่าการเปลี่ยนเส้นทางด้วย nginx โดยชี้ CNAME จาก bi.example.com ไปยัง example.com แทน URL อื่น

Tilman Schmidt avatar
bd flag
สิ่งนี้ดูไม่เหมือนสิ่งที่ใคร ๆ อยากทำในสภาพแวดล้อมทางธุรกิจ กรณีการใช้งานของคุณคืออะไร?
cn flag
ตรวจสอบโพสต์ที่อัปเดต
Tilman Schmidt avatar
bd flag
มันจะง่ายกว่ามากในการตอบคำถามของคุณหากคุณไม่ได้ทำให้สับสนมากนัก ในอนาคต โปรดช่วยผู้ที่พยายามช่วยเหลือคุณด้วยการให้ข้อมูลจริงแทนการอธิบายปัญหาของคุณในลักษณะอ้อมค้อม
Score:1
ธง bd

คุณไม่สามารถมีสองโปรแกรม (Apache และ nginx) ฟังบนพอร์ตเดียวกัน แต่คุณสามารถมีโปรแกรมเดียว (Apache หรือ nginx) รีเวิร์สพร็อกซีสองชื่อโฮสต์แยกกันไปยังสองบริการที่แตกต่างกัน หรือแม้แต่เพื่อให้บริการเนื้อหาในชื่อโฮสต์หนึ่งและรีเวิร์สพร็อกซีอีกอันหนึ่ง หนึ่ง.

ดังนั้นวิธีแก้ปัญหาคือต้องตัดสินใจเลือกหนึ่งในสองโปรแกรมก่อน ไม่ว่าจะเป็น Apache หรือ nginx จากนั้นภายในโปรแกรมนั้นให้ตั้งค่าโฮสต์เสมือนสองโฮสต์สำหรับชื่อโฮสต์สองรายการที่คุณเปลี่ยนเส้นทางไปผ่านระเบียน CNAME หนึ่งในสองโฮสต์เสมือนนั้นสามารถย้อนกลับพร็อกซีไปยัง Google และอีกโฮสต์หนึ่งสามารถให้บริการ (หรือย้อนกลับพร็อกซีไปยัง) บริการเว็บของคุณได้

คำถามเกี่ยวกับใบรับรอง SSL เป็นอีกเรื่องหนึ่ง คุณสามารถกำหนดค่าพร็อกซีย้อนกลับของคุณเพื่อใช้ใบรับรองแยกต่างหากสำหรับโฮสต์เสมือนสองโฮสต์ หรือคุณสามารถใช้ใบรับรองที่ถูกต้องสำหรับทั้งสองโฮสต์

โพสต์คำตอบ

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