Lỗi - Không thể truy cập cơ sở dữ liệu IIS


842

Sau khi cài đặt Visual Studio 2012 và mở giải pháp của tôi, tôi gặp một loạt lỗi ở dạng này:

Dự án ứng dụng web Foo được cấu hình để sử dụng IIS .
Không thể truy cập IIS Metabase . Bạn không có đủ đặc quyền để truy cập các trang web IIS trên máy của mình.

Tôi nhận được điều này cho mỗi ứng dụng web của chúng tôi.


Những điều tôi đã thử:

  1. Chạy Visual Studio với tư cách quản trị viên
  2. Chạy aspnet_regiis.exe -ga MyUserName
  3. Chạy aspnet_regiis.exe -i

Đây dường như là những giải pháp chung cho vấn đề này nhưng tôi chưa có thành công nào với chúng.

Có bất cứ điều gì khác tôi có thể cố gắng để làm?


27
Bạn có chắc chắn đang chạy như quản trị viên? Bạn có nhận được cửa sổ bật lên hộp thoại Kiểm soát tài khoản người dùng khi bạn khởi chạy VS không?
Mike Simmons

43
tôi có cùng một vấn đề và khi tôi chạy VS với tư cách quản trị viên (nhấp chuột phải và chọn chạy với tư cách quản trị viên), nó đã hoạt động
Shyju

4
Đối với bất kỳ ai đến đây sau tôi đã giải quyết vấn đề này bằng cách tắt các tính năng IIS và .Net Framework trong Windows 7 và sau đó bật lại chúng. Ở đâu đó trong quá trình cài đặt lại nó đã khắc phục vấn đề của tôi.
jjathman

2
Trước khi bạn làm theo bất kỳ lời khuyên nào được đăng ở đây, vui lòng kiểm tra xem bạn có đang chờ cập nhật Windows không. Tôi đã có rất nhiều thứ cần khởi động lại, hoàn thiện các bản cập nhật đã khắc phục vấn đề.
Thomas Eyde

2
Tôi đã có cùng một vấn đề sau khi thêm tính năng từ liên kết này và sau đó tôi đọc bài viết này thì vấn đề đã biến mất.
của JB

Câu trả lời:


1447

Trên Windows 8 Pro :

%systemroot%\inetsrv\config

Trên Windows 7 và 8.1 và 10

%systemroot%\System32\inetsrv\config 

( %systemroot%Thường ở đâu C:\Windows)

Điều hướng đến vị trí thích hợp ở trên trong Windows Explorer. Bạn sẽ bị chặn truy cập với một cửa sổ bật lên có nội dung:

"Bạn không có quyền truy cập vào thư mục này - Nhấp vào tiếp tục để có quyền truy cập vĩnh viễn vào thư mục này"

Nhấp vào 'tiếp tục' cho thư mục này và với thư mục Xuất bên dưới. Tôi đã thay đổi phím tắt trở lại thành "Chạy như tôi" (một thành viên của quản trị viên tên miền và cục bộ) và có thể mở và triển khai giải pháp.


44
Nó đã làm việc, cảm ơn. Chỉ cần một lưu ý, thư mục cấu hình có thể được đặt trong C: \ Windows \ System32 \ inetsrv \ config
Alexandr Nikitin

82
% systemroot% \ System32 \ inetsrv \ config (tức là C: \ WINDOWS \ System32 \ inetsrv \ config) trên windows 8.1 hoạt động tốt
stefano

13
% systemroot% \ System32 \ inetsrv \ config là đường dẫn chính xác cho Windows 7
Aidin

44
@Nate, vấn đề là khi VS tải dự án, nó cố gắng truy cập IIS metabase, nằm trong thư mục đó. IIS, trên máy tính của bạn, bị khóa dưới quyền quản trị viên. Vì vậy, khi bạn mở VS như một người dùng bình thường, bạn không thể truy cập metabase của IIS và VS không thể tải dự án. (Trên Windows 7+, bạn truy cập vào tất cả mọi thứ như một người dùng bình thường theo mặc định. Vấn đề là VS sẽ không yêu cầu bạn nâng cao đặc quyền của bạn khi bạn cần, vì vậy bạn cần phải tự cấp quyền truy cập thư mục đó cho chính mình. )
PotatoEngineer

5
%systemroot%\System32\inetsrv\configcho Windows 10 cũng vậy.
bonh

248

Tôi nghĩ rằng bạn không chạy visual studio với quyền của quản trị viên. Nhìn kìa:

http: // blogabout.net/bloss/rick/archive/2012/10/04/unable-to-access-the-iis-metabase.aspx

Để trích

Giải pháp cho vấn đề này rất đơn giản: khởi động Visual Studio của bạn với "Run as Administrator". Bạn có thể làm điều này bằng cách nhấp chuột phải vào phím tắt và chọn "Chạy với tư cách Quản trị viên".


Tôi chắc chắn đang chạy như một quản trị viên. Tôi nhận được lời nhắc UAC và nó khởi chạy thành công từ đó. Tôi đã sử dụng điều này với VS2010 là tốt.
jjathman

13
Nếu bạn muốn tránh sự đau đớn khi điều hành phòng thu hình ảnh của mình với tư cách quản trị viên mỗi lần (IMHO là giải pháp tốt hơn) thì hãy kiểm tra phản hồi của GordonK2004.
Aidin

21
-1 từ tôi. Blog này khuyến khích chạy IDE với tư cách Quản trị viên mọi lúc. Điều này sẽ đưa bạn vào 101 vấn đề khi viết mã chính xác hoạt động chính xác trong các môi trường bị hạn chế bảo mật mà người dùng của bạn sẽ muốn / cần triển khai. Sẽ tốt hơn nhiều khi giải quyết từng vấn đề bảo mật khi nó phát triển (vì bạn đã kiểm tra tốt từng phần của mã) và ghi lại giải pháp cần thiết cho người dùng / trình cài đặt hơn là tắt Trình quản lý chạy này ngay trước khi bạn cuộn phát hành và hy vọng những người thử nghiệm của bạn tìm thấy mọi mối quan tâm bảo mật mà bạn dán trên (các vết nứt).
Darryl Miles

5
@DarrylMiles Muốn chia sẻ một ví dụ trong thế giới thực, nơi làm điều này gây ra vấn đề bảo mật?
user247702

5
Đây là một câu trả lời khủng khiếp, thật xấu hổ vì nó đã được nâng cấp cho đến nay. Chạy VS của bạn như một quản trị viên là một công việc, không phải là một giải pháp.
Jansky

51

Tôi nghĩ rằng chúng tôi đã gặp một vấn đề tương tự trong công việc. Đối với chúng tôi, giải pháp là vào Bảng điều khiển -> Chương trình và Tính năng -> Bật hoặc tắt Tính năng của Windows ... bên trong đó, chúng tôi phải chọn Dịch vụ thông tin Internet -> Công cụ quản lý web -> Tương thích quản lý IIS 6 -> Tương thích cấu hình IIS Metabase và IIS 6. Hộp thoại Windows Feature hiển thị tùy chọn IIS Metabase

Hãy thử và cho tôi biết nếu nó giúp!

Lưu ý: Chúng tôi đang chạy IIS 7.5 trên Windows 7 bằng cả Visual Studio 2005 và 2010 và thực hiện công việc với Dịch vụ web siêu trường học cũ (.asmx) ...


1
Tôi đã thử tất cả các giải pháp khác (quyền thư mục cấu hình, không sử dụng IIS, chạy VS với tư cách quản trị viên, khởi động lại IIS, v.v.), nhưng đây là giải pháp duy nhất phù hợp với tôi. Cám ơn vì đã chia sẻ!
Chris Knight

Cảm ơn, điều này đã giúp tôi quá. Tôi đang sử dụng VS2013 và cấu trúc tệp cấu hình của tệp dự án khác với câu trả lời của Bruno Sena. Tôi định nhổ tóc ra, nhưng sau đó tôi nhớ mình đã táo bạo và đã chọn thử giải pháp này là một cách khắc phục nhanh.
BraveNewMath

Đảm bảo IIS Admin serviceđược bắt đầu và đặt loại Khởi động thành Tự động thay vì Tắt.
Ivan Châu

1
Dựa trên mức độ hạn chế cấu hình của bạn, điều này cũng có thể cần quyền riêng tư của quản trị viên.
lướt sóng

34

Tôi đã giải quyết vấn đề này bằng cách cấp quyền nhận dạng IIS AppPool cho %systemroot%\inetsrv\config


9
Hoàn hảo! Đừng cần bận tâm nữa khi chạy với tư cách Quản trị viên. Thư mục cho Win 7 được đặt tại đây: C: \ Windows \ System32 \ inetsrv \ config
btomas

Điều này cũng hiệu quả với tôi, Windows 8.1, IIS 7.0, VS 2012. Cảm ơn rất nhiều
Balthasar

3
phải là% systemroot% \ system32 \ inetsrv \ config
BlackICE

28

Nếu bạn đang làm việc với một dự án không yêu cầu sử dụng IIS, thì cách khắc phục để mở dự án với lỗi này là chỉ cần nhấp chuột phải vào dự án không tải và nhấp vào chỉnh sửa, tìm kiếm:

<ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="">
        <WebProjectProperties>
          <UseIIS>True</UseIIS>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
</Project>

và đặt USEIIS thành false

<UseIIS>False</UseIIS>

tải lại dự án bằng cách nhấp chuột phải vào nó sau khi lưu thay đổi.


Điều này làm việc cho tôi, nhưng vấn đề tiềm ẩn ở đây là gì? Nó phải là sai trên máy tính để bàn của tôi nhưng đúng trên máy tính xách tay của tôi. Vì vậy, nếu tôi kiểm tra một dự án vào TFS trên máy tính xách tay của mình, nó không tải được trên máy tính để bàn của tôi và ngược lại cho đến khi tôi thay đổi điều này.
Derek Ziemba

5
Làm thế nào điều này giúp giải quyết vấn đề không thể sử dụng IIS?
Jonathon Cowley-Thom

Cài đặt <UseIIS>False</UseIIS>không hoạt động. Các nút <UseIISExpress>true</UseIISExpress>đã có mặt là tốt. Đặt nó thành false không giúp được gì. Vẫn cần truy cập lỗi tương tự với iis metabase.
lướt sóng

giải pháp duy nhất hiệu quả trong trường hợp của tôi
Nick Chan Abdullah

18

Tôi đã có hai loại vấn đề riêng biệt dẫn đến lỗi này và nghĩ rằng tôi muốn chia sẻ ...

1. The directory was on an network share and due to UAC restrictions, was 
   unable to be accessed -- even when running as an admin.
2. The directory was on a drive that didn't exist...

Cả hai đều xuất phát từ sự lựa chọn không may (imo) của MS để đặt mọi thứ vào thư mục Tài liệu hoặc Tài liệu của tôi, kết hợp với các thông báo lỗi thực sự tệ hại. Trong cả hai trường hợp trên, vấn đề cơ bản là tệp Cấu hình IISExpress nằm trong Tài liệu của tôi và nó không tồn tại hoặc không thể truy cập được.


Làm thế nào bạn giải quyết vấn đề. Tôi nghĩ rằng tôi đang đối mặt với một trong hai vấn đề.
Tassisto

Đảm bảo rằng cả thư mục Dự án và thư mục Tài liệu của tôi đều nằm trên ổ đĩa cục bộ. Tôi đặt cả hai trên C: \.
jmoreno

7
VPN của chúng tôi chết thường xuyên và để lại HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Personal các tập tin không tồn tại. Thay đổi điều đó thành đường dẫn cục bộ đã giải quyết vấn đề này cho tôi.
Pasi Savolainen

Giải pháp cho tôi là sao chép IISExpressthư mục từ thư mục Tài liệu trên máy khác sang máy mới và sau đó mọi thứ bắt đầu hoạt động.
twhitbeck


13

Cảm ơn mọi người đã trả lời. Vì việc này đã bị đóng trong một thời gian dài nên tôi không thể cung cấp nhiều phản hồi, nhưng cuối cùng tôi đã khắc phục được vấn đề của mình. Tôi đã thử nhiều giải pháp khác và chúng không khắc phục được sự cố của tôi, nhưng tôi chắc chắn chúng sẽ giúp ích khi nguyên nhân gốc rễ khác nhau.

Giải pháp của tôi

Tôi đã giải quyết vấn đề này bằng cách tắt các tính năng IIS và .Net Framework trong Windows 7 và sau đó bật lại. Có vẻ như cài đặt lại này là những gì đã khắc phục vấn đề của tôi. Tôi vẫn không biết điều gì đã gây ra sự cố, nhưng ít nhất một nhà phát triển khác trong nhóm của tôi cũng gặp vấn đề tương tự.


13

Trên windows 81, từ dấu nhắc lệnh của quản trị viên, hãy sử dụng:

icacls "C:\Windows\System32\inetsrv\config" /t /grant "IIS AppPool\DefaultAppPool":(R)

Sau đó quay trở lại trong VS, nhấp chuột phải vào dự án thất bại, chọn Tải lại.

Tín dụng cho: Tổng quan về quyền IIS7 - ApplicationPoolIdentity


Không. Điều này sẽ cấp quyền đọc cho cấu hình IIS cho nhóm ứng dụng web chạy dưới dạng nhận dạng đó. Visual Studio không chạy với danh tính này, vì vậy nó không giúp ích cho câu hỏi này. Hơn nữa, tại sao bạn lại để nhóm ứng dụng truy cập cấu hình IIS? Đó là yêu cầu rắc rối.
David Bullock

2
+1 nhưng thay vì cấp quyền truy cập vào DefaultAppPool, tôi đã cấp quyền truy cập đọc / ghi cho người dùng của mình và điều đó đã khắc phục lỗi.
David Schwartz

Tôi đã làm giống như David, ngoại trừ với toàn quyền kiểm soát (F) và nó đã giải quyết vấn đề của tôi.
Bernesto

13

Điều hướng đến thư mục: %systemroot%\System32\inetsrv\configtrình bày một hộp thoại bảo mật. Nhấp vào tiếp tục và điều này có thể giải quyết vấn đề. Điều này đã làm việc trên hai máy Win 10 / VS 2017 / IIS riêng biệt.


Điều này đã làm việc cho tôi trước đây là tốt. Hôm nay, khi thử nó trên một máy tính xách tay mới, tôi không nhận được hộp thoại bảo mật khi điều hướng đến thư mục, tôi chỉ đơn giản là không thể vào thư mục cấu hình. Tôi đã phải nhấp chuột phải và thay đổi các quyền trên thư mục (yêu cầu sử dụng quyền truy cập quản trị viên cục bộ của tôi) và tự cấp quyền, sau đó nó hoạt động.
CaseyR

12

Tôi gặp vấn đề này - các triệu chứng là như nhau, nhưng vấn đề tôi gặp phải là tôi đã đặt thư mục "Tài liệu của tôi" để chia sẻ trên mạng và chia sẻ không thể truy cập được.

Vấn đề gốc là các tệp cấu hình IIS nằm ở% USERPROFILE% \ Documents không thể truy cập được. Khi tôi thay đổi vị trí thư mục "Tài liệu của tôi" (tôi đã sửa đổi giá trị reg), nó bắt đầu hoạt động trở lại.

Tôi biết rằng đây có thể không phải là một tình huống phổ biến mà bạn có thể gặp phải, nhưng tôi đã đăng nó ở đây vì nó mang lại các triệu chứng tương tự.


Chúng tôi làm việc trong một VM, đồng nghiệp cuối cùng đã thiết lập một thư mục dùng chung, cuối cùng sử dụng thư mục "Tài liệu của tôi" vào đường dẫn mạng. Như câu trả lời này đã nêu, nó không hoạt động nếu không có thư mục tài liệu. Tôi sẽ kiểm tra xem thư mục này có sẵn điều đầu tiên trong tương lai để lưu 2 giờ chúng tôi đã trải qua các bài đăng này và lol như vậy không.
Tony

Tôi cũng có vấn đề này. Thư mục Tài liệu của tôi nằm trên chia sẻ mạng và sự cố mạng đã ngăn truy cập. Khi tôi đã giải quyết vấn đề mạng, Visual Studio đã ngừng đưa ra lỗi IIS Metabase.
GiddyUpHorsey

7

Tôi đã gặp vấn đề này ngày hôm nay và khắc phục sự cố bằng cách xóa IISUrl khỏi tệp Dự án:

  1. Dự án nhấp chuột phải
  2. Nhấp vào Chỉnh sửa
  3. Xóa dòng sau:

     <IISUrl>http://localhost:xxxxx </IISUrl>
  4. Tải lại dự án

  5. Bây giờ thêm thư mục ảo IIS mới bằng cách nhấp chuột phải vào Project> Properties> Web và chọn Sử dụng IIS Web Server cục bộ (Bỏ chọn Sử dụng IIS Express) và nhấp vào nút Tạo thư mục ảo.

Điều này sẽ không giải quyết được vấn đề OP vì bạn không thể mở dự án để thay đổi URL khi bạn gặp lỗi này.
htm11h

Tôi không đồng ý một phần với @ htm11h. Tôi đã gặp lỗi của OP và xóa mục nhập đơn ở trên (bên ngoài VS). Sau đó tôi đã chạy VS và ít nhất có thể mở các thuộc tính. Nó sẽ không cho phép tôi lưu các chỉnh sửa, vì vậy tôi phải mở %systemroot%\System32\inetsrv\configmột lần và tiếp tục với tư cách quản trị viên; cũng mở %systemroot%\System32\inetsrv\config\Exportvà làm tương tự. ( lỗi không thể truy cập-the-iis-metabase )
secretwep

Nhận xét của tôi là nó không thể sửa chữa được từ bên trong VS như bạn đã lưu ý. Rất vui khi biết rằng bạn có thể trực tiếp chỉnh sửa tệp, tuy nhiên nó không được xác định. Hầu hết đã tìm kiếm một hack reg.
htm11h

7

Bạn có thể gặp vấn đề này và có cùng vấn đề với tôi. Tôi đã "giải quyết" nó trước và sau đó mất điện và máy tính bị sập, không hiểu tại sao cài đặt đăng ký lại hoàn nguyên nhưng đó là NGUỒN của vấn đề của tôi.

  1. Tôi đã thử tất cả các hoạt động như quản trị viên
  2. Tất cả các cài đặt lại IIS / IIS express.
  3. Nhiều "hack" khác nhau

Đã đến lúc phải sửa chữa registry.

  1. Không thể là quản trị viên thậm chí mở regedit (Cần truy cập sổ đăng ký vì sự cố không phải với mẫu quản trị gpedit.msc)

  2. UnHookExec.inf trên máy tính để bàn

Chỉ cần lưu UnHookExec.inf và cài đặt nó bằng cách nhấp chuột phải và chọn cài đặt. Cài đặt tệp sẽ không hiển thị bất kỳ cửa sổ bật lên hoặc thông báo. http://www.tweakandtrick.com/2011/04/enable-regedit-registry-editor.html

  1. HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell Folders \ Personal trỏ đến các tệp không tồn tại. Thay đổi điều đó thành đường dẫn cục bộ đã giải quyết vấn đề này cho tôi. - Pasi Savolainen ngày 14 tháng 7 năm 14 lúc 8:41

(thay đổi từ \\cs2data\home\stickelt\my documents thành c:\dev )

Bây giờ TẤT CẢ đều tốt và Visual Studio đã mở giải pháp với 15 dự án và kết nối với IIS và không phàn nàn về việc không thể truy cập siêu dữ liệu iis

Tôi chưa bao giờ gặp phải vấn đề này trước đây, vì không ai trong công việc hiện tại gặp phải vấn đề này (nhiều người đã ở đây từ lâu, một số có bản sao của các máy khác "hoạt động" và nhiều người ở trên một miền khác, v.v.)


6

Tôi mới gặp vấn đề này ngày hôm nay và tôi thấy rằng tôi đã không mở VS với tư cách 'Chạy với tư cách Quản trị viên'. Sau khi làm điều này, tôi đã có thể xuất bản Dịch vụ.


4

Nếu bạn có quyền quản trị viên, Nhấp chuột phải vào biểu tượng Visual Studio> thuộc tính và sau đó nâng cao, kiểm tra "Chạy với tư cách quản trị viên". Bạn có thể chạy visaul studio với tư cách quản trị viên trực tiếp nữa. Cách này, chính thức và rất cơ bản.


3

Ngoài câu trả lời của @nologo, tôi cũng phải sử dụng IIS. Vì vậy, tôi đã thay đổi

<UseIIS>True</UseIIS>

thành 'Sai' trước.

  • Đã mở giải pháp và đảm bảo rằng dự án có thể được tải.
  • Đóng giải pháp và ví dụ đó của Visual Studio
  • Thay đổi giá trị thành 'Đúng' một lần nữa
  • Mở giải pháp. Lần này, tôi không nhận được bất kỳ lỗi / cảnh báo nào. Tôi cũng có thể chạy với Ctrl + F5 hoặc F5 mà không gặp vấn đề gì trong khi dự án của tôi được ánh xạ tới trang web IIS.

Điều này đã giúp tôi với VS 2015, Win10. Gợi ý hữu ích ở đây, vấn đề khó chịu. Cảm ơn rất nhiều.
peter_the_oak

Đây là trong web.config? Nếu vậy thì ở đâu?
Bob Horn

@BobHorn Đây là trong tệp csproj hoặc vbproj. Mở tệp trong một trình soạn thảo văn bản.
KSK

3

Thay đổi khóa này làm việc cho tôi:

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell Folders \ Personal

Vị trí không tồn tại.


Tôi đã phải thay đổi chìa khóa bạn đề cập, và cũng HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Personal . Điều này là do đường dẫn hồ sơ được đặt thành một thư mục không tồn tại trong Active Directory / Group Policy.
Câu đố

Thủ phạm thứ ba là HKEY_CURRENT_USER\Software\Microsoft\IISExpress, đó là một thư mục tùy chỉnh ghi đè và một thủ phạm tiềm năng khác cho vấn đề này
Fiddles

2

Tôi cũng có một vấn đề tương tự. Giải pháp của tôi là một phần mở rộng cho câu trả lời "Chạy với tư cách quản trị viên" mà tôi hy vọng ai đó có thể thấy hữu ích.

Tôi đã chạy VS2012 và hầu như mỗi lần tôi phải thực hiện Nhấp chuột phải, Chạy với tư cách Quản trị viên. Tôi cảm thấy mệt mỏi vì điều này vì vậy thay vào đó tôi đã đi vào thuộc tính của nó trên phím tắt, nhấp vào nâng cao và sau đó nhấp vào tùy chọn "Chạy với tư cách quản trị viên". Bây giờ VS2012 luôn chạy với tư cách quản trị viên bất cứ khi nào tôi mở nó từ phím tắt đó .

Các phím tắt từ đó là quan trọng. Tôi đã tiến hành phân nhánh dự án của mình và tải chi nhánh về một thư mục cục bộ mới. Sau đó, khi tôi mở nó từ phím tắt, tôi không gặp vấn đề gì. Nhưng nếu tôi truy cập trực tiếp vào thư mục và chạy dự án cục bộ mà không có phím tắt, thì nó đã không chạy với tư cách quản trị viên và tôi đã gặp lỗi này.

Khi tôi mở VS2012 như bình thường trước, sau đó sử dụng Tệp / Mở / Dự án Nó hoạt động trở lại không có vấn đề gì. (vì tôi đang chạy với tư cách quản trị viên). Nhưng tôi đã không chạy với tư cách quản trị viên khi tôi mở giải pháp bằng trình quản lý tệp windows.

Các đề xuất khác có vẻ hơi cực đoan, nhưng điều này khá đơn giản vì vậy tôi sẽ có xu hướng thử trước.

Hy vọng điều này là hữu ích.


2

Đây có vẻ như là một trong những lỗi "Tất cả các lỗi dẫn đến thông báo này".

Của tôi là App Pool vừa bị tắt. Tôi bật lại và mọi thứ đều hoạt động tốt.


2

Một điều nữa bạn có thể thử:

  • Kiểm tra xem bạn có bản cập nhật Windows đang chờ xử lý không.
  • Nếu bạn làm như vậy, xin vui lòng khởi động lại trước khi thử bất cứ điều gì khác.

Tôi có xu hướng không bao giờ tắt máy, vì vậy tôi có rất nhiều người đang chờ khởi động lại. Và nó đã sửa nó.


2

Tôi đã thử mọi thứ ở trên. Tín dụng đi đến tất cả các câu trả lời ở trên. Sau khi tự mình thử tất cả các đề xuất, tôi chỉ tập hợp các gợi ý này theo thứ tự có ý nghĩa với tôi. Lưu ý thư mục Tài liệu của tôi nằm trên một ổ đĩa chung. Các công cụ phụ / IISExpress không được áp dụng trừ khi bạn ở trên cùng một chiếc thuyền.

  • Cấu hình VS để chạy với tư cách quản trị viên
  • Gỡ cài đặt IIS thông qua Thêm / Xóa Chương trình, Tính năng của Windows
  • Khởi động lại
  • Chạy WinRAR hoặc một cái gì đó tương tự như quản trị viên và lưu trữ C:\windows\system32\inetsrv\
  • Chạy cmd với tư cách quản trị viên và rmdir /s c:\windows\system32\inetsrv\ xóa hoàn toàn mọi dấu vết của lần cài đặt cuối cùng. Để lại nhắc nhở cmd nâng cao cho sau này.
  • Cài đặt lại IIS với khả năng tương thích Metabase IIS 6 (nghi ngờ điều này là cần thiết)
  • Để nguyên AppPool và Website mặc định như hiện tại (trước đây tôi đã xóa cả hai)
  • Đã chạy C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ga MYDOMAIN\scottt732
  • Đã chạy C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

Ngoài ra, vì thư mục Tài liệu của tôi nằm trên ổ đĩa chia sẻ, tôi đã gặp sự cố IIS Express. Tôi không sử dụng / thích IIS Express, nhưng Visual Studio đã phàn nàn về nó.

  • Từ nhắc cmd nâng cao, chạy subst U: c:\Temp. Tạo C:\Temp\Documents\và sao chép thư mục IISExpress từ ổ đĩa U của tôi.
  • Đã tạo CustomUserHomekhóa HKCU\Software\Microsoft\IISExpressvớiC:\Temp\Documents\IISExpress
  • Điều này cho phép tôi có được Visual Studio để mở các dự án web của mình và chỉnh sửa các thuộc tính. Tôi đã điều chỉnh các dự án để lưu trữ cài đặt máy chủ web trong tệp người dùng và điều chỉnh nó để sử dụng URL tùy chỉnh (không chắc chắn nếu điều này là cần thiết)
  • Tôi có thể / có thể không phải chạy substlệnh mỗi lần khởi động lại. Đừng quan tâm.

Và sau khi ném vào khăn 3 lần và dành khoảng 6 giờ, tôi có thể mở các dự án web trong Visual Studio (2015 Update 2).


Lưu ý cho tôi trong tương lai: Tôi đã cập nhật Windows 10 lên bản phát hành xem trước và nó lại bị hỏng. Lần này tôi chạy 2x aspnet_regiis và lệnh chỉ huy và trở lại hoạt động kinh doanh. Oh. Và đừng quên cuộn dây đồng hồ của bạn.
scottt732

2

Chuyển đến thư mục gốc của dự án của bạn và tìm tệp sau:

YourProjectName.csproj.user - bên trong nó, đảm bảo UseIISExpress được đặt thành false :

<UseIISExpress>false</UseIISExpress>


Nếu một mình nó không hoạt động, hãy thử làm như sau và thử lại:

YourProjectName.csproj - bên trong tệp dự án chính, đảm bảo cả UseIISUseIISExpress đều được đặt thành false :

<UseIIS>True</UseIIS>
<UseIISExpress>false</UseIISExpress>


Sau khi thay đổi, tôi có thể tải lại dự án.

Lưu ý: Đảm bảo bạn chạy VS của mình với tư cách Quản trị viên, như được đề cập trong các câu trả lời khác.


1

Tôi chỉ có cùng một vấn đề với tôi ngày hôm nay. Và tôi thấy nó khó chịu. Mặc dù tôi có hai trang web khác đang được phát triển từ cùng một IIS nhưng vẫn không thể tạo trang web mới. Lạ, nhưng tôi đã làm điều này.

  • Xóa trang web khỏi IIS
  • Tạo trang web mới, đặt tên là "new_site"
  • Chọn Nhóm ứng dụng khác với tên trang web. Vì vậy, nó sẽ không gây rối với các thiết lập mặc định.
  • Giữ IP "không được gán" nếu bạn đang chạy nó từ cùng một máy
  • cung cấp cho nó một số cổng không sử dụng
  • Chạy Visual Studio là "Chạy với tư cách quản trị viên" bằng cách nhấp chuột phải vào phím tắt thực thi VS.
  • Bạn xong việc rồi!

Bạn không cần phải tắt / cài đặt lại bất cứ thứ gì ngoài những gì tôi đã nêu kể từ khi nó hoạt động.

Hãy cho tôi biết nếu có ai có cùng một vấn đề giống như tôi và giải quyết theo cùng một cách. Tôi nghĩ đó không phải là vấn đề mà là cách tạo trang web sai trên localhost mà Visual Studio từ chối mở.

Tôi hy vọng điều này sẽ giúp người mới.


1
  1. Tạo lối tắt đến "devenv.exe"
  2. chọn tùy chọn "Chạy với tư cách quản trị viên" cho phím tắt
  3. doble nhấp vào cắt ngắn và mở lại dự án của bạn


1

Tôi đã sửa chữa Visual Studio 2015 để giải quyết vấn đề này. Việc sửa chữa mất nhiều thời gian, nhưng nó đã giải quyết được vấn đề trong khi thực hiện nhiều việc trên. Tôi đang điều hành doanh nghiệp Win 7.


1

Mở dấu nhắc lệnh của studio trực quan và gõ lệnh bên dưới và chạy

aspnet_regiis -ga machinename\ASPNET

Sau khi chạy lệnh trên Đặt lại IISvà kiểm tra ứng dụng giải quyết vấn đề của bạn.

Nếu lệnh trên không giải quyết được vấn đề của bạn thì hãy thử chạy bên dưới lệnh trong visual studio command prompt:-

aspnet_regiis -i

Ngoài ra, chúng tôi có thể chạy lệnh trên từ dấu nhắc lệnh windows của chúng tôi

Chuyển đến menu Bắt đầu và mở Chạy và nhập và nhấp vào OK

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe I

Sau đó, Đặt lại IIS và kiểm tra ứng dụng giải quyết vấn đề của bạn


1

Trong Visual Studio 2015: Tôi đã thay đổi UseIIS trong tệp .csproj thành false và nó hoạt động với tôi.

<UseIIS>False</UseIIS>

0

Trong tin nhắn của tôi, bên cạnh việc phàn nàn về "Không thể truy cập Cơ sở dữ liệu IIS", nó cũng đề cập đến việc không thể truy cập "<IISUrl>http://localhost:6416/</IISUrl>". Nhấp chuột phải vào dự án dỡ tải, nhấp vào Chỉnh sửa, tìm dòng "<IISUrl>http://localhost:6416/</IISUrl>", nhận xét nó. Tải lại và nó sẽ hoạt động. Điều này phải làm với quản trị viên không được phép truy cập địa chỉ đó.


0

Tôi đã có một vấn đề tương tự. Visual Studio sẽ không tải bất kỳ dự án web nào và hiển thị lỗi: tạo thư mục ảo <myproj: myport> không thành công. Không thể truy cập vào cơ sở dữ liệu IIS.

Trong trường hợp của tôi, nó thực sự là IISExpress là gốc rễ của vấn đề. Nhấp chuột phải vào IIS Express trong Chương trình và Tính năng trong bảng điều khiển và chọn sửa chữa đã khắc phục sự cố trong vòng chưa đầy hai phút.


0

Tôi đang sử dụng Win 8 Pro và VS 2013. Sau khi thử mọi thứ trong trang này ... Tôi chỉ cần cài đặt lại IIS Express 8 và mọi thứ đều hoạt động tốt (ngay cả khi không chạy với tư cách quản trị viên).

Kết luận của tôi là đây là một lỗi khá chung chung và có nhiều nguyên nhân gốc.

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.