Classic/VPC環境で利用できます。
NAVERクラウドプラットフォームコンソールで Global Edgeを作成する方法を説明します。
Global Edgeを作成するには、まずプロファイルを作成した後、その中に属するエッジを作成します。エッジを作成する方法には Quick Startと Self Integrationがあります。
- Quick Start: 簡単な設定で速やかにエッジを作成します。
- Self Integration: エッジの詳細設定をユーザーが直接構成し、カスタマイズエッジを作成します。
プロファイル作成
プロファイルを作成する方法は、次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Content Delivery > Global Edgeメニューを順にクリックします。 - Management画面で [プロファイル作成] ボタンをクリックします。
- プロファイル作成画面でプロファイル名を入力します。
- 3~35文字以内の英数字、ハイフン(-)、アンダースコア(_)使用可能
- [完了] ボタンをクリックします。
- 作成されたプロファイルが選択されたステータスの Management画面に移動します。
Quick Startでエッジ作成
Quick Startでエッジを作成する方法は、次の通りです。
Quick Startでエッジを作成するには、まずコンテンツソースを NAVERクラウドプラットフォームの Object Storageに保存する必要があります。
- NAVERクラウドプラットフォームコンソールで、
> Services > Content Delivery > Global Edgeメニューを順にクリックします。 - 画面上のプロファイルドロップダウンリストでエッジを作成するプロファイルを選択します。
- [Edge作成] ボタンをクリックします。
- Edge設定画面が表示されたら、Quick Startを選択した後、 [次へ] ボタンをクリックします。
- 次のステップを順に行います。
1. リリース設定
リリースするエッジの基本項目を構成します。
- Edge名: エッジの名前を入力
- 3~35文字以内の英数字、ハイフン(-)、アンダースコア(_)使用可能
- Service Protocol HTTPS: コンテンツの呼び出し時に使用するプロトコルに HTTPSを使用するか選択(推奨)。 HTTPSを使用すると、リクエストした情報が暗号化された状態でサーバからブラウザへ転送。
- サービスドメイン: ユーザーがブラウザでリンクをクリックしたり、URLを入力してアクセスするドメインを設定
- NAVER Cloud Platformドメインの使用: NAVERクラウドプラットフォームで「乱数.edge.naverncp.com」の形式で自動作成されるドメインを使用
- 顧客が保有するドメインを使用: NAVERクラウドプラットフォーム以外のドメインを使用。使用するドメインの入力が必要。
- Service Protocol HTTPSを選択した場合、 [証明書登録] ボタンをクリックし、保有中の SSL証明書を登録します。
- サービス地域: コンテンツキャッシュと転送を許可するエッジサーバ地域を設定
- 韓国または日本を選択する場合、当該国に位置するエッジサーバを通じてのみコンテンツキャッシュと転送が可能
- グローバルの選択時、NAVER Cloudネットワークとパートナーネットワークを通じて世界中のすべてのエッジサーバを介してコンテンツキャッシュと転送が可能
2. ソース構成
Object Storageを Global Edgeと連携する場合、コンテンツ保護のためにカスタム機能(ルールビルダー > キャッシュの詳細ルール)を適用して使用することをお勧めします。
コンテンツソースが保存された場所を指定します。
- オリジン選択: オリジンタイプを選択
- NCP Object Storage: NAVERクラウドプラットフォームサービスであるオブジェクトストレージをオリジンとして構成
- NCP Load Balancer: NAVERクラウドプラットフォームサービスであるロードバランサをオリジンとして構成
- NCP API Gateway: NAVERクラウドプラットフォームサービスである APIゲートウェイをオリジンとして構成
- 外部オリジンドメイン: 外部のサーバ IPアドレス(IPv4)またはドメインをオリジンとして構成
- フォワードホストヘッダ: オリジンに転送するホストヘッダを設定
- Incoming Host Header: サイトまたはアプリの最終ユーザー対象ホスト名として、クライアントと Global Edgeエッジサーバ間の関連付けに使用(ex. www.navercloud.com)
- Origin Hostname: Originのホスト名として、Origin Server Hostnameフィールドを定義したドメインを使用(ex.example.kr.object.ncloudstorage.com)
- Custom: ユーザー指定値を使用
- オリジンプロトコル設定: HTTPと HTTPSリクエストに対してエッジサーバの接続に使用するソースサーバのポートを指定
- HTTPの標準ポートは80、HTTPSの標準ポートは443
参考許可可能なオリジンポート番号
72; 80-89; 443; 488; 591; 777; 1080; 1088; 1111; 1443; 2080; 7001; 7070; 7612; 7777; 8000-9001; 9090; 9901-9908; 11080-11110; 12900-12949; 45002; - オリジンパス: オリジンに関するリクエストに追加するディレクトリパスを指定
- オリジン example.navercloud.com、オリジンパス/image/、リクエストが my_img/example.jpgの場合: オリジン呼び出しは example.navercloud.com/image/my_img/exmaple.jpg
- オリジンフェイルオーバー: エッジサーバがオリジンからの特定レスポンスコード値によって、オリジンフェイルオーバー参考
レスポンスステータスコード値
404, 500, 502, 503, 504
3. キャッシュ
キャッシュを制御する方法を構成します。
- Default Caching(30days): すべてのインスタンスをキャッシュし、キャッシュの TTL(Time to live)は30日に設定
その他のキャッシュ設定と最適化設定は、以下のように自動適用されます。
- キャッシュ設定
- ネガティブ TTL(s): ON
- Remove Vary Header: ON
- Cache Key Hostname: Incoming Host Header
- Cache key Ignore Query String: 全体無視
- 最適化設定
- 圧縮転送 ON
- 大容量ファイル転送 ON
4. 作成完了
設定内容を確認した後、画面上の [Edge作成完了] ボタンをクリックします。
- 作成されたエッジがリストに追加され、自動でリリースします。
- エッジがリリースされるまで数分から数十分かかります。
Self Integrationでエッジ作成
Self Integrationでエッジを作成する方法は、次の通りです。
- NAVERクラウドプラットフォームコンソールで、
> Services > Content Delivery > Global Edgeメニューを順にクリックします。 - 画面上のプロファイルドロップダウンリストでエッジを作成するプロファイルを選択します。
- [Edge作成] ボタンをクリックします。
- Edge設定画面が表示されたら、Self Integrationを選択した後、 [次へ] ボタンをクリックします。
- 作成するエッジ名を入力し、 [次へ] ボタンをクリックします。
- 3~35文字以内の英数字、ハイフン(-)、アンダースコア(_)使用可能
- 画面左側に並べられた各設定をクリックし、詳細設定を直接構成します。
1つの設定を完了し、次の設定に移動すると、入力した設定値は自動で保存されます。
リリース設定
リリースするエッジの基本項目を構成します。
サービス設定
サービス設定項目は次の通りです。
| 項目 | 説明 |
|---|---|
| サービスプロトコル | コンテンツの呼び出し時に使用するプロトコルの定義
|
| サービス地域 | コンテンツキャッシュと転送を許可するエッジサーバ地域を設定
|
| サービスドメイン | クライアントがアクセスするドメインの設定
|
Global Edge Logging
Global Edge Loggingを使用すると、各インスタンスに対するリクエスト情報をログで残し、Object Storageに保存できます。
詳細項目は次の通りです。
| 項目 | 説明 |
|---|---|
| Region選択 | ログファイルを保存する Object Storageのリージョンを選択 |
| Bucket選択 | ログファイルを保存する Object Storageのバケットを選択 |
| Bucket prefix | ログを保存する詳細パスを入力 |
ソース設定
キャッシュ対象のコンテンツソースを構成します。
ソース設定
ソースの設定項目は次の通りです。
| 項目 | 説明 |
|---|---|
| ソースドメイン | エッジサーバが参照するコンテンツソースのドメインを入力
|
| Forward Host Header | クライアントリクエストをオリジンサーバにフォワードする時に使用するホストヘッダを設定。ソースドメインが Object Storageの場合、Origin Hostnameのみ設定可能。
|
| ソースプロトコル設定 | エッジサーバが接続するオリジンサーバのポートを設定。HTTPと HTTPSから選択し、ポート番号を入力。
|
| ソースパス | オリジンサーバ内のコンテンツソースが位置する詳細パス入力 |
-
API Gatewayをオリジンに選択する場合、フォワードホストヘッダの設定を Origin Hostnameに設定します。また、オリジンプロトコル設定を HTTPS 443に設定することをお勧めします。
-
VPC環境の API Gatewayと Load Balancerサービスとの連携をサポートします。
オリジンフェイルオーバー
オリジンフェイルオーバーとは、オリジンサーバがレスポンスに失敗した時、コードに応じてバックアップオリジンサーバにリクエストをフォワードする機能を意味します。
[作成] ボタンをクリックするとフォワードルールが設定できます。詳細項目は次の通りです。
| 項目 | 説明 |
|---|---|
| Rule Name | フォワードルールの名前を入力 |
| Rule Configuration | ルール構成
|
キャッシュ設定
キャッシュを制御する方法を構成します。
Default Caching
すべてのインスタンスに対する基本キャッシュ設定は次の通りです。
| 項目 | 説明 |
|---|---|
| キャッシュオプション | キャッシュ動作設定
|
| Serve Stale object | インスタンスのキャッシュライフサイクルが有効期限切れになる時にタスクを指定(コンテンツソースを使用できない場合)
|
| Maxage | キャッシュの最大保存期間を指定
|
ネガティブ TTL(s)
ネガティブ TTL(s)を使用すると、オリジンサーバからエラーレスポンスを受けた場合、レスポンスをキャッシュしてオリジンサーバの負荷を軽減できます。
トグルボタンをクリックして機能を有効にすると、4xx、5xx HTTPコードレスポンスに対して、基本10秒間適用されます。
Bypass Query String
Bypass Query Stringを使用すると、特定文字列を含むリクエスト URLはキャッシュされず、オリジンサーバにバイパスされます。設定する方法は、次の通りです。
- Bypass Query Stringトグルボタンをクリックして機能を有効にします。
- Query String入力ウィンドウにバイパスの基準となる文字列を入力し、入力ウィンドウ周りの空スペースをもう一度クリックして文字列を認識させます。
- 文字列を複数入力するには、このプロセスを繰り返します。
- 希望する文字列をすべて入力したら、 [保存] ボタンをクリックします。
- 保存後、必要に応じて [変更] ボタンをクリックして文字列を変更できます。
Cache Key Hostname
キャッシュキーを構成する時に使用するホスト名を選択できます。詳細項目は次の通りです。
| 項目 | 説明 |
|---|---|
| Incoming Host Header | サービスドメインをキャッシュキーに含める |
| Origin Hostname | オリジンサーバのホスト名をキャッシュキーに含める |
Cache key Ignore Query String
キャッシュキーには基本的にクエリ文字列を使用しません。ただし、文字列を含めるかどうかを変更したり、特定文字列のみを許可するように設定し、インスタンス区分を制御できます。詳細項目は次の通りです。
| 項目 | 説明 |
|---|---|
| すべて無視 | キャッシュキーにすべてのクエリ文字列を除外 |
| すべて許可 | キャッシュキーにすべてのクエリ文字列を含む |
| 特定の文字列を許可 | キャッシュキーに特定のクエリ文字列のみ含む。入力ウィンドウに当該文字列を入力後、保存。 |
キャッシュキーの大小文字無視
一般的にオリジンは URLのパスとファイル名を大小文字に区分するものとみなします。
リクエストをキャッシュする時、エッジサーバが URLの大小文字の区分を処理する方法を決定します。
Microsoft IISを使用するサーバのような一部のオリジンサーバは、大小文字を区分しません。オリジンが大小文字を区分しない場合、この機能を有効にします
Remove Vary Header
オリジンサーバのレスポンスに Accept-Encodingでない Varyヘッダが含まれると、エッジサーバはレスポンスをキャッシュしません。
トグルボタンをクリックして機能を有効にすると、オリジンサーバで Varyヘッダを含めてレスポンスします。ただし、実際の内容が同じである場合、インスタンスをキャッシュできるように Varyヘッダを削除します。
Edge Auth
コンテンツの無断共有を防止するためにワンタイムトークンを作成し、認証に成功したリクエストにのみコンテンツをレスポンスするように設定できます。設定する方法は、次の通りです。
- Edge Authトグルボタンをクリックして機能を有効にします。
- Signed URLと JWTの中で認証方式を選択します。
- Signed URL: URLに認証情報を含めて、これを通じてアクセスするすべてのクライアントを許可
- JWT: 認証情報を含む JSONトークンを作成し、HTTPヘッダに入れてクライアントを識別
- トークン名入力ウィンドウにトークン名を入力し、トークン key画面の [作成] ボタンをクリックします。
- トークンが作成され、表示されます。
- [作成] ボタンをクリックするたびにトークンの key値が変更されます。
ルールビルダー
詳細なキャッシュルールを作成し、コンテンツを制御する方法を構成します。
キャッシュの詳細ルール
エッジサーバでインスタンスをキャッシュするルールが設定できます。
[Add cache rules] ボタンをクリックして、最大10個のルールを追加できます。詳細項目は次の通りです。
| 項目 | 説明 |
|---|---|
| Rule Name | キャッシュルールの名前を入力 |
| Rule Configuration | ルール構成
|
また、 [Advanced settings] ボタンをクリックして、さらに詳細なルールを設定できます。
| 項目 | 説明 |
|---|---|
| ルールベースのソースルーティング | URL prefixベースのソース分岐を提供。リクエストが IF条件に合致する場合、指定位置にソースをルーティング。
|
| ブラウザキャッシュ | エッジサーバでクライアントに送るキャッシュ動作を指定
|
| Cache Key Query Parameters | キャッシュキーの構成時、クエリ文字列を含めるかどうかを設定し、キャッシュ動作を制御
|
| Access Deny | IF条件に対してアクセスブロック |
| URL Redirect | IF条件に合致したらオリジンサーバに接続せず、リダイレクションでレスポンスするように設定
|
| URL Rewrite | IF条件に合致する場合、リクエスト URLを自動変更
|
キャッシュルールを保存すれば、ルールリストが作成されます。
- リストから保存した内容を簡単に確認できます。
- 保存した順に優先順位が自動適用されます。優先順位を変更するには、
、
をクリックするか、
をドラッグします。 - 保存したルールを変更するには
をクリックして変更し、 [保存] ボタンをクリックします。 - 保存したルールを削除するには
をクリックします。
URL Redirect設定と URL Rewrite設定を同時に適用できません。
Redirect Destination pathと Rewriteの設定には次のルールが適用されます。
| 入力値 |
|---|
| a-zA-Z0-9_:.,/?!()[]@<>=-+*&`|~^% |
マネージドルール
CDNサービスを利用する時に頻繁に活用する機能を設定できます。詳細項目は次の通りです。
| 項目 | 説明 |
|---|---|
| CORS | 他のドメインから呼び出す保護されたリソースのプロパティに CORS(交差オリジンリソース共有)ヘッダを追加(default値は次の通りです)
|
| HTTP/2 | ウェブコンテンツ転送のためのオープンネットワークプロトコルである HTTP/2を有効化。ウェブプロパティのロード時間とリソース消費が節約できる。 |
| True-Client-IP Header | オリジンサーバへのリクエストをフォワードする時に、クライアント IPアドレスをヘッダに追加。オリジンサーバでヘッダを利用してクライアント IPアドレスベースのポリシー策定可能。 |
| HSTS | セキュリティ向上のため、すべてのブラウザ接続に HTTPの代わりに HTTPSプロトコルを使用 |
CORS設定時、以下のようなルールが適用されます。
- access-control-allow-originの場合は,が許可されず、単一文字列でのみ構成できます。
- access-control-allow-headersの場合は*の際に,が許可されません。
- access-control-allow-origin: *の場合、 access-control-allow-credentials=trueは一緒に使用できません。
HTTP Header Modification
オリジンサーバにリクエストする時、またはクライアントにレスポンスする時に転送される HTTPヘッダを再定義するように設定できます。設定する方法は、次の通りです。
- [Modify HTTP Header] ボタンをクリックします。
- 再定義するヘッダの種類を選択します。
- Modify Origin Request Header: オリジンサーバにリクエストをフォワードする際に送信される HTTPヘッダを再定義
- Modify Client Response Header: サーバからクライアントにレスポンスする際に送信される HTTPヘッダを再定義
- ルールを入力します。
- Rule Name: ルール名を入力
- Rule Configuration: ルールの詳細設定
- Action: 追加、変更、削除の中から実行する動作を選択
- Header Name: 動作対象の HTTPヘッダを入力
- Value: 追加または変更を選択した場合、適用するヘッダ値を入力
- [保存] ボタンをクリックします。
- ルールを保存し、リストを作成します。
- 保存したルールを変更するには
をクリックして変更し、 [保存] ボタンをクリックします。 - 保存したルールを削除するには
をクリックします。
Ncloud Global Edgeのヘッダ名と値の設定には、次のルールが適用されます。
| ヘッダ名 | ヘッダ値 |
|---|---|
| a-zA-Z0-9_- | a-zA-Z0-9_:.,/?!()[]@<>=-+*&`|~^% |
最適化
ユーザーにコンテンツを転送する時にパフォーマンスを向上させる方法を構成します。
圧縮転送
圧縮転送を使用すると、gzip、brotli圧縮をサポートするクライアントブラウザ、またはデバイスにコンテンツを転送する時に圧縮を適用してより迅速に転送できます。
トグルボタンをクリックして機能を有効にすると、Accept-Encodingに gzipまたは brotliヘッダを指定して圧縮できます。
- 圧縮転送サポート拡張子: css、js、json、xml、html、ttf、otf、woff、woff2、eot
大容量ファイル転送
大容量ファイル転送を使用すると、オリジンサーバにコンテンツをリクエストする時、単一ファイルではなくピース単位で転送し、オリジンのオフロードを向上できます。
トグルボタンをクリックして機能を有効にすると、大容量ファイル転送の最適化が適用されます。
Header Max Size
プラットフォームで処理できる Request Headerの最大サイズを指定します。
デフォルト値は、単一ヘッダを基準に16K、全体 Header基準に32Kです。
Header Max Sizeは韓国/日本転送プラットフォームにのみ適用されます。
例えば、サービス地域が「グローバル」の場合、韓国/日本転送プラットフォームに適用され、その他の地域の転送プラットフォームには32Kで統一されます。*
アクセス制御
エッジにアクセスできる範囲を調整します。
ホワイトリストまたはブラックリストを作成でき、3種類のアクセス制御条件を追加できます。
- Whitelist: 条件と一致するリクエストのアクセスを許可
- Blacklist: 条件と一致するリクエストのアクセスを拒否
| 項目 | 説明 |
|---|---|
| IP / CIDR | クライアントの IPアドレスまたは CIDR基準でアクセスを制御
|
| Geo | クライアントが位置する国の基準でアクセスを制御
|
| Referer Header | HTTPリクエストヘッダの refererを基準にアクセスを制御
|
設定完了
設定の内容を確認した後、画面上の [設定完了] ボタンをクリックします。
- 作成されたエッジがリストに追加され、自動でリリースします。
- エッジがリリースされるまで数分から数十分かかります。
- 設定をプレビューするには、 [設定プレビュー] ボタンをクリックします。