Program budujący wyrażenia reguł HTTP

Program budujący podwyrażenia służy do budowania złożonych warunków reguł na podstawie podwyrażeń przy użyciu operatorów I, LUB oraz Nie, a także grupowania za pomocą nawiasów. Program budujący reguły sprawdza poprawność reguły po wprowadzeniu zmiany i informuje o występowaniu brakujących nawiasów i nieobsługiwanych operatorów logicznych.

Aby wyświetlić tę stronę Konsoli administracyjnej, należy kliknąć opcję Serwery > Typy serwerów > Routery na żądanie > nazwa_routera_na_żądanie > Właściwości routera na żądanie > Reguły HTTP dla strategii kierowania > Dodaj > Program budujący podwyrażenia.

Aby móc modyfikować reguły przy użyciu programu budującego reguły, należy mieć uprawnienia administratora.

Wybór operandu

Operandy strategii obsługi i kierowania

W zależności od wybranego protokołu wyświetlane są różne operandy. W poniższej tabeli uwzględniono nazwy operandów wyświetlane w konsoli, rzeczywisty operand w postaci, w jakiej zostanie wyświetlony w wyrażeniu, poprawne protokoły dla poszczególnych operandów oraz opis każdego operandu.

Tabela 1. Operandy
Zmienna żądania Poprawne protokoły Opis
virtualhost

HTTP

SOAP

Docelowy host wirtualny żądania używany na potrzeby konfigurowania konkretnej nazwy hosta w aplikacjach WWW.
virtualport

HTTP

Docelowy port wirtualny żądania używany do konfigurowania określonego portu w aplikacjach WWW.
uri

HTTP

Jednolity identyfikator zasobu. Pozwala poznać ścieżkę żądania. Jeśli adres URL miał postać „http://host:port/ścieżka?p1=v1”, ścieżką jest „ścieżka”.
ID użytkownika   Zwraca identyfikator użytkownika dla uwierzytelnionego użytkownika, który wysłał żądanie.
Identyfikatory grupy   Zwraca listę nazw grup dla uwierzytelnionego użytkownika, który wysłał żądanie.
Nazwa parametru zapytania żądania   Nazwa i wartość nagłówka.
Na przykład wyrażenie queryparm$timezone='EST' testuje żądanie, aby sprawdzić, czy zawiera parametr zapytania HTTP o nazwie timezone i wartości EST. W celu przeprowadzenia testu wykrywającego obecność parametru zapytania należy użyć jednego z następujących formatów:
queryparm$timezone IS NOT NULL
queryparm$timezone IS NULL
Nazwa nagłówka żądania

Nazwa i wartość nagłówka.
Na przykład wyrażenie header$Host='localhost' testuje żądanie, aby sprawdzić, czy zawiera nagłówek HTTP hosta o wartości localhost. W celu przeprowadzenia testu wykrywającego obecność nagłówka hosta należy użyć jednego z następujących wyrażeń:
header$Host
IS NOT NULL header$Host IS NULL
Nazwa nagłówka informacji cookie   Nazwa informacji cookie.
Na przykład wyrażenie cookie$Nazwa_mojej_informacji_cookie='Wartość_mojej_informacji_cookie' testuje żądanie, aby sprawdzić, czy zawiera informację cookie o nazwie Nazwa_mojej_informacji_cookie z wartością Wartość_mojej_informacji_cookie. W celu przeprowadzenia testu wykrywającego obecność określonej informacji cookie należy użyć jednego z następujących wyrażeń:
cookie$nazwa_mojej_informacji_cookie IS NOT NULL
cookie$nazwa_mojej_informacji_cookie IS NULL
HTTPMethod

HTTP

SOAP

Metoda HTTP żądania. Możliwe wartości: POST, GET, PUT i DELETE.
clienthost

HTTP

SOAP

IIOP

SIP

Pełna nazwa hosta klienta. Jest to wartość nazwy hosta komend protokołu IP (Internet Protocol). Ten operand nie obsługuje operatorów liczbowych, takich jak >, >=, < i <=.
clientipv4

HTTP

SOAP

SIP

Adres IP komputera klienckiego używającego protokołu Internet Protocol w wersji 4 (IPv4) w postaci czterech grup cyfr oddzielonych kropkami: n.n.n.n.
clientipv6

HTTP

SOAP

SIP

Adres komputera klienckiego w postaci 128-bitowego adresu protokołu Internet Protocol w wersji 6 (IPv6) w formacie x:x:x:x:x:x:x:x zgodnego z dokumentem Request for Comments 1924 (RFC 1924).
serverhost

HTTP

SOAP

IIOP

SIP

Pełna nazwa hosta serwera. Ten operand nie obsługuje operatorów liczbowych, takich jak >, >=, < i <=.
serveripv4

HTTP

SOAP

SIP

Adres IP serwera używającego protokołu IPv4 w postaci czterech grup cyfr oddzielonych kropkami: n.n.n.n.
serveripv6

HTTP

SOAP

SIP

Adres serwera w postaci 128-bitowego adresu protokołu IPv6 w formacie x:x:x:x:x:x:x:x zgodnym z dokumentem Request for Comments 1924 (RFC 1924).
port

HTTP

SOAP

IIOP

SIP

Port nasłuchiwania, na którym odebrano żądanie.
protocol

HTTP

SOAP

Protokół komunikacyjny przesyłający żądanie. Obecnie obsługiwane protokoły to HTTP, HTTPS, SOAP i SOAPS.
virtualportal

HTTP

SOAP

Portale wirtualne są tworzone na serwerze WebSphere Portal Server, a produkt Intelligent Management obsługuje ten operand w celu lepszej integracji z serwerem WebSphere Portal Server. Portal wirtualny to adres URL żądania bez kontekstowego katalogu głównego modułu WWW aplikacji produktu WebSphere Portal. Jeśli dane żądanie jest zgodne ze zdefiniowanym portalem wirtualnym, zostanie wykonane działanie kierowania określone dla danej reguły.
time

HTTP

SOAP

IIOP

Ten operand służy do definiowania daty i godziny, o której dane żądanie musi być uznane. Dwa opcjonalne pola to Czas rozpoczęcia i Czas zakończenia. Jeśli żądanie odebrano poza tym zdefiniowanym oknem, nie będzie ono przetwarzane.

Pola Czas rozpoczęcia i Czas zakończenia mają następujący format: dzień_tygodnia/dzień_miesiąca/miesiąc/rok::godzina:minuta:sekunda.

Na przykład godzina 13:03:45 w czwartek 11 kwietnia 2007 jest określana następująco:

czw/11/kwi/2007::13:03:45

W dowolnym polu można użyć znaku wieloznacznego (*). Na przykład wartość określająca pierwszy dzień każdego miesiąca to */1.

Możliwe wartości pola dzień_tygodnia to nie, pon, wto, śro, czw, pią i sob, a pola dzień_miesiąca to liczby z zakresu od 1 do 31.

Wartość pola miesiąc to wartość nieliczbowa reprezentująca jeden z dwunastu miesięcy: sty, lut, mar, kwi, maj, cze, lip, sie, wrz, paź, lis lub gru.

Wartość pola rok to cztery cyfry reprezentujące rok. Na przykład: 2007.

Wartość pola godzina to godzina w formacie zegara 24-godzinnego. Na przykład godzina 8 przed południem jest reprezentowana jako wartość ::8. Wartości pól minuta i sekunda to liczby całkowite z zakresu od 0 do 59.

Ukośnik (/) służy do oddzielania parametrów daty. Podwójny dwukropek (::) oddziela wartości daty i godziny, natomiast dwukropek (:) jest używany do oddzielania parametrów godziny. Należy zauważyć, że wykonywane działanie kierowania jest określane przez wynik boolowski całej reguły, w której użyto operandu time.

percentage$<wartość>

HTTP

SOAP

IIOP

SIP

Operand percentage przyjmuje wartość true dla procentu przypadków określonych za pomocą wartości. Na przykład wyrażenie percentage$50 przyjmuje wartość true średnio dla 50% przypadków.
rampup$<czas_rozpoczęcia>$<czas_zakończenia>

HTTP

SOAP

IIOP

SIP

Operand rampup przyjmuje wartość true dla zmiennej liczby przypadków. Ten operand zawsze przyjmuje wartość false przed czasem określonym za pomocą parametru <czas_rozpoczęcia> oraz wartość true po czasie określonym za pomocą parametru <czas_zakończenia>. Wraz z upływem czasu od momentu reprezentowanego przez parametr <czas_rozpoczęcia> do momentu określonego za pomocą parametru <czas_zakończenia> operand rampup przyjmuje wartość true dla zwiększanego liniowo procentu przypadków.

Format parametrów <czas_rozpoczęcia> i <czas_zakończenia>: dzień/miesiąc/rok::godzina:minuta:sekunda.

Wartość dzień to dzień miesiąca, miesiąc to jeden z dwunastu miesięcy (sty, lut, mar, kwi, maj, cze, lip, sie, wrz, paź, lis lub gru), rok to rok w postaci 4-cyfrowej, godzina to godzina w formacie 2-cyfrowym zegara 24-godzinnego, a minuta i sekunda to 2-cyfrowe wartości reprezentujące, odpowiednio, liczbę minut i sekund.

Na przykład:

Operand rampup$01/sty/2007::08:00:00$01/sty/2007::17:00:00 zaczyna sporadycznie przyjmować wartość true o godzinie 8 pierwszego stycznia 2007, a o godzinie 17 tego samego dnia oznaczającej koniec zwiększania procentu zawsze przyjmuje wartość true.

Operator

  • Jest równe (nie jest rozróżniana wielkość liter) (EQUALSIGNORECASE): Taki sam jak 'łańcuch = łańcuch', z wyjątkiem tego, że wielkość liter łańcuchów jest ignorowana. Tak więc wyrażenie 'ABC' EQUALSIGNORECASE 'abc' przyjmuje wartość true. ('ABC' = 'abc') przyjmuje wartość false.
  • Nie jest równe (<>): Operator nierówności wyraża, że wartość operandu nie jest równa wprowadzonej wartości.
  • Zawiera się w (IN): Ten operator służy do łączenia operandu z wieloma wartościami w ramach pojedynczego wyrażenia. Jeśli na przykład dla operandu o nazwie port chcesz określić, że numerem portu mogą być wszystkie następujące wartości (lub dowolna z nich): 9080, 9090 i 9091, fragment wyrażenia powinien wyglądać tak: port zawiera się w (9080,9090,9091). Sposób zapisu wartości w nawiasach zależy od typu danych operandu port. Jeśli numer portu jest liczbą całkowitą, poprawnym zapisem są wartości bez cudzysłowów. Jeśli numer portu jest łańcuchem, poprawna składnia wygląda następująco: port IN (‘9080’,‘9090’,‘9091’).
  • Jest podobne do(LIKE): Ten operator oznacza dopasowywanie wzorca dla łańcuchowych wartości operandu. Wartość musi zawierać znak wieloznaczny - symbol procentu (%) - w miejscu, w którym rozpoczyna się dopasowywanie wzorca. Na przykład wyrażenie host LIKE %blanca jest zgodne ze słowem blanca oraz wszystkimi innymi słowami, które kończą się tym łańcuchem. Wyrażenie host LIKE blanca% jest zgodne ze słowem blanca oraz wszystkimi innymi słowami, które zaczynają się od tego łańcucha. Natomiast wyrażenie host LIKE %blanca% jest zgodne ze słowem blanca oraz wszystkimi innymi słowami, w których jest osadzony ten łańcuch.
  • Jest podobne do (nie jest rozróżniana wielkość liter) (LIKEIGNORECASE): Taki sam jak 'łańcuch like łańcuch', z tą różnicą, że wielkość liter łańcuchów jest ignorowana.
  • Nie jest puste (IS NOT NULL): Ten operator oznacza, że sprawdzenie poprawności zapytania pokazuje, że żądany parametr istnieje.
  • Konkatenacja (+): Ten operator wyraża połączenie dwóch łańcuchów znakowych: 'abc' + 'def' = 'abcdef'.
  • Jest podobne do i zawiera się (LIKEIN): Wyrażenia z tym operatorem dla łańcucha likein (łańcuch1, łańcuch2, łańcuch3 itd.) przyjmują wartość true, gdy łańcuch po lewej stronie operatora „likein” pasuje do jednego lub więcej łańcuchów (łańcuchN)
  • Jest puste (IS NULL): Ten operator oznacza, że sprawdzenie poprawności zapytania wskazuje, że żądany parametr nie istnieje.
  • Jest równe (=): Operator równości wyraża zgodność z rozróżnianiem wielkości liter.

Wartość

Zależnie od wybranego operatora należy wpisać wartość dla podwyrażenia, które ma zostać utworzone.

Generuj podwyrażenie

Generuje podwyrażenie jako wynik określonego operandu, operatora i wartości.

Dodaj

Tę opcję należy kliknąć, aby dodać podwyrażenie do pola na panelu reguł.



Nazwa pliku: http_rulebuilder_detail.html