14 lip 2009 o 6:59 | IIS
Autor: admin |
Załóżmy, iż mamy witrynę WWW, bądź dwie, które korzystają tylko i wyłącznie z protokołu https.
Użytkownicy jednak uparcie wpisują w pasku adresu przeglądarki
http.
Przydał by się mechanizm, który po odwołaniu na odpowiedni adres po protokole http przekieruje na daną lokalizację przy użyciu protokołu
https.
Poniżej przykład skryptu w ASP realizujący to zadanie, dla dwóch różnych adresów. Skrypt ten podpinamy pod daną witrynę (np. jako
default.aspx).
| 01 | <% Language=VBScript %> |
| 02 | <% |
| 03 | Dim host |
| 04 | host = Request.ServerVariables("HTTP_HOST") |
| 05 | Select Case host |
| 06 | Case "poczta.domenka.pl" |
| 07 | Response.Redirect("https://poczta.domenka.pl/owa") |
| 08 | Case "remote.domenka.pl" |
| 09 | Response.Redirect("https://remote.domenka.pl/remote") |
| 10 | End Select |
| 11 | %> |
12 mar 2009 o 16:21 | ASP.Net, IIS
Autor: admin |
Mamy nowo postawiony serwer IIS 6. Zainstalowany .Net Framework. Umieszczona witryna napisana w ASP.Net, witryna IIS skonfigurowana do pracy z odpowiednią wersją Framework’a.
Po wpisaniu poprawnego adresu do witryny / pliku ASPX mamy błąd
404 – plik nie istnieje ?
Co robić? Prosta sprawa: sprawdzić czy mamy dozwolone rozszerzenie ASP.Net w naszym serwerze WWW. Zatem:
1. Przechodzimy do
Menadżera internetowych usług informacyjnych (IIS).
2. Klikamy na gałęzi „
Rozszerzenia usługi sieci Web„.
3. Na liście dostępnych rozszerzeń odszukujemy te o nazwie „
ASP.NET…„, zaznaczamy i klikamy „
Zezwalaj„.
4. Sprawdzamy czy pomogło

.
19 lut 2009 o 14:31 | IIS
Autor: admin |
Nie będę opisywał ani sensu stosowania, ani zalet / wad mechanizmu kompresji HTTP. Opiszę jedynie sposób na implementację tego rozwiązania na serwerze IIS 6.
1. Włączanie kompresji dla witryn w IISPrzechodzimy do „
Menedżera internetowych usług informacyjnych (IIS)„. Klikamy prawym klawiszem na „
Witryny sieci Web” i wybieramy polecenie „
Właściwości„. Klikamy na zakładkę „
Usługa„.
W sekcji „
Kompresja protokołu HTTP” zaznaczamy pola:
-
Kompresuj pliki aplikacji,
-
Kompresuj pliki statyczne.
Możemy dodatkowo ograniczyć maksymalny rozmiar katalogu tymczasowego do wybranej przez nas wartości. W przypadku gdy włączymy tą opcję, a rozmiar katalogu osiągnie podaną wartość starsze pliki tymczasowe będą zastępowane nowymi.
2. Dodawanie rozszerzenia usługi WebPrzechodzimy do „
Menedżera internetowych usług informacyjnych (IIS)„. Klikamy prawym klawiszem na „
Rozszerzenia usługi sieci Web” i wybieramy polecenie „
Dodaj nowe rozszerzenie usługi sieci Web„.
Podajemy nazwę rozszenia, np.
HTTP Compression.
Klikamy na przycisk „
Dodaj” i wskazujemy plik:
C:\WINDOWS\system32\inetsrv\gzip.dllUwaga: ścieżka do pliku gzip.dll może ulec zmianie w zależności od systemu.
Zaznaczamy „
Ustaw stan rozszerzenia na ‘dozwolone’” i klikamy na
„OK„.
3. Konfigurowanie rozszerzeń podlegających kompresjiPrzechodzimy do katalogu
c:\Windows\System32\inetsrv .Na wszelki wypadek wykonujemy kopię pliku
MetaBase.xml, a następnie otwieramy oryginalny plik do edycji.Odnajdujemy sekcję „
IIsCompressionScheme” dotyczacą kompresji gzip, czyli sekcję z atrybutem „
Location” ustawionym na wartość „
/LM/W3SVC/Filters/Compression/gzip„.Odnajdziemy sekcję podobną do poniższej:
| 01 | <IIsCompressionScheme |
| 02 | Location ="/LM/W3SVC/Filters/Compression/gzip" |
| 03 | HcCompressionDll="%windir%\system32\inetsrv\gzip.dll" |
| 04 | HcCreateFlags="1" |
| 05 | HcDoDynamicCompression="TRUE" |
| 06 | HcDoOnDemandCompression="TRUE" |
| 07 | HcDoStaticCompression="TRUE" |
| 08 | HcDynamicCompressionLevel="0" |
| 09 | HcFileExtensions="htm |
| 10 | html |
| 11 | txt" |
| 12 | HcOnDemandCompLevel="10" |
| 13 | HcPriority="1" |
| 14 | HcScriptFileExtensions="asp |
| 15 | dll |
| 16 | exe" |
| 17 | > |
| 18 | </IIsCompressionScheme> |
W atrybucie "
HcScriptFileExtensions" konfigurujemy pliki o jakim rozszeżeniu mają podlegać kompresji HTTP.
Zapisujemy zmodyfikowany plik i od tej pory możemy cieszyć się dobrodziejstwami kompresji HTTP.
24 lip 2008 o 20:23 | ASP.Net, IIS, Programowanie
Autor: admin |
Czy zdarzały Ci się utraty zawartości sesji (w trybie InProc) w swojej aplikacji ASP.Net ?
Jedną z przyczyn takich zdarzeń może być fakt restartu aplikacji webowej.
Możliwe przyczyny restartu aplikacji:
- modyfikacja któregoś z plików: machine.config, web.config, global.asax; w niektórych przypadkach programy antywirusowe mogą powodować, iż pomimo braku modyfikacji zawartości tych plików serwer dokona restartu aplikacji,
- modyfikacja plików w katalogu bin aplikacji,
- pliki ASP.Net (np. aspx, asmx) zostały zmodyfikowane, a w rezultacie przekompilowane więcej razy niż wskazuje sekcja compile -> numRecompilesBeforeApprestart pliku machine.config; domyślnie wartość ta jest dosyć niska, dlatego w przypadku gdy często dokonujemy aktualizacji naszych plików aplikacji na serwerze zaleca się jej zwiększenie,
- wewnątrz katalogu aplikacji został utworzony / skasowany / lub została zmieniona nazwa innego katalogu,
- pula aplikacji (AppPool) w IIS jest skonfigurowana tak, aby odświeżanie aplikacji (app recycle) wykonywane było zbyt często; aby zmodyfikować wartości odświeżania należy przejść do menadżer internetowych usług informacyjnych > pule aplikacji > [pula naszej aplikacji] > prawy klawisz myszki - Właściwości : zakładka Odświeżanie.
W przypadku używania trybu
InProc do przechowywania stanu sesji, gdy w IIS używamy (
Ogrodu sieci Web garden) mogą nastąpić utraty stanu sesji bez restartu aplikacji. W takim przypadku musimy sprawdzić czy wartość
Maksymalna liczba procesów roboczych dla puli naszej aplikacji nie jest ustawiona na liczbę większą od 1.
Aby przejść do konfiguracji Ogrodu sieci:
menadżer internetowych usług informacyjnych > pule aplikacji > [pula naszej aplikacji] > prawy klawisz
myszki
- Właściwości : zakładka
Wydajność, sekcja
Ogród sieci Web.