Возникла странная ошибка для старого сайта. Я пытаюсь переехать на новый сервер. Новый сервер - 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 может подтвердить или устранить это как проблему.