Назад | Перейти на главную страницу

IIS7 ASP - поставщик не найден. Возможно, он установлен неправильно

Возникла странная ошибка для старого сайта. Я пытаюсь переехать на новый сервер. Новый сервер - Win2008 64bit с IIS7.

Этот сайт отлично работает на сервере IIS6 Win2003, но я только что переместил его и запустил сайт, но получаю следующую ошибку

Provider cannot be found. It may not be properly installed.

Глядя вокруг, люди, кажется, просто говорят: «Включите 32-битные приложения в пуле приложений, и все будет хорошо?» К сожалению, я сделал это, и это не сработало? Кажется, здесь падает

'*************************************************************************
'Open Database Connection
'*************************************************************************
function openDB()
    on error resume next
    set connTemp = server.createobject("adodb.connection")
    connTemp.Open connString
    if err.number <> 0 then
        dim errMsg
        errMsg = "" _
            & "<b>Module :</b> scripts/_INCappDBConn_.asp : openDB()<br /><br />" _
            & "<b>Number :</b> " & err.number & "<br /><br />" _
            & "<b>Page :</b> "   & Request.ServerVariables("PATH_INFO") & "<br /><br />" _
            & "<b>Desc :</b> "   & err.Description
        call errorDB("",errMsg)
    end if
    on error goto 0
    if UCase(dbLocked) = "Y" then
        call errorDB("<b>" & LangText("ErrStoreClosed","") & "</b>","")
        closeDB()
    end if
end function

Просто интересно, может ли кто-нибудь пролить свет на то, что происходит?

Я знаю, что это довольно просто, но вы начали с того, что убедились, что в IIS установлен ASP? Классический ASP не установлен по умолчанию в IIS7. Перейдите в раздел «Программы и компоненты» на панели управления и нажмите «Включение и отключение компонентов Windows». Перейдите вниз по дереву функций и убедитесь, что установлен флажок ASP.

Если вы еще не пошли по этому пути - вероятно, проблема в этом.

Были такие же проблемы. Проверил все отметки и на основе ответа Мари Келли сделала следующее: в IIS7 goto Application Pool выберите правильный пул приложений, нажмите «Advanced Settings» и установите «Enable 32-Bit Applications» => True.

Я уверен, что вы будете шокированы, когда я предложу, что не все приложения и службы Microsoft корректно работают в 64-битном режиме ... На всякий случай, если это может быть фактором в вашей среде, посмотрите, есть ли возможность запустить это соединение с базой данных в 32-битном режиме. Например, я получил вашу точную ошибку в проекте Visual Studio, который использовал сценарий VB .NET, и после изменения свойства VS Project, Run64BitRuntime, на «False», что означает запуск в 32-битном режиме = «True». Затем, по волшебству, ошибка исчезла :) Я знаю, что вы упомянули, что изменили настройку в пуле приложений, но ошибка может произойти раньше, во время выполнения, когда установлено соединение с базой данных. Тестирование вне IIS может подтвердить или устранить это как проблему.