国内でのアクセスが遅いため、著者は個人ドメインを取得し、国内クラウドプロバイダーのCDNアクセラレーションサービスを購入しました。設定中にwwwサブドメインにアクセスできない問題が発生しましたが、汎用ドメイン解析を削除し、セカンダリドメインを個別に設定することで解決しました。また、CDNアクセラレーションの原理と設定経験、Nginxのリバースプロキシ試行とその教訓についても共有しています。
背景
GitHub Pagesにサイトをホストしているため、周知の理由により国内からのアクセスが遅いことがあります。そこで、個人ドメインを取得し、国内クラウドプロバイダーのCDN加速サービスを利用しました。加速サービスの設定中に、開発マシンにあるDocker、frp、k8sなどのサービス(それぞれダッシュボードあり)を思い出し、無駄にしない方針でいくつかのリバースプロキシを設定し、すべてセカンダリードメインに紐づけました。
二級ドメインを使っていると、突然wwwサブドメインにアクセスできなくなりました。アリババクラウドでは、www.xiangtianlong.comとxiangtianlong.comの両方をDNSで同時に解析するように設定しており、CDN加速を有効にする前は両方のドメインが正常に使用できていました。
CDN設定時、セカンダリドメインが多いため汎用ドメインルールを有効にし、統一的に開発マシンへルーティングした結果、wwwというセカンダリドメインも影響を受けてしまいました。はい、間違いではありません。wwwプレフィックスもセカンダリドメインとして扱われていました。実際のウェブサイトはGitHub Pagesにデプロイされており、開発マシンにはウェブサイトのキャッシュ情報は一切ありません。
開発環境にサイトをデプロイしないのは、静的ブログで、GitHub Actionsを使えば自動的にリリースできるので便利だからです。
ドメイン
専門性のないウェブ開発では、ドメインの理解にSEOやクロスドメインの問題は含まれない。ブログサイトとして、ベアドメインはブログオーナーのサイトを際立たせやすく、現在のモバイルアクセスが多いことも考慮すると、入力できる文字数を減らせるという利点がある。
パソコンで、wwwとcomの入力を省略できるショートカットキーが利用可能です。
CDN
アリババクラウドとテンセントクラウドの両方使ったことがあるので、初心者でも使いやすいです。テンセントクラウドには関連コンセプトを解説する動画もあります。CDNの加速原理は京東(JD)の倉庫と同じで、新商品を発売する際に、全国各地の倉庫に事前に一斉配送し、配送リクエストが発生した際、最寄りの倉庫から発送します。
元のURL:ウェブサイトリソースが元々保存されていたアドレス
キャッシュファイル設定、ブラウザF12、管理コンソール、静的リソースと動的リソースの簡単な分析
- 全件0日有効
- 無効期限:0日
- 有効期限1日
テンセントクラウド設定ルール:
- キャッシュ切れルールは最大で10条まで設定可能です。
- 下位優先ルールが適用されます。
- キャッシュの有効期限は最大365日まで設定可能です。
痛ましい告白
以前Nginxを使ったことがなかったので、ウェブサイトを検索すればリバースプロキシの設定がわかると思っていました。しかし、結果は混乱し、半日かけても302リダイレクトを理解できませんでした。結局、効果はありませんでした。そこで、思い切ってDNS解析のワイルドカード設定を削除し、個々のセカンドレベルドメインを独立して設定しました。その時、突然、阿里云DNS解析に「表示URL転送」というモードがあることに気づき、試してみたところ、これがまさに求めていた302リダイレクトでした。
最初の二階建てドメインは問題なくアクセスできたのに、2つ目の設定をしたら動かず、本当にどうしようかと思ったけど、しばらく待ったら使えるようになった。やはり、アリババクラウドのDNS伝播は時々、おっかないことがあるようだ。
参照資料
- 申し訳ありませんが、翻訳する中国語のテキストが提供されていません。テキストを提供していただければ、日本語に翻訳します。
- 申し訳ありませんが、翻訳する中国語のテキストが提供されていません。テキストを提供していただければ、日本語に翻訳します。
- 申し訳ありませんが、翻訳する中国語のテキストが提供されていません。テキストを提供していただければ、日本語に翻訳します。