9.1. iRuleの作成

「HTTPリクエストの特定のURI path(/test)の場合、任意のコンテンツを返す」 内容のiRuleを作成していきます。

9.1.1. iRule作成

CM画面左上部のworkspaceから、”Applications”を選択します。

../../_images/c9-m1-1.png

左メニューから ”iRules” を選択し、右上の ”+ Create” をクリックします。

../../_images/c9-m1-2.png

次のiRuleスクリプトを、iRule設定画面にコピー&ペーストします。

when HTTP_REQUEST {
    if { [HTTP::uri] eq "/test"} {
        set content "<!doctype html>\n
        <head lang=\"en\">\n
        <meta charset=\"utf-8\">\n
        <title>Test Page</title>\n
        </head>\n
        <body>\n
          <h3>Test Page</h3>\n
            <ul>\n
              <li> Virtual server address: [IP::local_addr] </li>\n
              <li> Client IP:port: [IP::client_addr]:[TCP::client_port]</li>\n
            </ul>\n</body>\n</html>"
        HTTP::respond 200 content $content
    }
}

  • 作成するiRuleのスクリプト内容

    • HTTP Requestイベント時

    • URI Path "/test" へのアクセスの場合、“Test Page”のhtmlコンテンツとステータスコード200をレスポンスする


../../_images/c9-m1-3.png
  • Name:
    • irule-test

  • 上記赤枠のフィールドに前ページのiRuleをコピーペーストし、 ”Save” をクリック


9.1.2. アプリケーションへの適用

My Application Servicesから作成済みの”HTTP-Service”をクリックします。

../../_images/c9-m1-4.png

次画面右上の”Edit”をクリックします。

../../_images/c9-m1-5.png

iRuleの"Edit"ボタンをクリックします。

../../_images/c9-m1-6.png

“Use iRules”のトグルをEnableにし、”Add”をクリックします。

../../_images/c9-m1-7.png

作成した”irule-test”のチェックボックスをクリックし”Add”をクリックします。

../../_images/c9-m1-8.png

元画面で "Save" をクリックし、 ”Review & Deploy" をクリックします。


次のDeploy画面で、 "Deploy Changes" をクリックします。

../../_images/c9-m1-9.png
"Yes, Deploy" をクリックします。
../../_images/c9-m1-10.png

クライアントからサーバへの通信確認を行います。 Windows clientのブラウザから

http://10.1.10.100/test のURLへアクセスを試行します。

../../_images/c9-m1-11.png

"Test Page" の画面が表示されると、iRuleからコンテンツを返しています。