存在しないURLや404ページがページ一覧に表示されてしまいます

#概要

Autolingualは、サイトを訪問したユーザーのブラウザ上でSDKが取得したURLをもとに、ページのアクセス情報や翻訳処理の対象を判定します。

そのため、サイト上に実在しないURLであっても、404ページにAutolingual SDKが読み込まれている場合は、ページとして記録・表示されることがあります。

Autolingualが存在しないURLを新たに生成したり、サイト内にURLを追加したりすることはありません。ブラウザが実際に表示しているURLを取得し、アクセス情報として記録しています。

#なぜ404ページも記録されるのですか?

たとえば、以下のようなURLにアクセスがあったとします。

https://example.com/unexpected/path

このURLがサイト上に存在せず、サーバーが404ページを返した場合でも、404ページ内にAutolingual SDKが読み込まれていれば、SDKはブラウザに表示されているURLを取得します。

SDKは、ブラウザ上で動作するものとなっており、取得したURLに対してHTTPステータス(200、404など)を判別することができません。そのため、404ページであっても通常ページと同様にアクセス情報が記録され、除外設定に該当しない場合は翻訳処理の対象にもなり得ます。

#存在しないURLが発生する主な要因

存在しないURLへのアクセスは、たとえば以下のような要因で発生します。

  • 外部サイト、広告、メール、SNSなどに誤ったリンクがある
  • 過去に存在したページへのリンクや検索エンジンの登録が残っている
  • URLの入力ミスがある
  • ボットやクローラーが任意のパスへアクセスしている
  • サイト側のルーティング設定により、存在しないパスでも共通の404画面が表示される

Autolingualはこれらのアクセス時に表示されたURLを記録するため、実在しないURLがページ一覧に表示される場合があります。

#対応方法

#1. 404ページを固定URLへリダイレクトする

存在しないURLへのアクセス時に、/404 や /not-found などの共通URLへリダイレクトする方法です。

エラーページのURLを集約できるため、多数の異なる存在しないURLが個別に記録されることを抑えられます。

SEOやHTTPステータスへの影響があるため、リダイレクト方法はサイト運用・開発担当者へご確認ください。

#2. 404ページではAutolingual SDKを読み込まない

404ページのテンプレートやレイアウトでは、Autolingual SDKのスクリプトタグを読み込まないように設定します。

SDKが実行されないため、404ページのURLはAutolingual側で記録・翻訳処理されません。

#3. 特定のパスを除外設定する

翻訳対象ページ除外機能(翻訳対象ページ除外設定 )で、特定のURLまたはディレクトリ配下を翻訳対象から除外できます。

  • 特定ページのみ除外: /example/error-page
  • 配下をまとめて除外: /temporary を「配下ページも除外する」として設定→ /temporary/abc や /temporary/abc/def も除外されます。

また、URLがランダムに生成されるなど、共通のパスでまとめられない場合は、個別の除外設定だけでは対応が難しいことがあります。その場合は、固定URLへの集約または404ページでSDKを読み込まない対応をご検討ください。

#よくある質問

#AutolingualがURLを生成しているのですか?

いいえ。AutolingualがURLを生成したり、サイトにページを作成したりすることはありません。SDKが読み込まれたブラウザで実際に表示されているURLを取得し、アクセス情報として扱います。

#404ページは翻訳されますか?

404ページにSDKが読み込まれ、除外設定にも該当しない場合、ページ内のテキストが翻訳処理の対象となることがあります。

#404ページを除外すると、ページ一覧にも表示されなくなりますか?

除外設定は主に翻訳対象を制御するものです。アクセス情報の記録自体を止めるには、404ページでSDKを読み込まない、または固定URLへ集約する対応が有効です。