サイトヘルスステータスの警告
ワードプレスホーム画面で気になりながらも放置しておいたサイトヘルスチェックの警告情報に対応しました。
サイトヘルスステータスの表示
サイトヘルスステータスは、運用中ワードプレスのパフォーマンスやユーザー体験、セキュリティなどの改善点をチェックして表示するツールです。
サイトヘルスチェック手順
ワードプレス管理画面ダッシュボード => ホーム => サイトヘルスステータスへと進み、サイトヘルス画面リンクをクリックすることでサイトヘルス状況を確認できます。
ヘルスチェック警告に対応
複数の警告がありましたが、今回は「推奨セキュリティヘッダーがインストー済ではありません」警告に対応しました。
エラーを表示しているセキュリティヘッダーは、
Permissions-Policy
です。
画面にリンクがあるセキュリティヘッダーについての詳細ページの指示に従って対応していきます。
有料のSecurity with Really Simple SSL Proプラグインを使うと自動的に対応してくれるようですが、価格がSingle LicenseのPersonalで$39かかります。
リンクをたどるとWordPress で推奨されるセキュリティ ヘッダーを手動で追加するのページに手動での対応手順が記載されています。
手動での対応には、.htaccess ファイルの編集が必要になります。
セキュリティヘッダーとは
セキュリティヘッダーとは、ブラウザのHTTPアクセスに対してWEBサーバーがHTTPレスポンスヘッダー部分に記述するブラウザに対するセキュリティ指示と許可ポリシー情報のことです。
サイトのセキュリティヘッダー使用状況の確認
サイトのセキュリティヘッダー使用状況は、下記サイトにサイトURLを入力して確認できます。
Analyse your HTTP response headers
チェック状況
Permissions-Policy ヘッダーの追加
Permissions-Policy ヘッダーを使用することで、どの機能の動作を許可するかを Web サイト(アプリ)側で指定できます。
Permissions-Policyの構文は、以下の通りです。
Permissions-Policy:
記述方法の詳細は、Permissions-Policy仕様書を参考にしてください。
.htaccessに記述したPermissions-Policy
じゅんぺいブログの記載情報を参考にさせていただきました。
設定後のサイトのセキュリティヘッダー使用状況の確認
推奨セキュリティヘッダーがインストー済ではありません警告が解消しない
Analyse your HTTP response headersツールでエラーはなくなりましたが、サイトのヘルスチェックでは「推奨セキュリティヘッダーがインストー済ではありません ・Permissions-Policy」の警告が解消しません。
現在調査継続中です。
その後の経緯
Crom拡張機能ネットワークタブで、レスポンスヘッダーにpermissions-policyが設定されていることを確認。
permissions-policy:は設定した内容が格納されているが、それでも警告が表示される。
accept-ranges: none
cache-control: no-cache, must-revalidate, max-age=0
content-encoding: gzip
content-length: 14222
content-security-policy: upgrade-insecure-requests
content-type: text/html; charset=UTF-8
date: Sat, 05 Nov 2022 17:58:26 GMT
expect-ct: max-age=7776000, enforce
expires: Wed, 11 Jan 1984 05:00:00 GMT
link:
link:
link:
permissions-policy: geolocation=(); midi=();notifications=();push=();sync-xhr=();accelerometer=(); gyroscope=(); magnetometer=(); payment=(); camera=(); microphone=();usb=(); xr=();speaker=(self);vibrate=();fullscreen=(self);
referrer-policy: no-referrer-when-downgrade
server: Apache
strict-transport-security: max-age=31536000
vary: Range,Accept-Encoding
x-cache: BYPASS
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
x-powered-by: PHP/7.4.30
x-xss-protection: 1; mode=block
プラグインの変更で解決
いままで使用していたReally Simple SSLプラグインを無効化し、SSL Insecure Content Fixerプラグインを使用で「推奨セキュリティヘッダーがインストー済ではありません」警告は解消しました。