Ứng dụng Server 2012 IIS 8 MVC hiển thị trang chủ IIS mặc định hoặc lỗi 403/404


83

Chạy Microsoft Server 2012 RC bằng Ứng dụng VirtualBox miễn phí của Oracle. Đã sử dụng loại bộ điều hợp Mạng Cầu nối trong cài đặt VirtualBox. Đã cài đặt AD và DNS, IIS. Trong tùy chọn IIS, Công cụ quản lý, nhấp vào hộp Dịch vụ quản lý. Điều này cho phép tôi sử dụng tính năng "Triển khai Web" trong Visual Studio 2012 RC. Trên hệ điều hành khách, tôi chạy Windows 7 Ultimate.

Tôi đã có thể triển khai thành công Ứng dụng MVC 4 lên Trang web Mặc định IIS, nhưng nó không hiển thị. Thay vào đó, trang chủ IIS mặc định là. Tôi đã tắt trang chủ mặc định và làm mới trang hiển thị trang 403. Tôi đã thử gõ vào một trong các Chế độ xem và trang 404 được hiển thị.


4
Cảm ơn bạn! Những lựa chọn đó rất dễ bị bỏ lỡ. Bạn đã giúp tôi!
Jon Kragh

Windows 8 cũng bị như vậy!
joshcomley

Như Jon nói, thậm chí tôi đã làm vài IIS 8 thiết lập, tôi bỏ lỡ ngày hôm nay ...
Novkovski Stevo Bato

cảm ơn bạn vì điều này, đã khiến tôi phát điên lên
Spaceman

Câu trả lời:


31

Tôi đã dành 2 ngày để cố gắng tìm ra giải pháp cho vấn đề này, và cuối cùng đã làm được. Muốn chia sẻ với cộng đồng trong trường hợp nó giúp ích cho bất kỳ ai khác.

Tất cả các bài báo và thông báo diễn đàn tôi lướt qua trên Internet bắt đầu phản chiếu lẫn nhau dưới dạng này hay dạng khác.

Một giải pháp nói về việc đảm bảo bạn có cấu hình Nhóm ứng dụng phù hợp, sử dụng khung 4.0 và được tích hợp. [x] Đã xác nhận đã được đặt chính xác.

Một giải pháp mở rộng hướng khác để sử dụng "aspnet_regiis -i" hoặc "aspnet_regiis -ir" không hoạt động trên Microsoft Server 2012.

Một giải pháp khác nói về việc thêm phần sau vào web.config:

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

Tuy nhiên, IIS 8 đưa ra phản hồi cho điều này nói lên điều gì đó ảnh hưởng đến các cài đặt đó bị khóa từ cấp cấu hình cao hơn và không thể sử dụng được ở cấp Ứng dụng. Được rồi.

Cuối cùng tôi đã tìm ra một bài báo dẫn tôi đến trang sau: http://learn.iis.net/page.aspx/1097/iis-80-using-aspnet-35-and-aspnet-45

Giải pháp là quay lại Bảng điều khiển Microsoft Server 2012 và chọn tính năng "Thêm vai trò". Cuộn xuống thư mục gốc "Máy chủ Web (IIS)", mở rộng "Máy chủ Web", mở rộng "Phát triển ứng dụng" và chọn "ASP.NET 3.5" và "ASP.NET 4.5" và "Cài đặt".

Điều khiến tôi bối rối ban đầu là tôi đã không mở rộng "Phát triển ứng dụng", mà chọn IIS và tiếp tục. Ở bước tiếp theo, "Tính năng", "Tính năng .NET Framework 4.5" được chọn theo mặc định, vì vậy tôi đã chọn "Tính năng .NET Framework 3.5" và nghĩ rằng tất cả sẽ ổn.

Sau khi cài đặt các lựa chọn trong "Phát triển ứng dụng", Ứng dụng MVC 4.5 hoạt động theo cách chúng được thiết kế. Tôi hy vọng điều này sẽ giúp ích cho bất kỳ ai có thể gặp khó khăn, giống như tôi.


1
Rõ ràng điều này vẫn đang khiến mọi người đau đầu - vì vậy tôi đã chuyển câu trả lời của bạn thành một ... Câu trả lời. Hy vọng bạn không phiền ...
Shog9

Cảm ơn vì đăng. Bây giờ chúng ta có thể thêm yêu cầu của .NET 4.5.2 vào hỗn hợp cho phiên bản mới nhất của máy chủ Windows + IIS cho ứng dụng MVC 5. Rõ ràng cách duy nhất để thêm là tải xuống trực tiếp hoặc thông qua trình cài đặt Nền tảng web. Windows Features không có 4.5.2
sumitkm

Đây vẫn là trường hợp hôm nay (2017) ngay cả sau khi tôi đã cài đặt tất cả các bản cập nhật trên Windows Server 2012. Cảm ơn!
John Isaiah Carmona

0

Tôi đã chọn "Tính năng .NET Framework 3.5" và nghĩ rằng tất cả sẽ ổn !!! Không có hành động nào khác không được giúp đỡ. Khi vấn đề này xuất hiện một cách "đột ngột". Trong một thời gian mọi thứ đều hoạt động. Nhưng sau lần xuất bản tiếp theo, ứng dụng hoạt động trong vài phút, sau đó gặp lỗi 403.14


0

Tất cả những gì bạn cần chỉ là thay đổi chế độ gỡ lỗi biên dịch thành true trong cấu hình web và giữ nguyên thuộc tính khác. Mở Thư mục Xuất bản của bạn và mở tệp Cấu hình Web.

<configuration> <compilation debug="true"> </compilation> </configuration>

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.