0

環境:

最近、サイトを新しいホストに移動し、SSL 証明書を古いホストから新しいホストに移動しました。PHP で書かれたコードは、何年も前に利用できなくなった誰かによって作成された大きな混乱です。このため、問題を解決できるサーバーの構成に関連する何かを見つけ出し、かなり厄介なコードをリバース エンジニアリングする必要がないようにしたいと考えています。

問題:

ユーザーが https:// を使用するサイトの領域に移動すると、すべてが計画どおりに進みます。ただし、通常はサイトの http:// の部分にあるナビゲーションのリンクをクリックすると、問題が発生します。カーソルを合わせると、ターゲット URL に誤って「https://」が含まれていることがわかります。ユーザーが、変更されたリンクの 1 つをクリックするか、ブラウザーのロケーション バーに入力することによって、https:// が先頭にある安全でない領域に移動しようとすると、ドメインのないディレクトリにリダイレクトされます。たとえば、「 https://domain.org/site/ 」にアクセスしようとすると、ブラウザは「/site」のみにリダイレクトされますが、もちろん見つかりません。

理論上の解決策:

  1. https の「粘着性」を管理する Plesk の設定はありますか? この問題を解決する 1 つの方法は、安全でないリンクが https:// を取得しないようにすることです。

  2. セキュリティで保護されていない領域に https:// 経由でアクセスすると、サイトがリダイレクトに使用しているスクリプトやファイルが破損する明らかな理由はありますか? 古いサーバーを介して新しいサーバーでこの機能を異なるものにするサーバー設定はありますか?

  3. 古いサーバーの構成が正確に何であったかを確認するためのアクセス権がありません。これは、PHP のバージョンの違いが原因である可能性がありますか? もしそうなら、問題が何であるかについての疑いはありますか?

  4. おそらくサイトのリダイレクトスクリプトがアクティブになる前に、https://経由でアクセスしたときに、サイトの特定の安全な領域を除くすべてを手動でhttp://にリダイレクトできる.htaccessの回避策はありますか?

助けてくれてありがとう!!

4

1 に答える 1

1
  1. はい、Plesk 17 (Onyx) 以降: plesk-seo-https-リダイレクト

  2. 古いバージョンでは、リファラーに基づいて、https ページから http にリクエストを書き換える .htaccess ファイルを作成できます。

    RewriteEngine on

    RewriteCond %{HTTP_REFERER} ^ https://domain.org [NC]

    RewriteRule ^(.*)$ http://domain.org/ $1 [L,R=301]

于 2013-08-07T12:24:00.773 に答える