Sự cố khi chạy trang web .net framework 4.0 trên iis 7.0


119

Này, tôi gặp sự cố khi chạy .NET framework 4.0trang web IIS7.0. lỗi tôi mắc phải là:

Lỗi HTTP 404.2 - Không tìm thấy "Không thể phục vụ trang bạn đang yêu cầu do cài đặt ISAPICGIdanh sách Hạn chế trên máy chủ Web".

Module : IsapiModule , 
Notification : ExecuteRequestHandler, 
Handler : PageHandlerFactory-ISAPI-4.0_32bit , 
Error Code : 0x800704ec

Câu trả lời:


289

Đi tới trình quản lý IIS và nhấp vào tên máy chủ. Sau đó nhấp vào biểu tượng "ISAPI và CGI Restrictions" dưới tiêu đề IIS. Thay đổi ASP.NET 4.0 từ "Không được phép" thành "Được phép".


44
nhấn mạnh: nhấp trên SERVER TÊN không SITE NAME để tìm ra tùy chọn
MacGyver

1
thực ra, tôi thậm chí không có tùy chọn CGI. Tôi đang sử dụng windows 7, 64 bit. Cố gắng để ssrs làm việc.
Steam

Người đàn ông bạn đã tiết kiệm thời gian của tôi :) Cảm ơn :)
Anton Baksheiev

2
đảm bảo bạn bắt đầu IIS với tư cách Quản trị viên :)
Naveed Ahmad

Cho ít nhất hôm nay, bạn là người yêu thích của tôi. Điều này đã khắc phục sự cố mà tôi đã theo đuổi trong vài giờ. Câu trả lời chính xác.
asantaballa

8

Nếu bạn xem trong ISAPI và Các hạn chế CGI và mọi thứ đã được đặt thành Cho phép , thì hãy đảm bảo rằng các trình xử lý ASP.NET v4.0.30319 đều có trong danh sách. Trong trường hợp của tôi, họ không. Điều này có thể dễ dàng bỏ qua.


Tôi đã thêm một cái cho 32 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dllvà một cái khác cho 64 bit %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll. Bạn có thể đặt tên chúng giống nhau ASP.NET v4.0.30319.

Chọn Cho phép đường dẫn tiện ích mở rộng thực thi .


6
  1. Chuyển đến Trình quản lý IIS.
  2. mở tên máy chủ như thế nào (PC-Name)\.
  3. sau đó nhấp đúp vào ISAPI và CGI Restrict.
  4. sau đó chọn ASP.NET v4.0.30319 (32-bit) Cho phép hạn chế.

6

Trong trường hợp của tôi, vấn đề nghiêm trọng hơn: hóa ra asp.net không được đăng ký chính xác.

Phản hồi này hoạt động tốt .

chỉ cần chạy lệnh sau tại dấu nhắc lệnh

%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

Nếu tôi sử dụng hệ thống 32 bit, nó sẽ trông giống như sau:

%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i

3

Bước 1: Mở IIS và nhấp vào tên máy chủ Bước 2. Nhấp đúp vào “ISAPI và CGI Restrictions” Bước 3. Nhấp chuột phải vào ASP.NET v4.0.30319 và chọn “allow”

Sau khi Dừng và Khởi động Dịch vụ Xuất bản Web Toàn cầu

1. Đi tới Bắt đầu> Tất cả chương trình> Công cụ quản trị> Dịch vụ. 2. trong danh sách dịch vụ, bấm chuột phải vào World Wide Web Publishing Service, sau đó bấm Dừng (để dừng dịch vụ), Bắt đầu (để bắt đầu sau khi nó đã bị dừng) hoặc Khởi động lại (để khởi động lại dịch vụ khi nó đang chạy ).

Pramesh


2

Nếu bạn đang chạy Delphi hoặc CGI được biên dịch gốc khác, giải pháp này sẽ hoạt động:

  1. Như đã chỉ ra, đi tới trình quản lý IIS và nhấp vào tên máy chủ. Sau đó nhấp vào biểu tượng "ISAPI và CGI Restrictions" dưới tiêu đề IIS.

  2. Nếu bạn đã cho phép mọi thứ, nó vẫn sẽ không hoạt động. Bạn cần nhấp vào "Chỉnh sửa cài đặt tính năng" trong Tác vụ (ở bên phải) và chọn "Cho phép mô-đun CGI không xác định" hoặc "Cho phép mô-đun ISAPI không xác định" tương ứng.

  3. Bấm OK


Đang đập đầu của tôi cho một vài ngày và phải làm điều này "Chỉnh sửa Cài đặt tính năng" để có được một công ty Single Sign-On plugin để làm việc ở chế độ Classic
Jay Sullivan

1

Trong trường hợp của chúng tôi, giải pháp cho vấn đề này không liên quan đến cài đặt "Hạn chế ISAPI và CGI". Lỗi bắt đầu xảy ra sau khi nhân viên vận hành vô tình nâng cấp máy chủ lên .NET 4.5, sau đó lại hạ cấp xuống .NET 4.0. Điều này khiến một số trang web IIS quên các nhóm ứng dụng chính xác của chúng và nó khiến một số nhóm ứng dụng chuyển từ .NET Framework 4.0 sang 2.0. Thay đổi lại các cài đặt này đã khắc phục sự cố.


1

Nếu bạn xem trong ISAPI và CGI Restrictions , và mọi thứ đã được đặt thành Cho phép và ASP.NET được cài đặt là v4.0.30319 , thì ở bên phải, tại bảng " Tác vụ ", hãy nhấp vào " Chỉnh sửa cài đặt tính năng ... "và chọn cả hai hộp. Trong trường hợp của tôi, họ không.


0

Hãy thử thay đổi Chế độ đường ống mang theo AppPool từ "Tích hợp" thành "Cổ điển".


0

Tùy thuộc vào loại ứng dụng, một điều khác cần kiểm tra là trong Cài đặt nâng cao cho Nhóm ứng dụng, hãy đảm bảo "Bật ứng dụng 32-bit" được đặt thành Đúng.

Tôi đã kiểm tra mọi thứ trong chuỗi này khi gặp sự cố này nhưng tất cả đều đã được thiết lập chính xác, tôi thấy đây là vấn đề đối với tôi.



-1

Sau khi ánh xạ ứng dụng, hãy làm theo các bước sau

Mở IIS Nhấp vào Ứng dụng Hồ bơi Nhấp đúp vào trang web Thay đổi chế độ Quản lý đường ống thành "cổ điển" nhấp Ok.

Ow thay đổi Phiên bản .Net Framework thành phiên bản thấp hơn

Sau đó bấm Ok

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.