2009-03-12 21 views
27

Poszukuję łatwego, krok po kroku instrukcji "Jak to zrobić", aby uzyskać klasyczną aplikację ASP działającą w IIS 7.0.Przewodnik po klasycznej aplikacji asp działającej pod IIS 7.0

Jest na 64-bitowym Windows Server 2008 maszyna, jeśli to robi różnicę.

+0

Zgaduję, że masz na myśli serwer Windows 2008? :) – Kev

+0

Czy korzystasz z 32-bitowego lub 64-bitowego systemu Windows, czy korzystasz z zewnętrznych komponentów - ServerObjects, Persits? – Kev

+0

Nic specjalnego poza używaniem SQL Server Express back end. 64-bitowe Windows 2008 ... :) – GordyII

Odpowiedz

44

Byliśmy przeniesienie kodu Classic ASP do 64 bitowego systemu Windows 2008. Oto kilka rzeczy, które nie lub odkryte po drodze:

  • zacząć od hostingu aplikacji w „klasycznym” pulpit trybu puli aplikacji. Gdy wszystko działa bez zarzutu, możesz przełączyć się na "Tryb zintegrowany", jeśli będziesz musiał wykorzystać oferowane funkcje w późniejszym terminie.

  • Jeśli aplikacja ASP zużywa żadnej 32 bitową osobę trzecią lub w domu elementy będą potrzebne do skonfigurowania basen aplikacji do uruchamiania w 32-bitowym trybie . 32-bitowe biblioteki DLL nie zostaną załadowane do procesu 64-bitowego. Można to skonfigurować w ustawieniach zaawansowanych puli aplikacji. Ustaw Enable 32-Bit Applications na True.

  • Aby wymusić szczegółowe raportowanie błędów przez Classic ASP, otwórz „” funkcji strony ASP na stronie internetowej, a następnie rozwiń węzeł Debugging Properties. Ustaw Send Errors To Browser na True.

  • Jeśli aplikacja używa ścieżek nadrzędnych musisz skonfigurować tę funkcję w „” ASP ustawienia strony (taki sam jak powyżej). Ustawienie jest pod węzłem Behaviour i nosi nazwę Enable Parent Paths. Domyślne ustawienie to False, podobnie jak w IIS6.

  • Domyślne konto anonimowe w IIS7 nazywa się IUSR. Można zmienić to , otwierając stronę "Ustawienia" uwierzytelniania dla witryny internetowej i edytując ustawienie .

  • wolą używać Application Pool tożsamości zarówno dla Application Pool site anonimowego konta: Application Pool Identities

+3

Szukałem w tym trochę o "Anonimowym uwierzytelnianiu", który powinien być ustawiony. Zrobiłem wszystko inne poza tym i nie mogłem zrozumieć, dlaczego moja aplikacja ASP próbowała zalogować się do serwera SQL jako 'IUSR' zamiast Identyfikacji puli aplikacji. –

+0

Uważam, że uwierzytelnianie anonimowe było ustawieniem binarnym - można je włączyć lub wyłączyć. Do czasu, spojrzałem na pasek boczny i zobaczyłem opcję edycji, która pozwala nam dostarczyć więcej ustawień anonimowego uwierzytelniania. – Zasz

3

Należy również pamiętać, że jeśli trzeba zarejestrować 32-bitowych bibliotek DLL, a IIS działa w trybie 32-bitowym, powinieneś użyć \ windows \ syswow64 \ regsvr32.exe dllname.dll.

Aha, i upewnij się, że nie masz włączonego debugowania po stronie serwera zbyt długo. Spowoduje to uruchomienie usług IIS w trybie pojedynczego wątku (i spowolnienie działania).

+0

Właśnie dowiedziałem się, że 'regsvr32.exe' wie, że robi" właściwą rzecz ", więc nie musisz określ wersje 32- lub 64-bitowe. Myślałem, że będę się dzielić. – Kev

5

Wiem, że jest to pięcioletni wątek, ale nadal jest istotny dla tych z nas, którzy opóźnili migrację/aktualizację starych aplikacji ASP.

Jest coś bardzo ważnego tutaj, że waliłem w głowę przez około 2 godziny. Jak na świecie umieszczasz aplikację ASP w puli aplikacji, Nie możesz tworzyć stron ASP jako aplikacji, które nie są kompatybilnymi technologiami.

W momencie DUHH odkryłem, że istnieje cała pula aplikacji przypisana do całej witryny. Po prostu przejdź do swojej witryny w "Witrynach" i wybierz Ustawienia podstawowe i przypisz pulę aplikacji.

Cała reszta to świetne informacje, w tym rejestrowanie plików DLL i nie wiem, czy jest to w tym wątku, ale także tworzenie połączeń ODBC 32 i 64-bitowych z dwiema różnymi aplikacjami odbcad32.exe.

Jeszcze raz dziękuję, (5 lat późno).

Powiązane problemy