เบราว์เซอร์พร้อมไฟล์โฮสต์ของตัวเองหรือไม่


36

ฉันมีเซิร์ฟเวอร์ staging และเซิร์ฟเวอร์ทดสอบจำนวนหนึ่งที่ฉันจำเป็นต้องแก้ไขไฟล์โฮสต์ของฉันเพื่อเข้าถึง (ขึ้นอยู่กับชื่อโดเมนดังนั้นฉันต้องเปลี่ยนไฟล์โฮสต์เพื่อให้ทำงานได้)

ฉันพบว่ามันน่ารำคาญ ฉันต้องการตั้งค่าเบราว์เซอร์พกพาบางชนิดสำหรับเว็บไซต์แต่ละประเภทที่ฉันต้องการใช้งาน มีเว็บเบราว์เซอร์กราฟิกรุ่นใดบ้าง (รวมถึงเบราว์เซอร์ที่ใช้เครื่องมือการแสดงผลของเบราว์เซอร์อื่น ๆ ) ที่จะทำเช่นนี้?

วิธีนี้ฉันสามารถเปิดใช้งานอินสแตนซ์ที่ได้รับการกำหนดค่าให้ทำงานกับ staging ได้ง่ายถ้าฉันต้องการทดสอบการจัดเตรียม

ความคิดใด ๆ

แก้ไข:คุณลักษณะที่สำคัญคือความสามารถในการทำงานสองเบราว์เซอร์ concurently ทั้งเรียกดูsome-address.comแต่ด้วยเบราว์เซอร์ผู้กำกับ reqests ไปยังเซิร์ฟเวอร์ที่1.2.3.4และเบราว์เซอร์อื่น ๆ 5.6.7.8ผู้กำกับการร้องขอไปยังเซิร์ฟเวอร์ที่

แก้ไข: (3/16/14)

คำถามนี้ถูกถามเมื่อหลายปีก่อนและฉันก็ยังไม่รู้วิธีที่เหมาะสมในการทำเช่นนี้ ให้ฉันพยายามอธิบายเพิ่มเติมเพราะคนดูเหมือนจะเข้าใจผิดปัญหา ไม่ใช่สิ่งที่สามารถแก้ไขได้ง่ายเพียงแค่ใช้พร็อกซีเซิร์ฟเวอร์ ฉันคิดว่าอาจเป็นไปได้ที่จะเขียนกฎมากมายในพร็อกซีเซิร์ฟเวอร์เพื่อแก้ไขปัญหา แต่นั่นเป็นวิธีแก้ปัญหาที่ซับซ้อนขนาดใหญ่สำหรับสิ่งที่ควรเป็นปัญหาอย่างง่าย

เพื่อชี้แจง:

มีสามเว็บเซิร์ฟเวอร์ การผลิตการทดสอบและการพัฒนา แต่ละรันแอปพลิเคชั่นหลายผู้เช่าที่ปรับแต่งเองตามชื่อโฮสต์ที่ใช้ในการเข้าถึง แนวคิดนี้คล้ายกับระบบจัดการเนื้อหาหรือบล็อกเอ็นจิ้นที่อนุญาตให้หลาย ๆ ไซต์ถูกเรียกใช้จากอินสแตนซ์ของเซิร์ฟเวอร์เดียวกัน คุณเพียงแค่ชี้ชื่อโฮสต์ไปยังเซิร์ฟเวอร์และชื่อโฮสต์ใดก็ตามที่ใช้เพื่อเข้าถึงผ่านการแมปชื่อโฮสต์ HTTP 1.1 เป็นเว็บไซต์ที่แสดง

โซลูชันใด ๆ ที่เพิ่งเขียนไฟล์โฮสต์ไม่ทำงานเนื่องจากความต้องการใช้งานเบราว์เซอร์หลายหน้าต่างในเวลาเดียวกันไปยังไซต์ต่าง ๆ การผลิตการพัฒนาการทดสอบ ฯลฯ ... ดังนั้นการแก้ไขไฟล์โฮสต์อย่างต่อเนื่องจึงไม่เปลี่ยนแปลง ทำงานได้เนื่องจากมีผลกับอินสแตนซ์ของเบราว์เซอร์ทั้งหมด หากคุณเปลี่ยนการจับคู่สำหรับเบราว์เซอร์หนึ่งจากนั้นเบราว์เซอร์อื่น ๆ ก็จะถูกแมปไปยังเซิร์ฟเวอร์นั้นดังนั้นคำขอใด ๆ ที่ตามมาจะไปยังเซิร์ฟเวอร์ที่ไม่ถูกต้อง

ฉันกำลังมองหาทั้งหมดคือวิธีการบังคับให้อินสแตนซ์ของเบราว์เซอร์นี้ใช้ไฟล์โฮสต์นี้และอินสแตนซ์ของเบราว์เซอร์นั้นเพื่อใช้ไฟล์โฮสต์นั้นเช่นผ่านพารามิเตอร์บรรทัดคำสั่ง ฉันไม่สนใจด้วยซ้ำว่าฉันจะต้องติดตั้งเบราว์เซอร์หลายชุดหรือไม่

สิ่งนี้อาจทำได้ด้วย Firefox แบบพกพาเนื่องจากฉันคิดว่ามันใช้ไฟล์ config ของตัวเองต่อสำเนาที่ติดตั้ง แต่ปัญหาคือซอฟต์แวร์ของบุคคลที่สามที่ใช้ในการดูแลเว็บไซต์ไม่ทำงานกับ Firefox (ไซต์เองทำ แต่เครื่องมือของผู้ดูแลระบบ ทำไม่ได้พวกเขาทำงานได้ดีกับ chrome และ IE และ Opera แต่ .. และฉันไม่สามารถเข้าถึงแหล่งข้อมูลเพื่อแก้ไขปัญหานี้ได้)


คนส่วนใหญ่ในสถานการณ์ของคุณใช้เครื่องเสมือน WinXP หรือ Ubuntu สองเครื่องที่มี HOSTS ต่างกัน
digitxp

@digitxp - ใช่ฉันเคยคิดมาก่อนแล้ว แต่ฉันไม่ต้องการโอเวอร์เฮดของ VM หลายตัวและทั้งระบบปฏิบัติการหลายตัวเพื่อเรียกดูเว็บไซต์สองแห่ง เห็นได้ชัดว่าถ้าไม่มีทางเลือกอื่น ๆ นั่นคือสิ่งที่ฉันอาจจะต้องทำ ..
เอริค Funkenbusch

หากสิ่งอื่นล้มเหลว: Fiddler Web Debugger (Windows) หรือGlimmerBlockerและCharles Web Debugging Proxy (Mac) สามารถเขียนคำร้องขอได้ทันที ...
Arjan

@Arjan - Proxies จะทำงานได้ในระดับหนึ่ง แต่ฉันจะต้องมีอินสแตนซ์ของพร็อกซีที่แยกต่างหากสำหรับแต่ละอินสแตนซ์ของเบราว์เซอร์หรือเปลี่ยนการตั้งค่าพร็อกซีในแต่ละครั้ง
Erik Funkenbusch

1
บางทีพร็อกซีของเว็บเช่น squid จะช่วยให้คุณเปลี่ยนเส้นทางในสิ่งที่คุณต้องการจากการแก้ไข DNS หรือไม่ (แน่นอนว่าสามารถกำหนดค่าเว็บพรอกซีบนพื้นฐานของเบราว์เซอร์ได้)
barlop

คำตอบ:


19

Squid แก้ปัญหาให้ฉันแล้ว ฉันคิดว่าพร็อกซีเซิร์ฟเวอร์จำนวนมากสามารถทำเช่นเดียวกัน

โดยเฉพาะฉันต้องติดตั้ง Squid จากนั้นเปลี่ยน squid.conf เพื่อให้สามารถเข้าถึงไฟล์โฮสต์ทางเลือกได้ นี่คือบรรทัดที่คุณต้องการเปลี่ยน:

#hosts_file /etc/hosts

hosts_file /etc/hosts-squidในกรณีของฉันฉันใช้ ฉันสร้าง/etc/hosts-squidไฟล์และเปลี่ยนไฟล์ hosts-squid เพื่อให้ฉันสามารถเข้าถึงที่อยู่ IP ใหม่ที่ฉันต้องการสำหรับ URL ที่กำหนด นั่นคือทั้งหมดที่ฉันต้องทำเพื่อกำหนดค่าเซิร์ฟเวอร์พร็อกซี Squid

ฉันสร้างคำสั่งเพื่อเปิดเบราว์เซอร์ด้วยการตั้งค่าพร็อกซี ฉันใช้:

chromium-browser --proxy-server=localhost:3128

การรันคำสั่งนั้นอย่างมีประสิทธิภาพทำให้ฉันมีตัวอย่างของโครเมียมซึ่งสามารถเข้าถึงการตั้งค่าโดเมนในไฟล์ hosts-squid ที่ฉันสร้างขึ้นได้

ฉันยังสามารถตั้งค่าพร็อกซีเซิร์ฟเวอร์ได้มากขึ้นโดยใช้ Squid หลายอินสแตนซ์เพื่อเข้าถึงการผลิตการพัฒนาและเว็บไซต์ท้องถิ่นทั้งหมดในคอมพิวเตอร์เครื่องเดียวกัน คำแนะนำเกี่ยวกับวิธีการเรียกใช้อินสแตนซ์ปลาหมึกหลายที่นี่ ฉันยังเขียนบล็อกโพสต์เพื่ออธิบายปัญหาและแนวทางแก้ไขในรายละเอียดเพิ่มเติมเล็กน้อย


8

ฉันเชื่อว่าคุณกำลังขอให้ตั้งค่าสภาพแวดล้อมเสมือนจริงสำหรับแต่ละเบราว์เซอร์ที่มีไฟล์โฮสต์ของตัวเอง

ทางออกหนึ่งอาจจะใช้Sandboxieเพื่อตั้งค่า sandbox แยกแต่ละอันมีไฟล์โฮสต์ของตัวเอง เบราว์เซอร์ไม่จำเป็นต้องติดตั้งลงในแซนด์บ็อกซ์เพื่อใช้ไฟล์โฮสต์โดยเริ่มจากภายในแซนด์บ็อกซ์นั้น สามารถสร้างทางลัดบนเดสก์ท็อปเพื่อเปิดเบราว์เซอร์จากภายในกล่องทราย

ข้อเสียคือเบราว์เซอร์จะถูกแยกออกจากระบบไฟล์จริงเช่นเมื่อดาวน์โหลดไฟล์จากอินเทอร์เน็ต แต่ Sandboxie มีกลไกสำหรับการคัดลอกไฟล์ดังกล่าวนอกแซนด์บ็อกซ์

น่าเสียดายที่คุณลักษณะของโปรแกรมที่ใช้งานในแซนด์บ็อกซ์มากกว่าหนึ่งเครื่องในเวลาเดียวกันนั้นมีให้บริการเฉพาะในรุ่นที่จ่ายของแซนด์บ็อกซี่ (15 ยูโรพร้อมภาษีสำหรับใบอนุญาตหนึ่งปีสำหรับใช้ส่วนตัวที่บ้าน) การทดสอบความเป็นไปได้สามารถทำได้โดยใช้รุ่นฟรี

สำหรับผู้ใช้ Linux ผลิตภัณฑ์ที่คล้ายกันคือ:


ขออภัยเกี่ยวกับการตอบกลับล่าช้า มันไม่ชัดเจนถ้าโปรแกรมอนุญาตให้ไฟล์ระบบต่อแซนด์บ็อกซ์เช่น%SYSTEM32%/Drivers/etc/hostsบน Windows และ/etc/hostsบน Linux คุณยืนยันได้ไหม ฉันต้องการรุ่น Linux เพราะฉันทำการประเมินความปลอดภัยอย่างรวดเร็วของ Sandboxie เมื่อสองสามปีก่อนบน Windows (มันล้มเหลวและรายงานไปยังผู้เขียนยังไม่ได้ตอบ)
jww

ถ้า Sandboxie สนับสนุนไฟล์ระบบแบบแซนด์บ็อกซ์เช่น%SYSTEM32%/Drivers/etc/hostsนั้นคะแนนจะเป็นของคุณ ระบบปฏิบัติการไม่ได้ระบุไว้และไม่เป็นธรรมกับคุณที่จะยับยั้งพวกเขาหาก Windows / Sandboxie ทำงาน
jww

AFAIK Sandboxie สร้างระบบไฟล์และรีจิสตรีแบบขนานอย่างสมบูรณ์ สำหรับ Linux โปรแกรม sandbox ง่าย ๆ คือarkoseหรือsandfoxแต่ฉันไม่มีประสบการณ์กับพวกมัน
harrymc

ขอบคุณ Harrymc ฉันมีปัญหาในการให้คะแนนคุณ ฉันเห็นกล่องที่มี +50 แต่ฉันไม่สามารถคลิกได้ นอกจากนี้ฉันคิดว่ามันคุ้มค่า 100 ความคิดใด ๆ (หรือฉันต้องเดินไปที่ Meta)?
jww

ดูคำถามที่พบบ่อยเกี่ยวกับการจ่ายเงินรางวัล: ของรางวัล 100 รางวัลครึ่งหนึ่งจะได้รับโดยอัตโนมัติหลังจาก 7 + 1 วันโดยไม่มีคำตอบที่กำหนดครึ่งหนึ่งหายไป
harrymc

4

คุณสามารถทำให้กระบวนการเปลี่ยนไฟล์โฮสต์โดยอัตโนมัติด้วย firefox + HostAdmin

HostAdmin เป็น Firefox Addon ที่ช่วยให้คุณปรับเปลี่ยนไฟล์โฮสต์สลับการแมปโดเมน -ip HostAdmin สามารถเข้าใจไฟล์โฮสต์ของคุณผ่านทางไฟล์โฮสต์ที่ปรับปรุงแล้ว นอกจากนี้ HostAdmin จะรีเฟรชแคช DNS ของคุณโดยอัตโนมัติทุกครั้งที่คุณเปลี่ยนไฟล์โฮสต์แม้กระทั่งด้วยตนเอง

ตัวอย่างการกำหนดค่า

#==== Project 1
# 127.0.0.1 localhost1
127.0.0.1 localhost2
127.0.0.1 localhost3
#====
#==== Project 2
# 127.0.0.1 localhost1
# 127.0.0.1 localhost2
# 127.0.0.1 localhost3  

ข้อมูลเพิ่มเติมที่https://addons.mozilla.org/en-US/firefox/addon/hostadmin/

หลายอินสแตนซ์

ในการเรียกใช้เบราว์เซอร์ Firefox สองอินสแตนซ์อย่างต่อเนื่องและเป็นอิสระใน linux ให้สร้าง launchers หลายตัวด้วยสคริปต์ต่อไปนี้ ติดตั้งปลั๊กอินใน Firefox ทั้งหมด

Firefox 1

#!/bin/bash
th="/home/$USER/tmp/p1"
mkdir -p "$th"
export HOME="$th"
firefox -no-remote

Firefox 2

#!/bin/bash
th="/home/$USER/tmp/p2"
mkdir -p "$th"
export HOME="$th"
firefox -no-remote  

คุณสามารถใช้ตัวเลือกโปรไฟล์ ( firefox -P) ในเบราว์เซอร์เพื่อใช้โพรไฟล์ดั้งเดิมสำหรับการตั้งค่าที่แตกต่างกันและอาจใช้พร้อมกัน


1
เขาจะขอ 2 เบราว์เซอร์ที่ใช้ 2 ไฟล์โฮสต์ในเวลาเดียวกัน
harrymc


@harrym c ได้รับการอัปเดต
totti

2

ฉันรู้ว่านี่ไม่ใช่สิ่งที่คุณต้องการ แต่วิธีแก้ปัญหาชั่วคราวคือการเขียนสคริปต์แบทช์เพื่อสลับไฟล์โฮสต์จากนั้นเปิดเบราว์เซอร์ใหม่

อย่างน้อยมันจะลดงานที่คุณทำ

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


ฉันไม่สามารถเปลี่ยนชื่อได้เพราะเว็บแอปพลิเคชันขึ้นอยู่กับชื่อโฮสต์เพื่อแสดงเนื้อหาที่ถูกต้อง นอกจากนี้เหตุผลที่ฉันต้องการทำเช่นนี้คือฉันสามารถเรียกใช้หลายเบราว์เซอร์ในเวลาเดียวกันและมีหนึ่งไปที่การแสดงละครและอื่น ๆ ที่จะพัฒนา คุณไม่สามารถทำได้โดยการแลกเปลี่ยนไฟล์โฮสต์
Erik Funkenbusch

@MystereMan: หากคุณกำลังพูดถึง META BASE เพียงทำการตรวจสอบเบราว์เซอร์ฝั่งเซิร์ฟเวอร์ คุณไม่ควรมีชื่อโฮสต์ของคุณใน URL อื่น ...
Tamara Wijsman

@TomWij - ไม่ฉันไม่ได้พูดถึง META BASE ฉันกำลังพูดถึงโฮสต์โฮสติ้งเสมือนจริงไม่ใช่ IP ฟิลด์ชื่อโฮสต์จะกำหนดว่าจะเข้าถึงเว็บไซต์ใด
Erik Funkenbusch

@MystereMan: จากนั้นความคิดเห็นแรกของคุณในคำตอบนี้ไม่สมเหตุสมผลเลย ในขณะที่คุณกำลังพูดถึง "เว็บแอปพลิเคชันแสดงเนื้อหาที่ถูกต้อง" ฉันไม่เห็นว่าโฮสต์เสมือนต้องทำอะไรกับมัน
Tamara Wijsman

@TomWij - เรามีระบบ CMS หลายเว็บไซต์ที่โฮสต์หลายเว็บไซต์บนเซิร์ฟเวอร์เดียวด้วย IP เดียว ในการดูไซต์ใด ๆ ก็ตามคุณต้องใช้ชื่อโฮสต์มิฉะนั้นคุณจะเข้าถึงอินสแตนซ์เริ่มต้นเท่านั้น ฉันต้องสลับระหว่างเวอร์ชันการผลิตการจัดเตรียมและเวอร์ชันการพัฒนาของเซิร์ฟเวอร์นี้ซึ่งหมายถึงการเปลี่ยนการแมปชื่อโดเมนเป็นที่อยู่ IP ของพวกเขาในทันที ฉันสามารถทำสิ่งนี้ได้ในไฟล์โฮสต์ แต่นั่นเป็นการเปลี่ยนแปลงสิ่งต่างๆทั่วโลกดังนั้นฉันจึงไม่สามารถเปิดสำเนาของการเตรียมการและการผลิตพร้อมกันในสองอินสแตนซ์ของเบราว์เซอร์ที่แตกต่างกัน
Erik Funkenbusch

1

สามารถใช้ Privoxyเพื่อจุดประสงค์นี้


Privoxy จะทำงานอย่างไรสำหรับจุดประสงค์นี้ ดูเหมือนว่าจะเป็นเซิร์ฟเวอร์พร็อกซี่ในท้องที่อื่นซึ่งไม่ได้ผลเพราะเบราว์เซอร์ส่วนใหญ่คุณไม่สามารถกำหนดพร็อกซีต่ออินสแตนซ์ .. คุณสามารถกำหนดพร็อกซีส่วนกลางสำหรับทุกกรณีได้
Erik Funkenbusch

@MystereMan: มันจะร้องขอพร็อกซี่และทำให้คุณจัดการกับการร้องขอเข้ามาในคำขออื่น ๆ ที่มันค่อนข้างง่ายที่จะทำเช่นนั้น คุณกำลังพูดถึงความรู้สึกที่ไม่เกี่ยวกับพร็อกซีเซิร์ฟเวอร์: Mirosoft Internet Explorer (GUI), Mozilla Firefox (GUI), Google Chrome (CLI --proxy-server =), Apple Safari (GUI), Opera (GUI) และเบราว์เซอร์อื่น ๆ (GUI หรือ CLI) อนุญาตให้คุณตั้งค่าพร็อกซีเซิร์ฟเวอร์ของคุณเอง ...
Tamara Wijsman

@TomWij - ไม่ทั้งหมด IE, Chrome และ Safari ทั้งหมดใช้การตั้งค่าพร็อกซีเซิร์ฟเวอร์ส่วนกลางใน "การตั้งค่าอินเทอร์เน็ต" ซึ่งหมายความว่าหากคุณเปลี่ยนในเว็บเบราว์เซอร์เดียวมันจะเปลี่ยนในทุกเบราว์เซอร์ Firefox มีการตั้งค่าของตัวเองสำหรับเรื่องนี้ แต่น่าเสียดายที่ฉันไม่สามารถใช้ Firefox ได้เพราะมันใช้งานไม่ได้กับ CMS ที่เราใช้ (ทุกอย่างอื่นทำได้)
Erik Funkenbusch

@Mystere Man: ไม่ถูกต้อง หยุดทำซ้ำความคิดของคุณและดูว่าการกำหนดค่าแต่ละเบราว์เซอร์ให้คุณ หากคุณไม่ได้ใช้ความพยายามในการอ่านเอกสารจริง ๆ คุณจะไม่มีทางแก้ไขปัญหาของคุณได้เพราะคุณกำลังถามอะไรบางอย่างที่เฉพาะเจาะจงมากเกินไปซึ่งไม่ได้นำไปใช้กับคนอื่น ๆ อย่างที่ฉันพูดไว้ก่อนหน้านี้ แต่ดูเหมือนคุณจะไม่ได้อ่าน: เบราว์เซอร์ใด ๆ ที่อนุญาตให้คุณตั้งค่าพร็อกซีเซิร์ฟเวอร์สำหรับเบราว์เซอร์นั้น Google Chrome ให้CLI--proxy-server=พารามิเตอร์
Tamara Wijsman

1
อืมฉันอาจจะผิดเกี่ยวกับ Safari เพราะฉันไม่ได้ใช้งานมาระยะหนึ่งแล้ว แต่ฉันคิดว่าฉันเข้าใจผิดคุณทำไมคุณต้องการมีพร็อกซีเซิร์ฟเวอร์ที่แตกต่างกันในทุกเบราว์เซอร์ ฉันสับสนเพราะเหตุใดบางอย่างเช่น "x.com = production; stage.x.com = staging; dev.x.com = development" จะไม่ทำงานสำหรับคุณเมื่อได้รับ IP และการเปลี่ยนเส้นทางส่วนหัวของโฮสต์บนเซิร์ฟเวอร์ ...
Tamara Wijsman

1

ไม่ทราบว่าสิ่งนี้สะดวกเพียงพอสำหรับคุณหรือไม่ แต่วิธีแก้ไขปัญหาหนึ่งที่เป็นไปได้คือติดตั้ง IIS บนเครื่องด้วยเบราว์เซอร์และจัดเตรียมสคริปต์ฝั่งเซิร์ฟเวอร์ (เช่น ASP.net, PHP, Ruby ... ) ที่เปลี่ยนhostsไฟล์และ จากนั้นเปลี่ยนเส้นทางไปยังหน้าจริง ในเบราว์เซอร์ของคุณคุณจะสร้างบุ๊กมาร์กให้กับสคริปต์นั้นตัวอย่างเช่นhttp://localhost/config_ie.rbการเปลี่ยนแปลงhostsไฟล์ (ต้องมีการอนุญาตที่ถูกต้องในไฟล์นั้น) จากนั้นทำการ 302-redirct ไปยังหน้าจริง


1
ส่วนที่คนส่วนใหญ่ไม่เข้าใจเกี่ยวกับเรื่องนี้คือเพื่อให้สามารถทำงานได้อย่างมีประสิทธิภาพคุณต้องสามารถเรียกใช้หลายเบราว์เซอร์พร้อมกันโดยใช้การแมป host / ip ที่แตกต่างกัน ตัวอย่างเช่นฉันต้องมีทั้งอินสแตนซ์การผลิตและการทดสอบและการดีบักของฉันเปิดในอินสแตนซ์เบราว์เซอร์ที่แตกต่างกัน แต่ละอันจะต้องใช้ชื่อโฮสต์เดียวกัน (เนื่องจากการจับคู่ชื่อโฮสต์ HTTP 1.1 จะแมปไซต์ที่ถูกต้องตามชื่อโฮสต์) หากคุณเพียงแค่เปลี่ยนไฟล์โฮสต์ตอนนี้ทุกอินสแตนซ์ของเบราว์เซอร์จะจับคู่กับเซิร์ฟเวอร์ใหม่ไม่ใช่เพียงแค่อินสแตนซ์เดียวของมัน
Erik Funkenbusch

@Erik Funkenbusch: ขอบคุณสำหรับการชี้แจง แนวคิดที่เหลืออยู่ของฉัน: a) หนึ่งแนวคิดจะใช้บางสิ่งบางอย่างเช่น filesystem virtualisation ซึ่งเรียกว่า "Data Redirection" ใน Windows และโดยปกติจะใช้สำหรับ UAC เพื่อสนับสนุนแอปพลิเคชันรุ่นเก่าที่เขียนข้อมูลไปยังเส้นทางที่มีความละเอียดอ่อน อาจมีตัวเลือกบางอย่างที่ช่วยให้คุณสามารถใช้เพื่อวัตถุประสงค์ของคุณเอง จากนั้นคุณสามารถมีhostsไฟล์ที่กำหนดเองสำหรับทุกขั้นตอน b) การสกัดกั้น DNS ในพื้นที่: คำขอจาก "iexplore.exe" ฯลฯ สามารถจัดการได้ตามรายการที่คุณจัดหา - มีความคิดที่คุณชอบบ้างไหม?
Michael Kremser

1

หาก VM แบบเต็มมากเกินไปโซลูชันที่อิงกับคอนเทนเนอร์อาจทำ

หากเรากำลังพูดถึง linux ที่นี่lxcอาจเป็นทางออกที่เป็นไปได้

นอกเหนือจากนั้น - แม้แต่ VM แบบเต็มที่มี X11-linux ที่น้อยที่สุดก็ไม่ได้มีขนาดใหญ่ (ดิสก์สูงสุด 2 GB) และไม่ใช้ทรัพยากรจำนวนมาก (สูงสุด 512 MB RAM) กับฮาร์ดแวร์ในปัจจุบัน ...

LubuntuVM อาจจะทำที่นี่


ฉันพบ RAM และการประมวลผลก็โอเค ดิสก์ที่ใช้ร่วมกันเป็นสิ่งที่ทำให้ระบบพิการ
jww

0

วิธีแก้ปัญหาที่ค่อนข้างง่ายวิธีหนึ่ง (แต่อาจใช้ทรัพยากรมากเล็กน้อย) จะมีเครื่องเสมือนสองสามเครื่องที่ใช้งานอยู่ในโฮสต์ของคุณ เครื่องเสมือนแต่ละเครื่องมีไฟล์โฮสต์เป็นของตัวเอง

ดังนั้นคุณจะมีเครื่องเสมือนหนึ่งเครื่องสำหรับสภาพแวดล้อมการจัดเตรียมเครื่องหนึ่งสำหรับการผลิตเป็นต้น


บางทีคุณควรอ่านสองความคิดเห็นแรกภายใต้คำถาม สิ่งนี้ได้รับการแก้ไขเมื่อ 4 ปีก่อน
Erik Funkenbusch

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

VMs สองตัวจะทำลายเวิร์กสเตชันส่วนใหญ่เนื่องจากคอขวดดิสก์ที่ใช้ร่วมกัน ฉันต้องทนทุกข์ทรมานกับเปิด VM หนึ่ง (หนึ่งคือ Mac Mac Book Pro ที่ทันสมัยพร้อมด้วยแกนรูปสี่เหลี่ยมคู่; ที่สองเป็นแล็ปท็อปอัสซุสที่ทันสมัยที่มีแกนรูปสี่เหลี่ยมเดียว) VMs สองตัวอาจเจ็บปวด
jww
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.