แก้ไขไฟล์การกำหนดค่า IIS 7 applicationHost.config โดยตรง


38

ฉันรู้ว่า IIS 7+ ตอนนี้ใช้ไฟล์กำหนดค่า XML แทนเมแทบอส ฉันรู้ด้วยเช่นกันว่าถ้าฉันแก้ไขไฟล์ web.config สำหรับไซต์ที่กำหนด IIS จะตรวจจับการเปลี่ยนแปลงโดยอัตโนมัติและดำเนินการเปลี่ยนแปลงการกำหนดค่าที่สอดคล้องกันโดยอัตโนมัติ

อย่างไรก็ตามสิ่งนี้ใช้กับไฟล์การตั้งค่า applicationHost.config ระดับเซิร์ฟเวอร์หรือไม่ (โดยปกติจะอยู่ใน C: \ windows \ system32 \ inetsrv \ config) โดยเฉพาะมันปลอดภัยหรือไม่ที่จะแก้ไขไฟล์นี้อย่างระมัดระวังแทนที่จะใช้ IIS Manager หรือยูทิลิตี้บรรทัดคำสั่ง appcmd? ฉันไม่พบสิ่งใดในเอกสารที่กล่าวว่าไม่เป็นไรหรือไม่ถูกต้องในการทำเช่นนี้

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

คำตอบ:


50

ตรวจสอบคำตอบนี้จากที่นี่ด้วย: ไม่สามารถแก้ไข applicationhost.config ด้วยตนเอง

คำตอบนั้นง่ายถ้าไม่ชัดเจน: win2008 เป็น 64 บิต, notepad ++ เป็น 32 บิต เมื่อคุณนำทางไปยัง Windows \ System32 \ inetsrv \ config โดยใช้ explorer คุณกำลังใช้โปรแกรม 64 บิตเพื่อค้นหาไฟล์ เมื่อคุณเปิดไฟล์โดยใช้ notepad ++ คุณกำลังพยายามเปิดโดยใช้โปรแกรม 32 บิต ความสับสนเกิดขึ้นเพราะแทนที่จะบอกคุณว่านี่คือสิ่งที่คุณกำลังทำ windows อนุญาตให้คุณเปิดไฟล์ แต่เมื่อคุณบันทึกเส้นทางของไฟล์จะถูกแมปอย่างโปร่งใสกับ Windows \ SysWOW64 \ inetsrv \ Config

ดังนั้นในทางปฏิบัติสิ่งที่เกิดขึ้นคือคุณเปิด applicationhost.config โดยใช้ notepad ++, ทำการเปลี่ยนแปลง, บันทึกไฟล์; แต่แทนที่จะเขียนทับต้นฉบับคุณกำลังบันทึกสำเนา 32 บิตใน Windows \ SysWOW64 \ inetsrv \ Config ดังนั้นคุณจึงไม่ได้ทำการเปลี่ยนแปลงเวอร์ชันที่ IIS ใช้จริง หากคุณนำทางไปยัง Windows \ SysWOW64 \ inetsrv \ Config คุณจะพบไฟล์ที่คุณเพิ่งบันทึก

ทำอย่างไรจึงจะได้สิ่งนี้ ง่าย - ใช้โปรแกรมแก้ไขข้อความ 64 บิตเช่นแผ่นจดบันทึกปกติที่มาพร้อมกับ windows


7
บันทึกเบคอนของฉันด้วยอันนี้ ... เป็นเรื่องแปลกที่ทำให้ฉันคิดว่าฉันกำลังบ้า ขอบคุณ!
brettwgreen

สิ่งนี้ดูเหมือนจะไม่เป็นปัญหาอีกต่อไปใน Windows 10 ดังนั้นมันจึงเกิดความสับสนอย่างมากเมื่อเกิดขึ้นในเครื่อง Windows 7 และ Windows Server 2012 ของเรา
Dzyann

ขอบคุณ @ Markive นี่เป็นปัญหาที่สร้างความสับสนได้อย่างรวดเร็วในตอนแรก
Moby Stunt Double

9

มีความปลอดภัยหรือไม่ที่จะแก้ไขไฟล์นี้อย่างระมัดระวังแทนที่จะใช้ IIS Manager หรือยูทิลิตี้บรรทัดคำสั่ง appcmd?

ใช่ คุณสามารถแก้ไขไฟล์ applicationhost.config ได้โดยตรงหากคุณเป็นผู้ดูแลระบบของเครื่อง นั่นคือทั้งหมดที่เครื่องมือการดูแลระบบทำได้เช่นกัน

หากคุณประสบปัญหาข้อมูลสำรองอย่างน้อย 20 นาทีจะถูกเก็บไว้ใน\ inetpub \ historyตามค่าเริ่มต้น


ขอบคุณ! ฉันไม่รู้ว่าทำไมพวกเขาถึงไม่ทำเอกสารนี้อีก
lunadesign


0

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


ตามstackoverflow.com/questions/8635884/…และความคิดเห็นจำเป็นต้องรีบูตเต็ม
yoel halb
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.