ไม่สามารถรับอะไรได้ยกเว้น 403 จากเว็บไซต์. Net 4.5


10

สถานการณ์จำลอง: ล้าง Server 2008 R2 ติดตั้งด้วยบทบาท IIS

การติดตั้ง Framework 3.5 (คุณลักษณะเซิร์ฟเวอร์) การติดตั้ง Framework 4.5 RC (ดาวน์โหลด MS)

ดำเนินการ

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis.exe -i

(ฉันจะใช้-iruกับเซิร์ฟเวอร์ที่มีอยู่ แต่นี่คือโครงสร้างที่สะอาด)

เผยแพร่ผ่านระบบไฟล์ (การแบ่งปัน SMB)

แปลงโฟลเดอร์เป็นแอปพลิเคชันโดยใช้. Net 4.0 Integrated App Pool

หยุด / รีสตาร์ททุกอย่าง

การเรียกดูlocalhost/TestAppผลลัพธ์ใน 403.14 (ห้ามการสืบค้นไดเรกทอรี)

ฉันพลาดขั้นตอนใดไป ไซต์ที่เป็นปัญหาคือ MVC4 และกำหนดเป้าหมายเป็น 4.5 RC framework


คุณแน่ใจหรือไม่ว่าคุณกำลังใช้เอกสารเริ่มต้นอยู่ในรายการเอกสารเริ่มต้น
Brent Pabst

@BrentPabst เนื่องจาก MVC ไม่มีเอกสารเริ่มต้น - ขึ้นอยู่กับการเขียน URL ใหม่โดย IIS เพื่อพิจารณาว่าคอนโทรลเลอร์ / แอ็คชันใดที่จะดำเนินการ หากสิ่งนั้นล้มเหลวฉันคาดว่าจะมีข้อความแสดงข้อผิดพลาดอื่น รู้สึกเหมือนการแยกวิเคราะห์ Url ไม่ถูกเรียกใช้ซึ่งมักจะหมายความว่า. Net ไม่ได้ลงทะเบียนอย่างถูกต้องใน IIS ต้องบอกว่ามันเป็นลงทะเบียนและฉันได้ติดตั้งบทบาท IIS ที่เหมาะสม (จริง ๆ แล้วตอนนี้ฉันมีบทบาท IIS ทั้งหมด ) ดังนั้นฉันจึงไม่แน่ใจว่าจะวินิจฉัยได้ดีที่สุดอย่างไร
Basic

ขออภัยฉันตาบอดและพลาดส่วน 4.5 MVC ทำไมคุณถึงลงทะเบียน. NET 4.0 หลังจากติดตั้ง 4.5 ฉันไม่เคยลงทะเบียน. NET บนเว็บเซิร์ฟเวอร์ใด ๆ เลยเพราะโปรแกรมติดตั้งทำโดยอัตโนมัติ อย่างไรก็ตามฉันคิดว่าคุณลงทะเบียนตัวจัดการ. NET ผิด อย่างไรก็ตามด้วย 4.5 และ MVC อย่างน้อยคุณควรเห็น YSOD ที่ระบุว่า ASAX ทั่วโลกไม่สามารถโหลดได้
Brent Pabst

@BrentPabst ฉันต้องaspnet_regiisก่อน แต่เฉพาะเมื่อมีการติดตั้ง IIS หลังจาก . Net (ดูเหมือนสมเหตุสมผล) นั่นไม่ใช่กรณีที่นี่ แต่เนื่องจากคำตอบที่แนะนำจำนวนมากพูดถึงสิ่งนี้ว่าเป็นปัญหาฉันคิดว่าฉันควรจะไปแล้ว 4.5 แทนที่ 4.0 ทั้งหมด ฉันตกลงที่จะไม่ให้ YSOD แปลก - อย่างที่บอกไปแล้วมันดูเหมือนว่ามันไม่ได้ปฏิบัติต่อมันเหมือนเป็นหน้า. Net เลย
พื้นฐาน

1
ดีใจที่คุณเข้าใจทุกอย่าง หัวของคุณต้องพร้อมที่จะระเบิด!
Brent Pabst

คำตอบ:


21

ฉันมีปัญหาที่คล้ายกัน กระทู้นี้/programming/2374957/asp-net-mvc-on-iis-7-5 แก้ไขให้ฉันแล้ว โดยทั่วไปลองเพิ่มสิ่งนี้ลงในเว็บของคุณ config:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/> 
</system.webServer>

หากงานนั้นคุณสามารถลองลบออกและติดตั้งโปรแกรมแก้ไขด่วนนี้แทน: http://www.microsoft.com/en-us/download/details.aspx?displaylang=th&id=5272


ขอบคุณที่แก้ไขมัน ฉันตีหัวของฉันกับสิ่งนี้มาหลายชั่วโมง คุณคงไม่เชื่อว่าความเศร้าโศกที่ฉันได้รับจากออฟฟิศ "linux guy" ในกรณีนี้ฉันคิดว่าเขามีประเด็น ...
พื้นฐาน

1
ขอบคุณ! ในกรณีของฉัน runAllManagedModulesForAllRequests ไม่ได้ช่วย แต่แก้ไขได้
NateTheGreat

สำหรับฉันยังเรียกใช้ AllManagedModulesForAllRequests ไม่ได้ช่วย แต่โปรแกรมแก้ไขด่วนได้ - ขอบคุณสำหรับลิงค์
Anil Purswani

คุณบันทึกวันของฉัน!
labilbe

0

UI แตกต่างกันเล็กน้อยใน Windows Server เวอร์ชันที่ใหม่กว่า ที่นี่คุณต้องเปิดใช้งาน ASP.Net เพื่อให้ทำงานบน IIS ได้

แก้ไข IIS & Asp.net

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