Приложение MVC работает в Visual Studio, но не в IIS7 - PullRequest
2 голосов
/ 09 октября 2009

Работаю над проектом ASP.NET MVC, и у меня возникают некоторые трудности при развертывании на общем сервере разработки.

Локально, при отладке с использованием локального сервера Visual Studio 2008 все работает отлично. Однако после развертывания я получаю следующую ошибку:

    Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.## Heading ##

Parser Error Message: Unable to find an entry point named 'BCryptGetFipsAlgorithmMode' in DLL 'bcrypt.dll'.

Source Error:

Line 1:  <%@ Application Codebehind="Global.asax.cs" Inherits="APPLICATION_NAME.Web.MvcApplication" Language="C#" %>


Source File: /APPLICATION_NAME/global.asax    Line: 1

Version Information: Microsoft .NET Framework Version:2.0.50727.4927; ASP.NET Version:2.0.50727.4927 

В журнале ошибок:

Event sequence: 1 
Event occurrence: 1 
Event detail code: 0 

Application information: 
    Application domain: /LM/W3SVC/1/ROOT/APPLICATION_NAME-4-128995312096183595 
    Trust level: Full 
    Application Virtual Path: /APPLICATION_NAME 
    Application Path: E:\PROJECTS\APPLICATION\APPLICATION_NAME\APPLICATION_NAME\app\APPLICATION_NAME.Web\ 
    Machine name: PC

Process information: 
    Process ID: 4608 
    Process name: w3wp.exe 
    Account name: IIS APPPOOL\DefaultAppPool 

Exception information: 
    Exception type: HttpException 
    Exception message: Unable to find an entry point named 'BCryptGetFipsAlgorithmMode' in DLL 'bcrypt.dll'. 

Request information: 
    Request URL: http://localhost/APPLICATION_NAME 
    Request path: /APPLICATION_NAME 
    User host address: ::1 
    User:  
    Is authenticated: False 
    Authentication Type:  
    Thread account name: IIS APPPOOL\DefaultAppPool 

Thread information: 
    Thread ID: 6 
    Thread account name: IIS APPPOOL\DefaultAppPool 
    Is impersonating: False 
    Stack trace:    at System.Web.Compilation.BuildManager.ReportTopLevelCompilationException()
   at System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled()
   at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters)


Custom event details: 

Обнаружив ошибку развертывания, я попытался добавить приложение локально, и, похоже, это привело к тому же приложению.

На моем локальном компьютере разработчика я использую Windows 7 RTM (x64), а на общем сервере я использую Windows Server 2008 Standard (x86).

Покончил, и мое шифрование FIPS в локальной политике безопасности отключено, поэтому я немного растерялся.

Ответы [ 2 ]

2 голосов
/ 03 апреля 2010

Используете ли вы Bcrypt.net из здесь ? Если это так, вам нужно собрать его с другим именем DLL (так, например, построить его как BCryptNet.dll)

Проблема в том, что в Vista / Windows 2008 есть новый Windows API, который пытается загрузить bcrypt.dll, и, если у вас есть bcrypt.dll в каталоге bin / web-приложения, он не может найти системную dll.

2 голосов
/ 09 октября 2009

В прошлом у меня были некоторые проблемы при разработке на x64 и развертывании в среде x86. Под целью платформы вы компилируете в «Любой процессор», x86 или x64?

Попробуйте скомпилировать напрямую в x86 и посмотрите, поможет ли это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...