Sự cố ứng dụng web (lỗi web.config) HTTP 500.19 với IIS7.5 và ASP.NET v2


146

Điều này đang khiến cả đội phát điên. Phải có một phần cấu hình sai đơn giản của IIS hoặc Máy chủ Web của chúng tôi, nhưng mỗi lần chúng tôi thử chạy ứng dụng web ASP.NET trên IIS 7.5, chúng tôi lại gặp lỗi sau ...

Đây là lỗi đầy đủ:

HTTP Error 500.19 - Internal Server Error

The requested page cannot be accessed because the related configuration  
data for the page is invalid.

`Detailed Error Information` 
Module              IIS Web Core
Notification        Unknown
Handler             Not yet determined
Error Code          0x8007000d
Config Error
Config File         \\?\E:\wwwroot\web.config
Requested URL       http://localhost:80/Default.aspx
Physical Path 
Logon Method        Not yet determined
Logon User          Not yet determined
Config Source
   -1: 
    0: 

Máy đang chạy Windows Server 2008 R2 . Chúng tôi đang phát triển Ứng dụng web bằng Visual Studio 2008 .

Theo Microsoft, mã 8007000d có nghĩa là có lỗi cú pháp trong web.config của chúng tôi - ngoại trừ dự án xây dựng và chạy tốt cục bộ. Nhìn vào web.config trong XML Notepad cũng không đưa ra bất kỳ lỗi cú pháp nào. Tôi cho rằng nó phải là một loại cấu hình kém về phía tôi ...?

Có ai biết nơi tôi có thể tìm thêm thông tin về lỗi không? Không có gì được hiển thị trong EventViewer, hoặc:

Không chắc chắn những gì khác sẽ hữu ích để đề cập đến ...

Hỗ trợ được đánh giá rất cao. Cảm ơn!

CẬP NHẬT! - POSTED WEB.CONFIG DƯỚI ĐÂY

Ok, vì tôi đã đăng câu hỏi ban đầu ở trên, tôi đã theo dõi các dòng chính xác trong web.config gây ra lỗi.

Dưới đây là các dòng (chúng xuất hiện giữa <System.webServer>các thẻ) ...

    <httpHandlers>
        <remove verb="*" path="*.asmx"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </httpHandlers>

Lưu ý: Nếu tôi xóa các dòng giữa các <httpHandlers>tôi vẫn nhận được lỗi. Tôi thực sự phải xóa <httpHandlers>(và các dòng giữa) để ngừng nhận được lỗi trên.

Tuy nhiên, khi tôi thực hiện điều này, tôi nhận được một lỗi 500,19 mới . Rất may, lần này IIS thực sự cho tôi biết bit nào của web.config đang gây ra sự cố ...

    <handlers>
        <remove name="WebServiceHandlerFactory-Integrated"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </handlers>

Nhìn vào những dòng này, rõ ràng vấn đề đã di chuyển xa hơn trong cùng một <system.webServer>thẻ sang <handlers>thẻ.

Lỗi mới cũng rõ ràng hơn và đặc biệt phàn nàn rằng nó không nhận ra thuộc tính "xác thực" (như đã thấy trên dòng thứ ba ở trên). Xóa thuộc tính này sau đó làm cho nó phàn nàn rằng cùng một dòng không có thuộc tính "tên" bắt buộc. Thêm thuộc tính này sau đó sẽ xuất hiện lỗi ASP.NET ...

Không thể tải tệp hoặc tập hợp 'System.web.Extensions, Version = 1.0.61025.0, Culture = trung tính, PublicKeyToken = f2cb5667dc123a56' hoặc một trong các phụ thuộc của nó. Hệ thống không thể tìm thấy các tập tin được chỉ định.

Rõ ràng tôi nghĩ rằng những lỗi mới này đã xuất hiện từ việc tôi xóa các <httpHandlers>thẻ ở vị trí đầu tiên - rõ ràng chúng cần thiết cho ứng dụng - vì vậy câu hỏi vẫn còn: Tại sao các thẻ này lại gây ra lỗi trong IIS ngay từ đầu? ??

Tôi có cần phải cài đặt một cái gì đó vào IIS để làm cho nó hoạt động với chúng không?

cám ơn lần nữa cho bất kì sự giúp đỡ nào.

WEB.CONFIG

Đây là các bit rắc rối của web.Config ... Tôi hy vọng điều này sẽ giúp ai đó tìm ra vấn đề của chúng tôi!

<system.Web>

<!-- stuff cut out -->

    <httpHandlers>
        <remove verb="*" path="*.asmx"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56" validate="false"/>
    </httpHandlers>
    <httpModules>
        <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </httpModules>
</system.web>

<system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules>
        <add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </modules>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    <handlers>
        <remove name="WebServiceHandlerFactory-Integrated"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </handlers>
</system.webServer>

Xóa tất cả các ý kiến ​​trong web.config. Họ bắt đầu <!-- và kết thúc với -->.
Alex Bagnolini

xe đẩy đó là một cái gì đó để làm với <httpHandlers>
Chuck Le Mông

Đây có phải đang chạy trong chế độ tích hợp? Nếu vậy, hãy thử chế độ Cổ điển.
Jeremy McGee

@Alex - Tôi đã xóa tất cả các nhận xét, nó không giúp được gì. Nhờ đề nghị mặc dù.
Chuck Le Mông

@Joe Tôi không nghĩ rằng tôi sẽ đăng toàn bộ web.config. Có lẽ sẽ không khôn ngoan ...: - /
Chuck Le Mông

Câu trả lời:


263

Tôi đã có những triệu chứng chính xác này và vấn đề của tôi tương tự như của Peter. Đã thiết lập một dự án hiện có trên một máy chủ mới. Dự án của tôi đã tham chiếu mô-đun Viết lại URL IIS7, nhưng chưa được cài đặt trên máy chủ mới. Cài đặt nó đã khắc phục vấn đề của tôi.

Bạn có thể sử dụng Trình cài đặt nền tảng web của Microsoft để cài đặt nó. Thực thi nó, chọn Sản phẩm , trong menu bên trái chọn Máy chủ và tìm URL Rewrite trong danh sách và cài đặt nó.

Hoặc bạn có thể tải nó ở đây .


2
> Tôi đã có những triệu chứng chính xác này và vấn đề của tôi tương tự như của Peter. Đã thiết lập một dự án hiện có trên một máy chủ mới. Dự án của tôi đã tham chiếu mô-đun Viết lại URL IIS7, nhưng chưa được cài đặt trên máy chủ mới. Cài đặt nó đã khắc phục vấn đề của tôi. Cảm ơn, DJjeffJ. Đã sửa nó cho tôi. Mô-đun tua lại URL trên máy chủ dev không được cài đặt.
jk.

1
Yup ... tôi cũng vậy, tôi đã có .net 3.5 vì vậy ajax đã được bao gồm, nhưng viết lại thì không.
WildJoe


5
4 năm và đây vẫn là một vấn đề. Hoàn toàn không có gì trong lỗi để cung cấp bất kỳ khách hàng tiềm năng nào về nguồn gốc của vấn đề. Tôi cũng đang chuyển một giải pháp hiện có sang một máy chủ mới chưa có mô-đun và chỉ tình cờ tôi tình cờ gặp câu trả lời này, cảm ơn rất nhiều vì tôi đã xé tóc ra!
ProNotion

4
Vấn đề vẫn tiếp tục với Server 2016, không có tính năng / mô-đun nào để cài đặt có nội dung "Viết lại URL". Bạn phải sử dụng để cài đặt nó và sau đó trang web của tôi đã hoạt động (hoặc ít nhất là ngừng đưa ra vấn đề đó).
Cướp

41

Sau khi chiến đấu với điều này trong một ngày trên một máy mới, tôi đã xem qua các liên kết sau. Tôi đã thiếu các mô-đun viết lại. Điều này cố định mọi thứ.

http://forums.iis.net/t/1176834.aspx

http://learn.iis.net/page.aspx/460/USE-the-url-rewrite-module/


1
+1. Web.config tôi đã lấy từ TFS có <rewrite>thẻ nhưng tôi chưa cài đặt urlrewrite. Tôi đã nhận xét các <rewrite>công cụ và trang web của tôi được biên soạn và tải lên ngay lập tức.
Pete

1
phải mất một giờ để nhớ tôi đã sử dụng viết lại trong trang web. Tôi muốn microsoft có một hệ thống thông báo lỗi trình biên dịch tốt hơn. Tôi sẽ giải quyết vấn đề trong vài phút nếu tôi thấy dòng chính xác của web.config.
dvdmn

Làm cách nào để bạn cài đặt Url Rewrite trong Visual Studio cho IIS Express?
Dima

40

Aha! Tôi đánh bại vấn đề này! Chúa ơi, nó là một con thú cho một người như tôi với kinh nghiệm IIS hạn chế. Tôi thực sự nghĩ rằng tôi sẽ dành tất cả cuối tuần để sửa nó.

Đây là giải pháp cho bất cứ ai khác gặp phải vấn đề xấu này.

Điều đầu tiên cần lưu ý: Nếu bạn hy vọng đây là giải pháp của mình, hãy đảm bảo rằng bạn có cùng Mã lỗi ( 0x8007000d ) và Nguồn cấu hình ( -1: 0 :). Nếu không, đây không phải là giải pháp của bạn.

Điều tiếp theo cần lưu ý: AJAX chưa được cài đặt đúng cách trong web.config của bạn!

Khắc phục điều đó bằng cách làm theo hướng dẫn này:
http://www.asp.net/AJAX/documentation/live/ConfiguringASPNETAJAX.aspx

Sau đó, cài đặt các tiện ích mở rộng AJAX 1.0 trên máy chủ sản xuất của bạn, từ liên kết này:

http://www.asp.net/ajax/doads/archive/
Cập nhật : Microsoft dường như đã xóa trang trên :(

Đó là nó!


1
cảm ơn! Phần mở rộng AJAX là vấn đề. Tôi đã nhận xét phần đó vì AJAX hiện được tích hợp vào 3,5
jdiaz

1
Có vẻ như Microsoft đã phá vỡ liên kết đầu tiên đó để định cấu hình ASP.NET AJAX.
Rob Sobers

1
Tìm thấy một tấm gương của nội dung cũ. Vì vậy, gây phiền nhiễu cho cách tài liệu MS biến mất thường xuyên.
Chuck Le Mông

4
Câu trả lời của bạn cho thấy lỗi này CHỈ dành cho Ajax nhưng nó cũng áp dụng cho urlrewrite, điều đó có nghĩa là lỗi có thể chỉ đề cập đến bất kỳ đề xuất nào phụ thuộc vào mô-đun không khả dụng.
rainabba

@Chuck, "Tôi cảm thấy như Rocky" nghĩa là gì?
Pacerier

16

Vấn đề tương tự trên Server 2016, lỗi IIS 10, 500.19. Tôi đã cài đặt mô-đun chuyển hướng và nó hoạt động. Tôi không biết tại sao điều này không được bao gồm theo mặc định.

https://www.iis.net/doads/microsoft/url-rewrite#additableD Downloads

Để rõ ràng, có vẻ như web.config từ IIS 7 sẽ hoạt động hoặc được thiết kế để hoạt động, nhưng việc thiếu mô-đun này gây ra lỗi thực sự kỳ quặc và không có ích. Googling đưa bạn đến một trang của Microsoft để khẳng định rằng trang web của bạn bị hỏng hoặc web.config của bạn bị hỏng. Không có vẻ là trường hợp.

Trang không hữu ích đó có ở đây: https://support.microsoft.com/en-us/kb/942055


12

Có cùng một vấn đề như trên, cùng một mã lỗi, v.v. Thiết lập một trang web cục bộ trên Windows 8. Sau nhiều lần tìm kiếm, chúng tôi thấy rằng chúng tôi đang thiếu URL viết lại. Sau khi tải về, mọi thứ đều ổn. :)


Người đàn ông bạn đã tiết kiệm cho tôi rất nhiều thời gian ... Tốt đẹp !!
PhillyNJ

Tương tự, thông báo lỗi này là hoàn toàn không có ích!
Ken Keenan

8

Tôi chỉ thêm một câu trả lời vì tôi đã dành hàng giờ cố gắng giải quyết các triệu chứng giống nhau (nhưng vấn đề khác nhau):

Một nguyên nhân có thể là một x86 dll trong nhóm ứng dụng 64 bit, giải pháp là cho phép các ứng dụng 32 bit trong cài đặt nhóm ứng dụng.


Câu trả lời này có giá trị cho lỗi 500,19 trong quá trình thiết lập Umbraco CMS.
aron.lakatos

4

Đối với tôi, đăng ký lại asp.net cho iis đã làm điều đó. Hy vọng rằng sẽ giúp người khác.

aspnet_regiis.exe -i

4

Tổng hợp dựa trên câu trả lời ở đây và ở nơi khác:

  1. Kiểm tra phiên bản .NET của nhóm ứng dụng (ví dụ 2.0 so với 4.0)
  2. Kiểm tra xem tất cả các mô-đun tham chiếu IIS đã được cài đặt. Trong trường hợp này, đó là các tiện ích mở rộng AJAX (có thể không phải là trường hợp hiện nay), nhưng URL Rewrite là một tiện ích phổ biến.

4

Một cách khác để nhận 500,19 errot mà không có lý do rõ ràng là - thiếu các thư mục và / hoặc các quyền bị hỏng trên chúng.

Trong trường hợp của câu hỏi này, tôi tin rằng câu hỏi hỏi về phiên bản IIS đầy đủ. Tôi giả sử điều này vì dòng này:

Config File         \\?\E:\wwwroot\web.config

Trình cài đặt IIS thường tạo wwwrootcho bạn và đó là thư mục gốc mặc định cho tất cả các trang web và điểm gắn kết cho các thư mục ảo. Nó luôn tồn tại, vì vậy không có vấn đề gì, bạn thường không quan tâm nhiều về điều đó.

Vì các tệp web.config là phân cấp, bạn có thể đặt ở đó một tệp web.config chính và có một số cài đặt gốc ở đó và tất cả các trang web sẽ kế thừa nó. IIS kiểm tra nếu tập tin đó tồn tại và cố gắng tải nó.

Tuy nhiên, phần thú vị đầu tiên:

Thư mục này sẽ tồn tại nếu bạn cài đặt IIS đúng cách. Nếu nó không tồn tại, bạn sẽ nhận được lỗi 500 lớp. Tuy nhiên, nếu bạn chơi với các quyền của tệp / thư mục, đặc biệt là các quyền 'nâng cao', bạn thực sự có thể vô tình từ chối tài khoản dịch vụ IIS để quét / đọc nội dung của thư mục này. Nếu IIS không thể kiểm tra xem wwwroot \ web.config có tồn tại không, hoặc nếu nó tồn tại và IIS không thể mở và đọc nó - bam - lỗi 500 lớp.

Tuy nhiên, đối với IIS đầy đủ thì rất khó xảy ra. Các nhà phát triển / Quản trị viên làm việc với IIS đầy đủ thường miễn cưỡng liên quan đến việc chơi với wwwrootvì vậy nó thường được cấu hình đúng.

Tuy nhiên, trên IIS Express ..

Thông thường, IIS Express "chỉ hoạt động". Thông thường, các nhà phát triển sử dụng IIS Express thường không biết bao nhiêu nội bộ giống với IIS thật.

Bạn có thể dễ dàng vấp ngã khi IIS Express có tệp applicationhost.config của riêng mình và VS tạo và quản lý nó cho bạn (một cách chính xác, ở một mức độ nào đó) và một loại mở mắt cho bạn biết rằng nó không đơn giản và chỉ ra và nhấp chuột như có vẻ lúc đầu.

Ngoài tệp cấu hình đó, VisualStudio cũng tạo cấu trúc Documentsthư mục trống trong thư mục của bạn . Nếu tôi nhớ chính xác, IIS Express coi các thư mục này là thư mục gốc của (các) trang web của bạncác thư mục ảo với mã của bạn được gắn kết.

Sau này, giống như IIS, khi IIS Express khởi động, nó hy vọng các thư mục này tồn tại và kiểm tra các tệp web.config gốc ở đó. Các tập tin web.config trang web . Hầu như luôn luôn, các tệp web.config này bị thiếu - và điều đó không sao vì bạn không muốn chúng - bạn có ** ứng dụng web.config ", chúng được đặt cùng với phần còn lại của nội dung trong một thư mục ảo.

Bây giờ, phần thú vị thứ hai là: IIS Express mong đợi các thư mục trống. Chúng có thể trống rỗng, nhưng chúng cần tồn tại. Nếu chúng không tồn tại - bạn sẽ gặp lỗi 500 lớp cho bạn biết rằng tệp "web.config" tại đường dẫn đó không thể truy cập được.

Lần đầu tiên tôi gặp phải vấn đề này là khi tôi đang xóa ổ cứng. Tôi thấy rằng thư mục 'Documents \ website', đầy rác, tôi nhận ra các dự án vài năm tuổi tôi không còn làm việc nữa, tất cả đều trống rỗng, không phải là một tệp duy nhất, vì vậy tôi đã xóa tất cả. Một tuần sau - bam - Tôi không thể chạy / gỡ lỗi bất kỳ trang web nào tôi đang làm việc vào lúc này. Lỗi là 500,19, không thể đọc tập tin cấu hình.

Vì vậy, nếu bạn sử dụng IIS Express và thấy lỗi 500 lớp về việc đọc cấu hình, hãy kiểm tra cẩn thận thông báo lỗi và đọc tất cả các đường dẫn được đề cập. Nếu bạn thấy bất cứ điều gì như:

c:\users\user\documents\visual studio 2013\projects\WebProject1\WebProject1.web\web.config
c:\users\zeshan.munir\documents\visual studio 2015\projects\WebProject1\WebProject1.web\web.config
c:\users\zeshan.munir\documents\visual studio 2017\projects\WebProject1\WebProject1.web\web.config
etc..

Đến đó chính xác là nơi lỗi chỉ ra, đảm bảo rằng các thư mục này tồn tại, đảm bảo rằng tài khoản công nhân IIS có thể duyệt và đọc chúng, và nếu bạn nhận thấy có gì sai, có thể đó sẽ là điều đó.

BTW. Trong VisualStudio, trên ProjectProperIES / Web có nút "Tạo thư mục ảo". Về cơ bản nó thực hiện điều này, vì vậy bạn có thể thử nó trước, nhưng IIRC đôi khi cũng có thể xóa các phần cấu hình rõ ràng / ghi đè / hoán đổi trong tệp apphost.config, vì vậy hãy cẩn thận với nút đó nếu bạn có bất kỳ thiết lập tùy chỉnh nào ở đó.


3

Trong trường hợp của tôi, đã xảy ra sự cố với cài đặt .NET Core Windows Hosting Bundle.

Tôi đã cài đặt và khởi động lại IIS bằng cách sử dụng ("net stop was / y" và "net start w3svc") sau khi cài đặt, nhưng tôi sẽ nhận được lỗi 500,19 đó với Mã lỗi 0x8007000d và Nguồn cấu hình -1: 0 :.

Tôi đã quản lý để giải quyết vấn đề bằng cách sửa chữa cài đặt .NET Core Windows Hosting Bundle và khởi động lại IIS bằng các lệnh tôi đã đề cập ở trên.

Hy vọng điều này sẽ giúp được ai đó!


1
Điều này cũng làm việc với tôi, đây là một blog MSDN về việc cài đặt gói .NET Core Windows Server Hosting: blog.msdn.microsoft.com/rohithrajan/2018/03/13/ Đây Đây là một liên kết trực tiếp để tải xuống: aka. ms / dotnetcore-2-windowshosting
Riverswb

3

Lỗi chi tiết đáng yêu này vẫn còn hiện diện vào năm 2019! Tôi chỉ muốn thêm rằng nếu bạn web.confighợp lệ và có thể truy cập thì rất có thể đó là vấn đề phụ thuộc .

Như OP đã đề cập, nó là một AJAXmô-đun và như những người khác thường là Rewritemô-đun. Chỉ cần để mắt đến web.config mô-đun và thư viện mà các thẻ của bạn đang tham chiếu vì mã lỗi 0x8007000d có thể phụ thuộc vào BẤT K ..

Trong trường hợp của tôi, tôi đã không nhận ra AspNetCore gói bị thiếu và phải được cài đặt! Rất vui vì tôi đã tìm thấy bài viết này !!


2

Điều này có thể có hoặc không liên quan .... Tôi đã bắt đầu với cùng một lỗi được đề cập ở trên, bắt đầu googling, thực hiện thay đổi, nhận lỗi mới, vòng lặp vô tận.

Sự thay đổi khiến tôi gặp phải lỗi đó là gây rối với Phân quyền tính năng trong Trình quản lý IIS trong phần Quản lý của máy chủ. Tôi xin lỗi tôi không thể nhớ cái nào tôi đã thay đổi, nhưng googling có thể giúp đỡ.

Điều đó đã đưa tôi vượt qua lỗi thứ 1 vào một luồng hoàn toàn mới của những người khác, một số hoàn toàn vô nghĩa. (Tôi sẽ gặp một lỗi khi chạy trong một thư mục ảo, chuyển đổi nó thành một ứng dụng mang lại một lỗi khác, v.v.). Điều cuối cùng đã giải quyết được loạt lỗi này là: Trình quản lý IIS, Nhóm ứng dụng, DefaultAppPool, Bật ứng dụng 32-bit = True

Tôi đã khởi động ứng dụng này trên hộp windows xp 32 bit và hiện tôi đang chạy nó trên hộp Windows 7 64 bit.

Vì vậy, hy vọng điều này sẽ giúp người khác.


2

IIS 7.5 của tôi không hiểu thẻ trong web.config Trong VS 2010, nó cũng gạch dưới thẻ đó. Kiểm tra tệp cấu hình của bạn chính xác để tìm tất cả các thẻ được gạch chân. Tôi đặt nó trong bình luận và lỗi đi.


2

Nhận xét các dòng sau trong tệp web.config.

<modules>
    <!--<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>-->
</modules>

<handlers>
    <remove name="WebServiceHandlerFactory-ISAPI-2.0"/>
    <!--<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add name="ScriptResource" verb="GET" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>-->
</handlers>

Điều này sẽ làm việc.


2

Tôi đã có những lỗi giống nhau. Tôi đã có một trang web IIS với .net framework phiên bản 2.0, nhưng ứng dụng của tôi cần 4.0. Tôi đã thay đổi phiên bản và nó hoạt động.

Đăng chỉ như một lời nhắc nhở nếu ai đó có thể có cùng một vấn đề.


2

Đảm bảo rằng tất cả các tính năng IIS của bạn được kích hoạt đúng.

  • Mở các tính năng của Windows (Bật hoặc tắt các tính năng của Windows).
  • Cuộn xuống Dịch vụ thông tin Internet

  • Mở hộp World Wide Web cộng với thả xuống

  • Mở tính năng Phát triển ứng dụng cộng với hộp thả xuống
  • Kiểm tra thủ công tất cả các hộp kiểm tiếp theo, sau đó bấm ok

nhập mô tả hình ảnh ở đây


1
Tôi vừa cài đặt lại Windows 10 bằng phương pháp nâng cấp tại chỗ và tôi đã sử dụng một số hộp trong số đó hoặc cài đặt lại chưa sử dụng chúng. Mã lỗi liên quan 0x80070021 xuất hiện trên trang 500,19.
Andrew Morton

2

Cấu hình dưới đây là nguyên nhân của vấn đề của tôi:

    <rewrite>
      <rules>
        <clear />
        <rule name="Redirect to HTTPS" stopProcessing="true">
          <match url="(.*)" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^.*spvitals\.com$" />
            <add input="{HTTPS}" pattern="off" ignoreCase="true" />
          </conditions>
          <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />
        </rule>
      </rules>
    </rewrite>

Lưu ý: Tôi đã xóa phần này để thử nghiệm cục bộ, vì nó hoạt động tốt trong Azure.


1
Bạn có thể giữ các quy tắc ghi lại trong IIS nếu bạn cài đặt mô-đun Viết lại URL của IIS. Đó là tại iis.net/doads/microsoft/url-rewrite
Toby Artisan

1

Tôi đã có vấn đề tương tự trong Windows 7.

Giải pháp là vào các cài đặt cơ bản> kết nối với tư cách là> người dùng cụ thể - và đăng nhập với tư cách người dùng, thay vì 'thông qua' mặc định

Điều này đã khắc phục vấn đề cho tôi.


1

Windows 7

Thử cái này,

chạy cmd với tư cách Quản trị viên.

Bỏ tất cả iis.

start /w pkgmgr.exe /uu:IIS-WebServerRole;WAS-WindowsActivationService

Cài đặt lại iis và Normaly nó hoạt động

Alain


1

Tôi đã nhận được lỗi này bằng cách đặt <customErrors>thẻ bên trong <system.webServer>thay vì <system.web>nơi nó thuộc về. Có một chút lúng túng dưới <customErrors>thẻ nhưng tôi đã không nhận ra nó ngay lập tức.


1

Tương tự như câu trả lời hàng đầu , chúng tôi đã nhận được ngoại lệ vô cùng hữu ích này vì thiếu mô-đun IIS CORS. Đó là cùng một lỗi với Mã lỗi (0x8007000d) và Nguồn cấu hình (-1: 0 :), nhưng việc cài đặt mô-đun Viết lại URL không khắc phục được.

Gần đây chúng tôi đã cập nhật web.config để kích hoạt CORS cho một số nhà phát triển cần nó, nhưng không hy vọng nó sẽ được yêu cầu cho tất cả các nhà phát triển để cài đặt mô-đun IIS CORS. Thật không may, có vẻ như nó được yêu cầu.

Để khắc phục, hãy cài đặt mô-đun IIS CORS từ đây .


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.