Baidu の https 認証プロンプト「http サイトを 301 から https サイトにリダイレクトしてください」の解決方法の詳細な説明

Baidu の https 認証プロンプト「http サイトを 301 から https サイトにリダイレクトしてください」の解決方法の詳細な説明

最近、ウェブサイトを https アクセスに変換したいのですが、すべて完了した後、Baidu Webmaster Platform にアクセスして https を認証しましたが、どのように送信しても、「http サイトを 301 で https サイトにリダイレクトしてください」というメッセージが表示され続けました。Baidu Webmaster Community で質問しましたが、誰も答えてくれなかったので、自分で解決する必要がありました。後で理由が分かりました。Baidu の https 認証は 301 リダイレクトに厳密に従っています。私は IIS6 を使用していましたが、以前のコードは次のとおりでした。

RewriteEngine オン

書き換え条件 %{SERVER_PORT} !^443$ 

書き換えルール (.*) https://%{SERVER_NAME}/$1 [R] 

この書き方では、すべての http を https にリダイレクトできますが、Baidu Webmaster プラットフォームには合格しません。最終的に、コードは次のように修正され、合格しました。

RewriteEngine オン

書き換え条件 %{SERVER_PORT} !^443$

書き換えルール ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]

以下に、さまざまなウェブサイト環境で https (ssl) を展開した後に 301 リダイレクトを設定するためのコードを集めて整理しました。皆様のお役に立てれば幸いです。

Linuxt システム Apache 環境

クラウド サーバー:対応するサイトのルート ディレクトリに .htaccess という名前の新しいファイルを作成します (FTP 経由、または wdcp 管理パネルにログイン: サイト リスト - ドキュメント管理 - public_html を入力 - ファイルの作成)。

仮想ホスト: FTP 経由でホスト管理パネル - ファイル管理に入るか、ログイン後に wwwroot に入り、.htaccess ファイルという名前の新しいファイルを作成して保存します。

.htaccess ファイルを編集し、次のルールを追加します。

<IfModule mod_rewrite.c>
RewriteEngine オン
書き換え条件 %{HTTP:From-Https} !^on$ [NC]
RewriteRule ^(.*)$ https://www.abc.com/$1 [R=301,L] # www.abc.com を独自のドメイン名に変更します RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule ^(.*)$ https://www.abc.com$1 [R=301,L] # www.abc.com を自分のドメイン名に変更します</IfModule>

Nginx 環境

nginxサイト設定ファイルを編集します(wdcp管理パネルにログイン:サイトリスト-ドキュメント管理-仮想ホストサイトファイルnginx-対応するサイト設定ファイル)、次のルールを追加します。

サーバ
{
聞く 80;
サーバー名 abc.com;
rewrite ^(.*) https://www.abc.com$1 permanent; # abc.com を自分のドメイン名に変更します}

Windows システム II7 環境

クラウド サーバー:対応するサイトのルート ディレクトリに (FTP 経由、またはログイン後に D:\wwwroot\site ftp naming directory\wwwroot を直接入力)、web.config という名前の新しいファイルを作成し、それを編集して次のルールを追加します。

<?xml バージョン="1.0" エンコーディング="UTF-8"?>
<構成>
 <システム.Webサーバー>
  <書き直し>
   <ルール>
    <ルール名="301" stopProcessing="true">
     <match url="^(.*)$" ignoreCase="false" />
     <条件論理グループ="MatchAll">
      <add input="{HTTPS}" pattern="^on$" negate="true" />
     </条件>
     <action type="Redirect" url="https://www.abc.com/{R:1}" redirectType="Permanent" /> # www.abc.com を自分のドメイン名に変更します</rule>
   </ルール>
  </書き換え>
 </system.webServer> 
</構成>

仮想ホスト: FTP またはログインを介してホスト管理パネルのファイル管理に入り、wwwroot を入力し、web.config という名前の新しいファイルを作成し、次のルールを編集して追加します。

<?xml バージョン="1.0" エンコーディング="UTF-8"?>
<構成>
 <システム.Webサーバー>
  <書き直し>
   <ルール>
    <ルール名="301" stopProcessing="true">
     <match url="^(.*)$" ignoreCase="false" />
     <条件論理グループ="MatchAll">
      <add input="{HTTP_FROM_HTTPS}" pattern="^on$" negate="true" />
     </条件>
     <action type="Redirect" url="https://www.abc.com/{R:1}" redirectType="Permanent" /> # www.abc.com を自分のドメイン名に変更します</rule>
   </ルール>
  </書き換え>
 </system.webServer> 
</構成>

Windows システム II6 環境

Rewrite を設定し、Rewrite ルール ファイル httpd.conf または .htaccess を編集して、次のルールを追加します。

RewriteEngine オン

書き換え条件 %{SERVER_PORT} !^443$

書き換えルール ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]

tomcat環境

web.xmlの</web-app>の最後の行の前に次のコードを追加します。

<セキュリティ制約>
 <!-- SSL の認証設定 -->
 <Web リソース コレクション>
  <ウェブ リソース名 >SSL</ウェブ リソース名>
  <urlパターン>/*</urlパターン>
 </Web リソース コレクション>
 <ユーザーデータ制約>
  <transport-guarantee>機密</transport-guarantee>
 </ユーザーデータ制約>
</セキュリティ制約>

注意: 1. discuz が 301 メソッドを使用して http を https に強制的にジャンプすると、バックグラウンドの UC 通信が失敗します。

2. このようにリダイレクトを設定した後、正常にリダイレクトできない場合は、別のサイトバインディングの https ドメイン名を確立し、元のサイトでジャンプルールを設定してください。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  MySQL の結合テーブルにインデックスを作成する方法

>>:  js キャンバスはスライダー検証を実現します

推薦する

MIME TYPEとは?MIME-Typesタイプコレクション

MIME タイプとは何ですか? 1. まず、ブラウザがコンテンツを処理する方法を理解する必要がありま...

入力ボックスのプレースホルダーアニメーションと入力検証を実現する純粋なCSS

さらに興味深いコンテンツについては、https://github.com/abc-club/free...

nginx 503 サービスが一時的に利用できない問題を解決する方法

最近、ウェブサイトを更新すると、503 Service Temporarily Unavailabl...

TypescriptとAxiosに基づくインターフェースリクエスト管理の詳細な説明

目次アイデア傍受を要求するレスポンスインターセプションhttpClient.tsを使用してリクエスト...

Vueで複数の添付ファイルをアップロードする実装例

目次序文コアコードコードのファイル表示部分序文この記事では主に、Vue プロジェクトでの添付ファイル...

MySQLのインストールと設定方法のグラフィックチュートリアル(CentOS7)

1. システム環境[root@localhost ホーム]# cat /etc/redhat-re...

PostgreSQL正規表現の一般的な機能の概要

PostgreSQL正規表現の一般的な機能の概要正規表現は、複雑なデータ処理を必要とするプログラムに...

Portainer を使用した Docker コンテナのデプロイのプロジェクト実践

目次1. 背景2. 操作手順3. Portinerをインストールする3.1 Dockerのデプロイメ...

JavaScript でネットワーク速度をテストする方法

目次序文ネットワーク速度のフロントエンド判定原理のまとめ1. img を読み込むか Ajax リクエ...

トップナビゲーションバー機能を実現するCSS+HTML

ナビゲーション バー、固定トップ ナビゲーション バー、およびセカンダリ メニューの実装効果図の実装...

jsはウォーターフォールフローのボトムアウトによるデータの動的ロードを実現します

この記事では、ウォーターフォールフローが底に達したときにデータを動的にロードするためのjsの具体的な...

あるテーブルのデータの列を別のテーブルの列にコピーするMySQLメソッド

mysql 1 つのテーブル列を別のテーブルにコピーする場合によっては、フィールドから別の新しいフィ...

HTML でマウスが停止したときに行全体の色 (tr) を変更する方法

純粋な CSS を使用して、マウスが行の上を通過するときに行の背景色を変更し、その行にフォーカスがあ...

Linux で XFS パーティション形式のルート ディレクトリを縮小する方法

目次序文システム環境現在のシステムパーティションレイアウトデータのバックアップレスキューモードに入る...

nginxサーバーのダウンロード、インストール、使用方法の詳細な説明

ダウンロードhttp://nginx.org/en/download.html解凍ダウンロードしたn...