ウェブアクセラレータとは (概要・仕様)

[更新: 2024年03月22日]

「ウェブアクセラレータ」の仕様詳細や作成・利用方法についての説明ページです。

1. 概要

「ウェブアクセラレータ」は、高速・安価を特徴とする国内向けウェブコンテンツ配信サービスです。 ウェブサイトへアクセスが集中すると表示速度の低下やサーバダウンが起きてしまいますが、「ウェブアクセラレータ」を導入することでキャッシュ配信が行えるようになり、アクセス急増による負荷を分散させてウェブサイト等の表示を安定化することができます。

料金

料金については サービスサイト を参照ください。
ご利用料金の確認、お支払い方法、料金アラート機能等については 契約・お支払い を参照ください。

注釈

※クラウドのアカウント毎に500GiB分の無償利用枠が用意されます。アカウントの配下ウェブアクセラレータで、 データ転送の累計が500GiBに到達するまで無償でお試しいただけます。無償利用枠はアカウント毎に一度のみ適用されます。無償利用枠に有効期限はありません。
※ 配信システム側からのOutboundのトラフィックを課金対象としています。(Inbound側のトラフィックは無料です。)
※ Outboundの転送量はレスポンスにおけるHTTPヘッダとボディーを含めたサイズで計算されます。

2. 基本仕様

本サービスで提供されるウェブアクセラレータの仕様は以下の通りです。

対応プロトコル HTTP、HTTPS (HTTP/2対応)
HTTPS接続時に対応する暗号化プロトコル TLS 1.2, TLS 1.3
設置拠点 国内IDC
配信ファイル 制限なし
キャッシュファイルサイズ制限 あり(2GiB-1=2,147,483,647 bytes)
サイト数制限 あり(20サイト)(※)
コントロールパネル あり
API あり(サイト一覧取得/証明書情報取得・更新/キャッシュ削除)

※ サイト数の制限値は、すべてのアカウントにデフォルトで設定されています。制限を超えてサイトを設定したい場合は 弊社サポート までご連絡ください。

キャッシュ配信

複数のウェブサーバでコンテンツをキャッシュし、負荷を分散して配信するサービスです。

独自ドメイン、サブドメイン

ご利用の独自ドメインを利用することができます。
また、さくらインターネットで提供するサブドメイン(※)を利用することもできます。

※ ランダム文字列.user.webaccel.jp

SSL、HTTP/2

HTTPS を利用した暗号化通信に対応しています。
またプロトコルとしてHTTP/2もサポートしています。

CORS機能

ウェブアクセラレータに登録したサイトの配信時に、設定内容に基づいたアクセス拒否/許可の設定をすることができます。

※ ウェブアクセラレータの登録サイトを別のウェブサイトにリソース(画像などのファイル)を共有する場合、通常、同一オリジンポリシーによりアクセスが制限されます。

サイト全体ワンタイムURL機能

ワンタイムURL発行に必要なシークレット(X-WebAccel-Secret)を、サイト内の全コンテンツに設定することができます。
シークレットを2つまで登録でき、有効期限切れの前にシークレットをローテーション(更新)することもできます。

オリジンガード

ランダムな文字列の「オリジンガードトークン」を発行し、その値をウェブアクセラレータのリクエストヘッダに追加します。
オリジンサーバのウェブサーバに「オリジンガードトークン」の値が一致する場合のみアクセス許可の設定をすることで、「オリジンガードトークン」の値を持たないリクエストは拒否され、悪意のある攻撃者やサイト閲覧者(エンドユーザ)がオリジンサーバに直接アクセスすることを防ぐことができます。

SSL証明書

ウェブアクセラレータ側で自動更新ができるLet’s Encrypt 自動更新証明書(無料)とお客様ご自身で用意したSSL証明書を手動登録・更新及び削除ができる持ち込み証明書を利用することができます。

キャッシュ削除

アクセスされたコンテンツは一定時間配信サーバでキャッシュされるため、オリジンサーバのコンテンツを更新した場合でも古いコンテンツがキャッシュされたまま一定時間残り続けます。古いキャッシュをクリアしたい場合はキャッシュ削除機能を使って強制的にキャッシュをクリアすることができます。

コントロールパネル

ウェブアクセラレータのコントロールパネル上で、トラフィックやリクエストのグラフを表示するダッシュボード、キャッシュ削除などの機能を提供します。

3. 仕様詳細

サービス仕様

機能 独自ドメインでの利用 サブドメインでの利用
HTTP配信
HTTPS配信
アクセス形式 独自ドメイン (※) http(s)://ランダム文字列.user.webaccel.jp/

※ 独自ドメインでの利用は CNAME レコードが前提です。www.example.com のようにホスト名(サブドメイン)の指定が必要であり、一部のネームサーバでは、example.com というドメイン(Zone Apex)に対し CNAME レコードが設定できません(RFC 1912 の仕様に基づく)が、さくらのクラウドDNSのようなALIASレコード対応のネームサーバではZone Apexドメインでもウェブアクセラレータが利用可能です。詳しい設定方法は こちら のドキュメントをご覧ください。
ALIASレコードを利用する場合、ウェブアクセラレータのサイトを有効化するために必要なドメイン所有チェックがCNAMEで参照できないため、 TXTレコードを使用する方法 で、ウェブアクセラレータのサイトを有効化してください。
公開ドメインに既に別の CNAME レコードが設定されている場合、TXTレコードが記述されていないため、 _webaccel.(公開ホストFQDN)でTXTレコードを使用する方法 で、ウェブアクセラレータのサイトを有効化してください。

キャッシュ仕様

初期設定 無効(※1)
キャッシュ制御 (※2) (1)オリジンサーバ側で設定する場合:
オリジンサーバのCache-Control: s-maxageレスポンスヘッダで制御
(2)コントロールパネル側で設定する場合:
コントロールパネルでのキャッシュ期間設定で制御
最大キャッシュ保持期間 最大7日間
キャッシュ可能な
最大ファイルサイズ
1ファイルあたり、2GiB-1 (2,147,483,647 bytes)(※3)
キャッシュ単位 Varyサポート機能無効の場合:URL単位(?クエリストリング込み)(※4,6)
Varyサポート機能有効の場合:URL(?クエリストリング込み)とVaryに指定したヘッダの値の組み合わせ単位(※4,5,6)
キャッシュ削除単位 Varyサポート有効/無効時ともにURL単位(?クエリストリング込み)
キャッシュ制御ヘッダ キャッシュ期間設定 … Cache-Control: s-maxage で設定(※7)
キャッシュ無効設定 … Cache-Control: no-store または Cache-Control: private または Pragma: no-cache が指定されている場合は無効設定が優先されキャッシュされません
リクエストメソッド GET以外のリクエストはキャッシュされません。

※1 初期設定はキャッシュが無効ですので、有効にする設定をしてください。
※2 オリジンサーバ、コントロールパネルの両方で設定がされている場合は仕様によりオリジンサーバ側の設定が優先されコントロールパネル側の設定は適用されません。 (詳細は デフォルトのキャッシュ期間設定の適用対象外条件 を参照ください)
※3 2GiB-1 (2,147,483,647 bytes)を超えるコンテンツについてはキャッシュを保証できません。2GiB-1 (2,147,483,647 bytes)以下のコンテンツのみをキャッシュ対象としていただくようお願いいたします。
※4 URLのhttpとhttpsは区別されてキャッシュされます。
※5 Varyサポート機能有効時のキャッシュ単位の詳細は Varyサポート機能 参照
※6 ワンタイムURL機能 利用時のクエリストリング(webaccel_secure_hash、webaccel_secure_time)は対象外となります。
※7 例:初回アクセス時から86400秒(1日)キャッシュをする場合 Cache-Control: s-maxage=86400 と指定します。 Cache-Control: max-age 及び Expires ヘッダ等ではキャッシュ期間を指定できません。

注意事項

  • Cache-Controlヘッダにおいてオリジンサーバ側でs-maxageを設定せず、かつコントロールパネル側でキャッシュ期間設定を設定していない場合はキャッシュされませんのでご注意ください。
  • キャッシュされないトラフィックについてもウェブアクセラレータから配信したトラフィックについては課金対象となりますのでご注意ください。
  • キャッシュ時間の設定については必ず指定時間キャッシュが保持されるものではありません。アクセスの頻度、キャッシュの状態に応じて削除される場合があります。
  • キャッシュサーバのメンテナンスによりコンテンツの再取得が行われる可能性があります。必ずしもキャッシュを保証するものではありませんのでご了承ください。
  • 不適切なコンテンツ(コントロールパネルのようなお客様情報など)をキャッシュしないよう、設定には十分にご注意ください。
  • ウェブアクセラレータのサービスに関する利用規約は、クラウドサービス約款が適用されます。ご利用前に弊社サイトに掲載する約款をご確認ください。

オリジンサーバ接続時に付与されるリクエストヘッダ

ウェブアクセラレータではオリジンサーバへの接続時に以下のリクエストヘッダを付与します。

X-Real-IP ウェブアクセラレータへの接続元IPアドレス
例) X-Real-IP: 203.0.113.1
X-WebAccel-Viewer-Address ウェブアクセラレータへの接続元IPアドレスと接続元ポート番号
例) X-WebAccel-Viewer-Address: 203.0.113.1:50903
X-Forwarded-Proto ウェブアクセラレータへの接続プロトコル (http|https)
例) X-Forwarded-Proto: http
X-Forwarded-Host ウェブアクセラレータへのリクエスト時のHostヘッダ
X-Forwarded-Server ウェブアクセラレータへのリクエスト時のHostヘッダ
非推奨です。廃止の可能性があるためX-Forwarded-Hostをご利用ください。
X-Forwarded-For リクエスト時に付与されたX-Forwarded-Forの末尾にウェブアクセラレータへの接続元IPアドレスと
オリジンへリクエストを行ったウェブアクセラレータIPのアドレスが追加されます。
例) X-Forwarded-For: 【接続元IPアドレス 1】, 【接続元IPアドレス 2】, … (追記形式)
X-WebAccel-Req-ID ウェブアクセラレータで発行しているリクエストID

4. 事前準備

オリジンサーバにてコンテンツのキャッシュ設定

※Cache-Controlヘッダでキャッシュ時間を設定する場合に、s-maxageを使用します。Apacheの場合、httpd.conf や .htaccess などで、以下のように設定します。

例)画像ファイル(拡張子 .gif .jpg .jpeg .png .webp .ico .svg)、CSS(.css) JavaScriptファイル(.js)を86400秒(1日)キャッシュする場合の設定

<FilesMatch "\.(gif|jpe?g|png|webp|ico|svg|css|js)$">
  Header append Cache-Control "s-maxage=86400"
</FilesMatch>

ウェブアクセラレータからオリジンサーバへのアクセスポートの開放

ウェブアクセラレータのサーバは、以下のネットワークよりオリジンサーバへの通信を行っています。 オリジンサーバにて以下ネットワークからのHTTP(80)、HTTPS(443)の通信を許可するよう設定をお願い致します。

  • 133.167.4.0/24
  • 153.121.0.0/24(2017/1/31追加)
  • 59.106.229.64/27 (2024/2/15追加)

注意

設備増強により接続元IPアドレスが増加することがあります。

5. 各機能の利用の流れ