ตำแหน่งไฟล์การตั้งค่า IIS7


99

IIS7 บันทึกคอนฟิกูเรชันสำหรับไดเร็กทอรี / แอ็พพลิเคชันเสมือนแต่ละรายการและพา ธ ฟิสิคัลไว้ที่ใด

มันเป็นไฟล์ XML หรือไม่? และถ้าเป็นเช่นนั้นการแก้ไขไฟล์ XML นี้จะส่งผลต่อการกำหนดค่า IIS (หลังจากรีสตาร์ท) หรือไม่


คำตอบ:


155

มันเสียงเหมือนคุณกำลังมองหาซึ่งตั้งอยู่ในapplicationHost.configC:\Windows\System32\inetsrv\config

ใช่มันเป็นไฟล์ XML และใช่การแก้ไขไฟล์ด้วยมือจะส่งผลต่อการกำหนดค่า IIS หลังจากรีสตาร์ท คุณสามารถคิดว่า IIS Manager เป็นส่วนหน้าของ GUI สำหรับการแก้ไขapplicationHost.configและweb.config.


ไฟล์ถูกล็อคหรือไม่? (ในขณะที่กำลังทำงานอยู่?) ฉันสามารถแก้ไขโดยไม่ต้องปลดล็อคได้หรือไม่?
Royi Namir

2
ไม่มันไม่ได้ล็อค คุณอาจต้องการทำสำเนาก่อนที่จะทำการแก้ไข
RickNZ

1
นอกจากนี้ไฟล์อาจไม่แสดงข้อมูลจริงสำหรับการเข้าถึงที่ไม่ใช่ผู้ดูแลระบบตามที่อธิบายไว้ในคำถามนี้และแสดงความคิดเห็นต่อคำตอบ
Pavel K

9
เมื่อรีสตาร์ทต้องรีบูต Windows เต็มรูปแบบไม่ใช่แค่ IISRESET
Markive

2
ดูเหมือนว่า Windows Server 2012 R2 จะไม่ต้องการการรีสตาร์ทอย่างน้อยที่สุดเมื่อเพิ่มพูลแอปพลิเคชันและเว็บไซต์ใหม่
James Skemp

55

ตรวจสอบคำตอบจากที่นี่ด้วย: ไม่สามารถแก้ไข 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 บิตเช่นแผ่นจดบันทึกปกติที่มาพร้อมกับหน้าต่าง


12
อีกวิธีหนึ่งคือการใช้การดูแลระบบ c $ เพื่อให้โปรแกรม 32 บิตอ่านเขียนเหมือนกับว่าเป็น 64 บิตเนื่องจากบริการแชร์ไฟล์ windows เป็น 64 บิต: \\yourservername\c$\Windows\System32\inetsrv\config
Tim Lewis

คุณยังสามารถใช้ข้อมูลจาก @TimLewis และใช้ชื่อเครื่องของคุณได้หากเป็นเครื่องในพื้นที่ของคุณที่คุณต้องการแก้ไขด้วยโปรแกรมแก้ไขแบบ 32 บิต
แฮ็กเกอร์

แค่อยากจะทราบว่า Notepad ++ เป็น 64 บิตเต็มในขณะนี้
Alex
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.