Udostępnianie witryny BI Point za pomocą IIS (Url Rewrite)

1. Konfiguracja http – przekierowanie

Uwaga
Poniższa instrukcja stworzona jest dla programu Comarch BI Point dla instancji, która stworzona jest na porcie innym niż port domyślny ( 80 ).

Aby konfiguracja przebiegła poprawnie są dwa rozwiązania, jeśli mamy program zainstalowany na porcie 80(domyślnym):

  • przeniesienie programu BI Point na inny port (np. 81), jeśli mamy go zainstalowanego na porcie 80.
  • w dalszym etapie konfiguracji utworzenie „site” na innym porcie niż 80 (przy czym w takim rozwiązaniu po zalogowaniu na stronę wymagane jest wpisywanie www.strona.pl:port)

Wymagane komponenty w przypadku konfiguracji za pomocą IIS (Internet Information Services):

W celu przekierowaniu nowo zainstalowanego BI Pointa na innym porcie można wykorzystać funkcjonalność IIS. W tym celu konieczne jest zainstalowanie dodatku Microsoft Application Request Routing 3.0. Następnie należy skonfigurować plik config.json znajdujący się w katalogu:
C:\Program Files (x86)\Comarch\BIPoint\instances\Nazwa_instancji\bipoint\config.json
Zgodnie z poniższym zrzutem ekranu:

 

 

Jeżeli chcemy zezwalać na połączenie do BI Point przez wybraną domenę/subdomenę należy odpowiednio zmodyfikować wpis „AllowedHosts”

Windows

"AllowedHosts": "bipoint.example.com"

Linux

bipoint:
(...)
environment:
- AllowedHosts=bipoint.example.com;another.example.com
(...)

 

Jeśli chcemy zdefiniować więcej niż jednego hosta, oddzielamy je średnikiem ;

Uwaga
Aby poprawnie działał silnik analityczny, należy dopisać do AllowedHosts host, jaki jest podany w ApiUrl silnika. Domyślna nazwa kontenera bipoint jest automatycznie dodawana, ale jeśli zmieniło się nazwę kontenera BI Point na Linuxie w docker-compose.yml, należy odpowiednio zaktualizować AllowedHosts

Zmianę należy także uwzględnić na bazie BI Point w tabeli dbo.settings dla BIPointUrl. W SET_CustomValue należy wprowadzić nazwę witryny zgodną z adresem witryny po którym BI Point będzie hostowany.

 

 

W przypadku instancji które korzystają z silnika analitycznego należy również wpisać adres (taki jak w dbo.Settings) w pliku appsetings.json dostępnym w ścieżce: C:\Program Files (x86)\Comarch\BI Point\instances\Nazwa_instancji\engine\appsettings.json
Dla wpisu „ApiUrl”: „”

 

Kolejnym krokiem jest dodanie witryny na IIS. W tym celu po uruchomieniu – ‘Menadżera internetowych usług informacyjnych’ należy przejść do folderu witryny, a następnie wybrać ‘Dodaj witrynę sieci Web…’

 

 

 

 

 

W zależności od adresu na którym chcemy hostować BI Point uzupełniamy nazwę witryny (w opisywanym przypadku BI Point ma być dostępny pod adresem bipoint101.pl) oraz nazwę hosta. Ścieżka fizyczna jest dowolna z zaleceniem, aby podawać ścieżkę fizyczną do pustego katalogu.

 

 

 

 

 

 

 

 

 

 

 

Po wprowadzeniu wszystkich parametrów zatwierdzamy przyciskiem ‘OK’.

W kolejnym kroku należy dodać server farm, funkcjonalność jest dostępna po zainstalowaniu dodatku
ARR i restarcie IIS. W celu utworzenia server farm należy zgodnie z poniższym zrzutem ekranu wybrać
opcję – ‘Create Server Farm’.

 

 

 

W polu server Farm Name wpisujemy dowolną nazwę (zalecana nazwa powinna wskazywać jasno do jakiej aplikacji/witryny się odnosi). W advance settings tworzenia server farm należy wskazać port (w polu httpPort) na którym jest obecnie zainstalowany BI Point, który chcemy przekierować. W przypadku opisywanej instalacji BI Point został zainstalowany na porcie 81, dlatego w polu httpPort wprowadzony został ten port. W host name należy wpisać localhost, a w server address ip 127.0.0.1.

 

 

 

 

 

 

 

 

 

 

Po uzupełnieniu wszystkich parametrów należy zatwierdzić przyciskiem – ‘Add’, a następnie wybrać opcję – ‘Zakończ’.

Po dodaniu serwera wyświetli się pytanie o utworzenie reguły, które należy potwierdzić:

 

 

 

 

 

Efekt potwierdzenia powyższego komunikatu widoczny jest po przejściu do zakładki dom/home IIS > Url Rewrite. We wskazanej ścieżce po uruchomieniu URL Rewrite powinna być widoczna reguła zgodna z poniższym widokiem:

 

 

 

Po wejściu w jej edycje zostanie wyświetlony poniższy widok:

 

 

 

 

 

 

 

 

 

 

 

Pattern w zakładce Match URL powinien być uzupełniony symbolem „*”, chyba że konfigurowana jest instancja nazwana (patrz Konfiguracja http z prefixem URL). W zakładce – ‘Conditions’ należy wybrać opcję – ‘Add’. Po wybraniu opcji wyświetli się okno:

 

 

 

 

 

 

Jako „Condition input” podajemy {HTTP_HOST}, i jako „Pattern” wpisujemy adres, pod jakim BI Point ma być dostępny (Można użyć również * jako dowolny adres). Po wybraniu opcji ‘Test Pattern…’ można również zweryfikować czy wprowadzony wzór obejmuje docelowy adres URL BI Pointa:

 

 

 

 

 

 

 

 

 

Po zapisaniu konfiguracji, może być wymagany restart IIS / BI Pointa, lub kilka odświeżeń strony, po czym instancja BI Point powinna być dostępna pod skonfigurowanym adresem. Jeżeli wskazana witryna nie jest dostępna z sieci zewnętrznej (brak adresu publicznego) należy również uwzględnić adres strony w pliku host (C:\Windows\System32\drivers\etc\hosts). W Przypadku opisywanej instalacji należy uzupełnić zgodnie z poniższym zrzutem:

 

 

 

 

 

 

Po dodaniu witryny BI Point powinien być dostępny pod linkiem dodanej witryny:

 

 

 

 

 

 

 

 

 

 

2. Konfiguracja HTTPS

Konfiguracja HTTPS wymaga powyższej konfiguracji oraz certyfikatu SSL. Następnie, klikamy PPM na utworzoną witrynę, dla której chcemy skonfigurować https, i wybieramy opcję „Edytuj powiązania„. Tam należy dodać nowe powiązanie, z konfiguracją https. Wybieramy też odpowiedni certyfikat https.

 

 

 

 

 

 

 

 

 

Następnie po przejściu na ‘dom’ witryny wybieramy

 

 

 

 

 

I zaznaczamy ‘Wymagaj protokołu SSL’. Następnie przechodzimy do IIS ‘dom’ i wybieramy URL Rewrite.
Wybieramy opcje:

 

 

 

 

Następnie ‘add’ i wpisujemy nazwę – HTTP_X_FORWARDED_PROTO. Następnie przechodzimy do
reguły dodanej w pierwszym punkcie dokumentu:

 

 

 

I dodajemy w zakładce ‘Server Variables’:

 

 

 

 

 

 

Po ponownym restarcie IIS BI Point powinien być dostępny po https.

 

Ustawienie nagłówka HSTS

Gdy wykorzystujemy połączenie po HTTPS, należy włączyć ustawianie nagłówka HSTS. Opcja ta powoduje wymuszenie korzystania z protokołu HTTPS przez przeglądarkę. W konfiguracji aplikacji należy ustawić wartość flagi UseHsts na true. Dodatkowo należy określić port https ustawiając https_port.

Ustawienia w config.json

W celu prawidłowego wyświetlania strony należy w pliku config.json znajdującym się w ścieżce C:\Program Files (x86)\Comarch\BI Point\instances\Nazwa_instancji\bipoint\ Ustawić flagę UseForwardHeaders na true.

3. Konfiguracja http z prefiksem URL

Jeżeli na IIS skonfigurowane są inne witryny na Default Web Site istnieje możliwość skonfigurowania BI Pointa z prefiksem URL (tzn. adres URL przyjmuje przykładową postać: demo-xl.comarch.pl/bipoint). W tym celu w ramach konfiguracji należy utworzyć aplikację pod witryną ‘Default Web Site’. W pierwszej kolejności należy zmodyfikować plik config.json znajdujący się w ścieżce: C:\Program Files (x86)\Comarch\BI Point\instances\Nazwa_instancji\bipoint\config.json W pliku należy uwzględnić nazwę instancji w poniższym miejscu (w opisywanym przypadku instancja to bipoint)

 

 

 

 

Następnie z poziomu IIS należy dodać aplikację zgodnie z poniższym zrzutem:

 

 

 

 

 

 

 

 

 

Dodając aplikacje należy wskazać nazwę instancji (w opisywanym przypadku bipoint) i podać ścieżkę
do pustego katalogu.

 

 

 

 

 

 

 

 

 

W kolejnym kroku należy dodać server farm, funkcjonalność jest dostępna po zainstalowaniu dodatku ARR i restarcie IIS. W celu utworzenia server farm należy zgodnie z poniższym zrzutem ekranu wybrać opcję – ‘Create Server Farm’.

 

 

 

W polu server Farm Name wpisujemy dowolną nazwę (zalecana nazwa powinna wskazywać jasno do jakiej aplikacji/witryny się odnosi). W advance settings tworzenia server farm należy wskazać port (w polu httpPort) na którym jest obecnie zainstalowany BI Point, który chcemy przekierować. W przypadku opisywanej instalacji BI Point został zainstalowany na porcie 81, dlatego w polu httpPort wprowadzony został ten port. W host name należy wpisać localhost, a w server address ip 127.0.0.1.

 

 

 

 

 

 

 

 

 

Po uzupełnieniu wszystkich parametrów należy zatwierdzić przyciskiem – ‘Add’, a następnie
wybrać opcję – ‘Zakończ’.

Po dodaniu serwera wyświetli się pytanie o utworzenie reguły, które należy potwierdzić:

 

 

 

 

Efekt potwierdzenia powyższego komunikatu widoczny jest po przejściu do zakładki dom/home IIS > Url Rewrite. We wskazanej ścieżce po uruchomieniu URL Rewrite powinna być widoczna reguła zgodna z poniższym widokiem:

 

 

 

 

Regułę w opisywanym przypadku należy edytować zgodnie z poniższym widokiem:

 

 

 

 

 

 

 

 

 

W ‘Pattern’ należy wprowadzić wyrażenie, które obejmować będzie jedynie instancję BI Point, a nie inne witryny. W opisywanym przypadku wzór przyjmuje postać *bipoint*.

 

 

 

 

 

 

 

Czy ten artykuł był pomocny?