การสร้างไดเร็กทอรีเสมือนล้มเหลวด้วยข้อผิดพลาด


90

ฉันไม่สามารถแก้ปัญหานี้ได้

ป้อนคำอธิบายภาพที่นี่

ฉันแนะนำว่าฉันต้องเปลี่ยนc:\Windows\System32\drivers\etc\hostsไฟล์และเพิ่มหลังจากนั้น

# localhost name resolution is handled within DNS itself.

บรรทัดถัดไป:

127.0.0.1       mysite.dev

แต่มันไม่ได้ช่วยอะไร ข้อเสนอแนะใด ๆ ?

เกิดข้อผิดพลาดocсurrsเมื่อฉันพยายามเปิดโครงการเว็บไซต์ใน Microsoft Visual Studio 2012


ตรวจสอบสิ่งนี้: stonycreektechnologies.com/2011/03/15/…
fankt

เป็นลิงค์ google ที่สองหรือสามฉันได้รับขณะค้นหาโซลูชันในอินเทอร์เน็ต มันไม่ใช่สิ่งที่ฉันต้องการ
Dmytro

คำตอบ:


169

บ่อยกว่านั้นอย่างน้อยในกรณีของฉันสิ่งนี้เกิดขึ้นเมื่อ*.csproj.userไฟล์อยู่ในไดเร็กทอรีโครงการและมี<UseIISExpress>true</UseIISExpress>อยู่ในนั้น

หรืออีกวิธีหนึ่งดังกล่าวโดยZachary ดคุณยังสามารถเพียง: ใกล้ Visual Studio ลบ*.csproj.userไฟล์และเปิด Visual Studio สิ่งนี้จะบังคับให้ VS สร้างไฟล์ใหม่


1
สิ่งนี้ไม่ได้ผลสำหรับฉันหลังจากอัปเดต vs2017 15.7.1 ฉันพบปัญหานี้
Marsen Lin

ขอบคุณมาก!
Reuben Tanner

2
สิ่งนี้ไม่ได้ผลสำหรับฉัน ฉันลบ.vsโฟลเดอร์แล้ว ลบแล้ว*.csproj.userและยังคงให้ข้อผิดพลาดเดิม
Zapnologica

1
สิ่งนี้ใช้ได้กับฉันด้วยฉันเพิ่งลบไฟล์ [myproj] .csproj.user และโหลด - นี่คือใน VS2019 - ทำงานในโหมดผู้ดูแลระบบ
ทำเครื่องหมาย

33

ฉันพบวิธีแก้ปัญหาแล้ว ฉันต้องแก้ไขC:\Users\Administrator\Documents\IISExpress\config\applicationhost.configไฟล์โดยเพิ่มไซต์ของฉันไปยัง<sites>โหนด


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

อ๊ะในขณะที่ความคิดเห็น "ที่เป็นประโยชน์" ก่อนหน้าของฉันถูกต้อง แต่ก็ไม่ใช่สาเหตุหลักของข้อความแสดงข้อผิดพลาดที่เป็นความลับ นั่นจะเป็นความจริงที่ว่าโฟลเดอร์. vs ที่สร้างขึ้นใหม่โดยอัตโนมัติได้รับการเข้ารหัสแบบ NTFS กลับสู่สภาวะปกติโดยไม่จำเป็นต้องแก้ไขไฟล์โปรเจ็กต์หลังจากถอดรหัสโฟลเดอร์นั้น
saminpa

ใช้งานได้แม้หลังจาก 6 ปี ฉันพบปัญหานี้กับ vs2017 เวอร์ชันล่าสุด แต่แก้ไขได้โดยใช้ข้อมูลข้างต้น
Awais

เมื่อใดที่ใช้ local applicaionhost.configกับหนึ่งในโฟลเดอร์โซลูชัน
Zapnologica

19

คุณสามารถเลือกที่จะติดตั้ง IIS ในเครื่องและแก้ไขแท็กสองสามแท็กในไฟล์. csproj เปิดไฟล์ csproj ของคุณและไปที่ส่วน<VisualStudio>จากนั้นค้นหาแท็กที่<UseIIS>True</UseIIS> ต้องตั้งค่าเป็นจริงจากนั้นไปที่แท็ก: <IISUrl>และตั้งค่าด้วยที่อยู่ URL ที่จะโฮสต์แอปพลิเคชันสำหรับการทดสอบ:

<VisualStudio>
      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
        <WebProjectProperties>
          <UseIIS>True</UseIIS>
          <AutoAssignPort>False</AutoAssignPort>
          <DevelopmentServerPort></DevelopmentServerPort>
          <DevelopmentServerVPath>/</DevelopmentServerVPath>
          **<IISUrl>http://localhost/myWebSiteAppSample</IISUrl>**
          <NTLMAuthentication>False</NTLMAuthentication>
          <UseCustomServer>False</UseCustomServer>
          <CustomServerUrl>
          </CustomServerUrl>
          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>

และนั่นคือ. ตอนนี้คุณสามารถโหลดโครงการของคุณได้ตามปกติ


ตลกนี่คือคำตอบสำหรับกรณีของฉัน
กาแฟ

3
หมายเหตุ: **เครื่องหมายดอกจันไม่ควรอยู่ในไฟล์ แน่นอน.
ErikE

16

ปัญหาคือการตั้งค่าโครงการของคุณที่จะดำเนินการใน IIS ภายในเครื่องและไม่มี URL ที่ระบุ

มีทางเลือกที่คุณสามารถทำได้เพื่อแก้ไขปัญหา

ตัวเลือกที่ 1 : (ใช้ IIS Express)

1. ) เปิดไฟล์โครงการเว็บ. csproj ของคุณเป็น XAML หรือในแผ่นจดบันทึก

2. ) ค้นหาคุณสมบัติเหล่านี้และตั้งค่าตามความต้องการของคุณ

UseIIS = false

UseIISExpress = จริง

และนั่นแหล่ะ

ตัวเลือกที่ 2 : (ใช้ IIS ในเครื่อง)

ทำตามขั้นตอนตัวเลือก 1 แต่เปลี่ยนคุณสมบัติต่อไปนี้

UseIIS = จริง

IISUrl = https: // localhost

UseIISExpress = false


ตัวเลือกที่ 1 ไม่ทำงาน
Metin Atalay

ตัวเลือกที่ 2 ใช้ได้ผลสำหรับฉันเพียงแค่ต้องตั้ง UseIIS = true
Joshlo

ตัวเลือกที่ 2 ทำงาน :)
Senura Dissanayake

9

ปัญหานี้สามารถแก้ไขได้โดยการลบโฟลเดอร์ชื่อ. vs ในไดเร็กทอรีโปรเจ็กต์

วิธีนี้ช่วยแก้ปัญหาได้เนื่องจากในขณะที่เปิดโปรเจ็กต์หลังจากลบไฟล์. vs จะสร้างโฟลเดอร์เดียวกันที่มีการกำหนดค่าโฟลเดอร์ย่อยและโฟลเดอร์ที่มีชื่อโปรเจ็กต์

applicationhostโฟลเดอร์ config มีการตั้งค่าที่จำเป็นเพื่อให้รันโปรเจ็กต์สำเร็จ


6

ฉันไปที่ไดเร็กทอรีที่ตั้งชื่อในข้อผิดพลาดและเปลี่ยนชื่อ applicationhost.config และรีสตาร์ทและ VS สร้างไฟล์ใหม่และทำงานได้ดี


2
  • พยายามหลายวิธีที่กล่าวถึงในคำตอบ แต่สิ่งที่ทำงานที่สุดสำหรับฉันคือการแลกเปลี่ยน<IISUrl>ของกับ.csproj <CustomServerUrl>

แก้ไข:

  • ข้างต้นไม่ได้แก้ปัญหาที่แท้จริงของปัญหาให้ฉัน อย่างไรก็ตามหากคุณทำการอัปเดต windows เมื่อเร็ว ๆ นี้บางทีอาจเป็นสาเหตุที่ทำให้เกิดปัญหา ลองดำเนินการnetsh http add iplisten 0.0.0.0และดูว่าสามารถแก้ปัญหาได้หรือไม่

หวังว่าสิ่งเหล่านี้จะช่วยให้ใครบางคนยังคงมองหาวิธีอยู่


1
จากทุกสิ่ง (และฉันหมายถึงทั้งหมด) นี่<CustomServerUrl>คือสิ่งที่ทำให้ฉันหลอกลวงได้ในที่สุด ขอบคุณมาก!
Ash

1

ฉันไม่รู้ว่าทำไมapplicationhost.configไฟล์ของฉันถึงหายไปจากC:\Users\Administrator\Documents\IISExpress\config\โฟลเดอร์โดยสิ้นเชิง

การคัดลอก / วางC:\inetpub\history\applicationhost.configลงในโฟลเดอร์นั้นดูเหมือนจะช่วยแก้ปัญหาให้ฉันได้

มีความคิดจากที่นี่


ในไฟล์เคสของฉันเสียหาย ดังนั้นฉันจึงลบมันและแทนที่ด้วยไฟล์ applicationhost.config ที่พบในการค้นหาระบบ ฉันไม่มีสิทธิ์ผู้ดูแลระบบจึงไม่สามารถเข้าถึง inetpub \ history ฉันคิดว่า Visual studio มักจะคาดหวังไฟล์ config นี้ แต่หลังจากนั้นแม้ว่าฉันจะลบไฟล์ applicationhost.config ซ้ำ ๆ จาก IISExpress \ config location VS ยังคงสร้างมันขึ้นมา ดูเหมือนการตั้งค่าบางครั้งจะเสียหาย แต่เมื่ออยู่ในแนวเดียวกับการตั้งค่าที่ถูกต้อง VS จะดูแลการตั้งค่าทั้งหมดของตัวเอง
kumar chandraketu

1
  1. เปิดคุณสมบัติ Windows "Internet Information Services" ในแผงควบคุม
  2. เปิดไฟล์ ".csproj" และค้นหา
  3. แก้ไขบรรทัดนี้ตามความต้องการของคุณ http: // localhost: 777 /
  4. เปิดโครงการ / โซลูชันทันที
  5. หากไม่สามารถโหลดอีกครั้งให้คลิกขวาที่โซลูชันแล้วเลือก "โหลดโครงการซ้ำ"

1

ฉันรู้ว่านี่อาจเป็นเหตุการณ์ที่เกิดขึ้นได้ยาก แต่ฉันคิดว่าจะวางไว้ที่นี่:

csprojไฟล์ของฉันถูกตั้งค่าเป็น "อ่านอย่างเดียว" (อย่าถามฉันว่าฉันจัดการอย่างไร) แต่หลังจากฉันปิดการเข้าถึง "อ่านอย่างเดียว" ทุกอย่างก็เรียบร้อยดี (VS2017)


0

ฉันประสบปัญหาเดียวกันเนื่องจากรหัสผ่านเครือข่ายของฉันเปลี่ยนฉันเปลี่ยนรหัสผ่านสำหรับเข้าสู่ระบบ NetExtendor แต่ฉันต้องเข้าสู่ระบบในแล็ปท็อปด้วยรหัสผ่านเดิม

ลองทำตามขั้นตอนเหล่านี้เพื่อแก้ไขปัญหานี้:

เข้าสู่ระบบคอมพิวเตอร์ด้วยรหัสผ่านใด ๆ ที่ใช้งานได้เข้าสู่ vpn ด้วยรหัสผ่านใดก็ตามที่ใช้งาน ctl-alt-del เพื่อล็อคพีซีจากนั้นใช้รหัสผ่านใหม่เพื่อปลดล็อก

มันได้ผลสำหรับฉัน :-)

ขอบคุณ!


0

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


0

ปัญหาของฉันเกิดจาก Windows 10 Defender ฉันเคยให้สิทธิ์ IIS ในอดีต แต่ดูเหมือนตอนนี้จะเพิกเฉย จะตรวจสอบในภายหลัง แต่ตอนนี้ฉันปิดใช้งานการเข้าถึงโฟลเดอร์ที่ควบคุมแล้วและใช้งานได้


0

ฉันต้องการเปิดโครงการที่ออกจาก Visual Studio 2017 ใน VS 2019 และพบกับปัญหาเดียวกัน ฉันพบปัญหาที่เกี่ยวข้องกับเวอร์ชัน วิธีแก้ปัญหาคือ: สร้างโครงการใหม่ใน VS ที่ใหม่กว่าและคัดลอกรหัสจาก VS รุ่นเก่า


ยินดีต้อนรับสู่ SO! ในคำถามไม่มีการกล่าวถึงการเปลี่ยนแปลงใด ๆ ในเวอร์ชัน VS เมื่อคุณโพสต์คำตอบตรวจสอบว่าคุณกำลังตอบคำถาม ถ้าไม่เช่นนั้นเพียงสร้างคำถามที่มีปัญหานี้และตอบตัวเองเพื่อช่วยชุมชน
David García Bodego


-1

ดังนั้นนี่คือขั้นตอนในการแก้ไข:

  1. ไปที่ไฟล์. csproj ของคุณ โดยปกติจะเป็นไดเร็กทอรีเดียวด้านล่างโซลูชัน (.sln)
  2. คลิกขวาและเปิดด้วยโปรแกรมแก้ไขข้อความ (notepad)
  3. ค้นหาแท็ก IISUrl และแทนที่เนื้อหาสำหรับhttp: // localhost: (YourPortNumber)
  4. บันทึกและโหลดโครงการของคุณใหม่!
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.