
私は Duplicator Pro という WordPress プラグインを使用していますが、インストーラーを使用してインストールする最良の方法は、ドメインではなくサーバーの IP を使用することです。これにより、自動入力とサーバーへの接続が容易になり、複数の ModSecurity ルールがトリガーされることもありません。
最適なインストール URL は次のとおりです。
http://111.222.333.444/~customcpanelaccount/customfolder/installer.php
の代わりに:
https://website.com/customfolder/installer.php
これらのファイルのいずれかをロードすると、自動的に次の場所にリダイレクトされます。
/customfolder/dup-installer/main.installer.php
ただし、サーバーには次の Apache/LiteSpeed ルールがあるため、http:// が https:// に自動的にリダイレクトされ、次のメッセージが表示されます。
<IfModule mod_headers.c>
Header always set Content-Security-Policy "upgrade-insecure-requests;"
</IfModule>
installer.php
上記のApache/LiteSpeedルールをドメインにのみ適用し、直接IPには適用しないようにする方法、またはのファイルmain.installer.php
とディレクトリを使用するときにトリガーされないようにする方法を考えています。/dup-installer/
FilesNotMatch / DirectoryNotMatch / LocationNotMatch タイプの if ステートメントがないのは残念です。
何かアイデアをお持ちの方は、ご助言やアドバイスをいただければ幸いです。
答え1
DOMAIN_REQUESTED
ドメインが要求された場合 (IP アドレスではなく)、環境変数 (例: ) を設定し、引数Header
を使用してこの環境変数が設定されているかどうかに基づいて条件付きでを設定できますenv=
。
例えば:
SetEnvIf Host "[a-z]" DOMAIN_REQUESTED
Header always set Content-Security-Policy "upgrade-insecure-requests;" env=DOMAIN_REQUESTED
Host
ヘッダーに文字 az が含まれている場合は、IP アドレスではなくドメイン名を要求している必要があります。その場合DOMAIN_REQUESTED
、env 変数は に設定されます1
。
しかし...
サーバーの IP アドレスとユーザーごとの Web ディレクトリを使用して、安全でない HTTP 経由でこれをインストールすることが望ましいというのは奇妙に思えます。ユーザーごとの Web ディレクトリ (mod_userdir) は、ルート相対 URL パスを実際に混乱させるため、通常は使用しない方がよいでしょう。
これがインストール プロセスのみの場合、その
Header
ディレクティブを一時的にコメント アウトするだけで済みませんか?
FilesNotMatch / DirectoryNotMatch / LocationNotMatch タイプの if ステートメントがないのは残念です。
まあ、ある意味、否定先読み(または後ろを見て)を正規表現に挿入して、一致がいつ行われるかを判断します。ない起こる。
...または、のファイルとディレクトリを使用するときにトリガーされないようにするに
installer.php
はmain.installer.php
、/dup-installer/
HTTPContent-Security-Policy: upgrade-insecure-requests;
レスポンスヘッダーはリンクされたアセットにのみ影響し、トップレベルのナビゲーションには影響しません。したがって、これは と には適用されませんinstaller.php
。main.installer.php
これらのリクエストがアップグレード(または、「リダイレクト」される可能性が高い) 場合は、他の何かがそれを行っています。