apache2: การติดตั้งให้เรียกใช้งานเซิร์ฟเวอร์ภายในจากภายนอก
Submitted by wd on 23 January, 2009 - 08:57.
debian: lenny/etch
package: apache2.2 (2.2.9-10+lenny1/2.2.3-4+etch6)
สมมุติว่าเซิร์ฟเวอร์ภายนอก ชื่อ www.example.com มีการติดตั้ง apache2 ไว้แล้ว และเซิร์ฟเวอร์ภายใน ชื่อ internal.example.com มีการติดตั้ง apache2 ไว้แล้วเช่นกัน ต้องการให้ผู้ใช้ภายนอกเรียกเว็บที่ internal.example.com ได้
ทำที่เครื่องเซิร์ฟเวอร์ภายนอกอย่างเดียว โดยใช้มอดูล proxy_http
# a2enmod proxy # a2enmod proxy_http # /etc/init.d/apache2 reload
ติดตั้งชื่อไฟล์ไซต์ใน sites-available ว่า internal
# vi /etc/apache2/sites-available/internal
<VirtualHost *:80>
ServerAdmin webmaster@internal.example.com
ServerName internal.example.com
ProxyRequests Off
<Proxy *>
Order Deny,Allow
Allow from all
</Proxy>
ProxyPreserveHost On
ProxyPass / http://internal.example.com/
ProxyPassReverse / http://internal.example.com/
</VirtualHost>
เปิดใช้งาน
# a2ensite internal # /etc/init.d/apache2 reload
เสร็จแล้ว
ถ้าเราตั้งค่า DNS ของภายนอกไว้แล้ว สามารถเรียกจากภายนอกผ่าน internal.example.com ได้
|
ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้ |
















Re: apache2: การติดตั้งให้เรียกใช้งานเซิร์ฟเวอร์ภายในจากภายนอก
ผมก็ใช้ Module นี้เหมือนกันครับ
แต่วัตถุประสงค์ต่างกัน คือ ต้องการให้ เครื่องภายใน วิ่งออกไปหา Web ข้างนอก
555 ฟังดูงง ๆ ใช่ไหมครับ
ก็ไม่มีอะไรครับ มันเป็นเคสหนึ่ง ที่เครือข่าย ม.ขอนแก่น
ที่เครื่องลูกจะต้องทำการ Authen ก่อนถึงจะเข้า Net ได้
แต่ถ้ายังไม่มี Username ในการ Authen
สามารถสมัครได้ที่ web server ของมหาวิทยาลัย
แต่ติดตรงที่เครื่อง Server นั้นไม่ได้อยู่ในเครือข่ายภายใน (แยกกันอยู่)
ก็เลยใช้ proxy_http นี่หละครับ
ตอนนี้ ก็สามารถที่จะเข้าไปสมัครได้ จาก web ภายใน
___
Neutron: Linux Addict!