ApacheのRewriteルールの書き方

ApacheのRewriteルールの書き方

IDC がコントロール パネルで 301 を実行できない、または疑似静的ルールの記述方法を尋ねているなど、多くの方から助けを求められているのをよく目にするので、このブログ記事を書きました。この記事では、主に Apache で Rewrite ルールを記述する方法について説明します。

まず、URL 書き換えルールの書き方について説明します。これは主に疑似静的に使用されます。書き換えルールは、.htaccess ファイルまたは Apache 構成ファイル (httpd.conf または sites_conf ディレクトリ内の特定の Web サイト構成ファイル) に配置されます。この記事では、主に .htacess ファイルについて説明します (実際には、これらは似ています)。

.htacess ファイルを開くと、最初の内容は次のようになります。

RewriteEngineオン

リライトベース /

RewriteEngine on は書き換えをオンにすることを意味し、RewriteBase / はすべてのルールの前に「/」があることを意味します。これを記述した後は、後続のすべてのルールの先頭に「^」を記述するだけで済みます。ただし、このルールは .htacess ファイルでのみサポートされていることに注意してください。サーバー構成ファイルの場合は、このルールは無視されるため、記述する必要はありません。ルールを書く前に、まずは書き換えの際に使用する特殊文字の意味を説明します。

*は先行する0文字以上の文字を表します

+ は前の1文字以上を表します

? は前の0文字または1文字を表します

^は文字列の始まりを表す

$は文字列の終わりを表します

. はワイルドカード文字で、任意の文字を表します。

\ は、その後に続く文字をその文字自体に戻します。たとえば、「\+」は「+」のみを表し、それ以外は何も表しません。

^ 角括弧内は否定を意味します。たとえば、[^.]はワイルドカード以外の文字を表します。

したがって、「http://www.***.com/b.php?id=1」のような URL を擬似的に「http://www.***.com/b/1」に変更する場合、ルールは次のようになります。

書き換えルール ^b/([0-9]+)/?$/b.php?id=$1 [L]

上記の例では、^ はドメイン名の後の URL の始まりを示し、$ は文字列の終わり、つまりドメイン名の後の URL の終わりを示します。 [0-9] は数字を表します。URL が存在する限り、ID 番号が必ず存在するからです。直後の + は、1 つ以上の数字が表示されることを示します。 [0-9]+ は、文字がデジタル形式で表示され、デジタル範囲が 0 ~ 9 であり、出現回数が 1 回以上であることを意味します。 $ は文字列の終わりを示し、?$ はルートドメイン名の後ろからドメイン名の終わりまで 0 文字または 1 文字あることを示します。 $1 はメモリ内の内容、つまり最初の括弧内の内容を参照します。 [L] は、ルールが一致した場合に停止し、一致しない場合は残りのルールの実行を続行することを意味します。通常、これを詳しく調べる必要はありません。

疑似静的に加えて、301 リダイレクトに .htacess を使用する必要がある場合もあります。記号の意味は変更されません。例:

RewriteEngineオン

書き換え条件 %{HTTP_HOST} ^seozhao\.com$ [NC]

書き換えルール ^(.*) http://www.***.com/$1 [R=301,L]

上記のルールは、seozhao.com 301 を www.***.com にリダイレクトすることです。記号の意味を説明する必要はないと思います。

これら 2 つのルールを読んだら、きっとやる気が出てくるはずです。Web サイトが改訂され、URL 構造が変わったらどうなるでしょうか。答えは簡単です。.htacess ファイルを使用して、古い URL を新しい URL に 301 でリダイレクトする書き換えルールを記述できます。

書き換えルール ^(.*?)/?index\.html$/$1? [L,R=301]

このルールは、ドメイン名の下の a/ URL への a/index.html 301 を検索します。ルールは固定されており、最も重要なことは、ルールを学習して柔軟に適用することです。書き換えルールを習得すると、Web サイトのすべての URL とリターン コードが制御できるようになると思います。

この記事は天津SEOで最初に公開されました: http://www.seozhao.com/135.html 転載する場合は出典を明記してください。

元のタイトル: Apache の Rewrite ルールの書き方

キーワード: 書き換え、方法、書き込み、Apache、よく見る、多くの人、ヘルプ、ウェブマスター、ウェブサイト、ウェブサイトのプロモーション、お金を稼ぐ

<<:  ウェブマスターのSEOに対する逆の考え方

>>:  123.125.71.* Baidu Spider IPセグメントの詳細な説明

推薦する

3 分でクラウド コンピューティングを理解する: IaaS、PaaS、SaaS とは何ですか?

クラウド コンピューティングには 3 つのサービス モデルがあります。アーキテクチャの観点から見ると...

AWS、クラウドアプリケーションプロジェクトを加速するオープンソースのSaaS Boostを発表

[[399823]] AWS は本日、顧客のソフトウェア プロジェクトを簡素化するために AWS が...

検索結果のランキングに影響を与える要因(2007 年 4 月)

キーワード要因(影響度の高い順から低い順に並べています): * タイトルキーワード* ページコンテン...

プロフェッショナルネットワークプロモーターが持つべきいくつかの専門スキル

インターネットプロモーションは、今日企業が行わなければならない仕事の一つです。インターネット時代にお...

クラウド時代のプロのデザイン教育はどれほどクールなのか?南開大学とゼータクラウドの研究室を見てみましょう。

中国の歴史において深い文化的遺産を持つ大学といえば、南開大学は必ず挙げられます。創立100周年を迎え...

タオバオ、JD.com、ピンドゥオドゥオによるダブルイレブン電子商取引戦争!

ダブル11は経済成長を刺激します。この競争環境において、ダブル11の電子商取引戦争はもはやアリババと...

マルチクラウドネットワーク管理の落とし穴を避ける方法

ベンダー数の増加により、マルチクラウド プラットフォームの管理はより複雑になっていますが、同時にチャ...

外部リンクレイアウトの新しい基準: 外部リンクを構築すべきでないウェブサイト

今日、私はa5のウェブサイトでBaiduが発表したメッセージを見ました。このメッセージは外部リンクに...

アンジュケ・リャン・ウェイピン:不動産の垂直ポータルは時代遅れであり、情報サービスだけを提供するべきではない

原題: 不動産垂直ポータルは「時代遅れ」、Anjuke はモバイル インターネットの先を行く「未来は...

セコイアのコアR&Dチームとの対話: 自社開発分散データベースへの道

データベースの中核となる研究開発チームは常に非常に謎に包まれています。舞台裏に隠れた隠者として、彼ら...

新しいウェブサイト Baidu をゼロから構築するための 4 つのポイント

ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスウェブサイトのBaidu...

ドメイン名が登録されていて、新しい Web サイトの構築に使用されているかどうかは問題になりますか?

Q: 使用済みのドメイン名を使用して新しいウェブサイトを構築すると、どの程度の影響がありますか? こ...

ウェブサイトの最適化は双方に利益のある協力が王道

現在、あらゆる分野でウィンウィンの協力が重視されています。インターネットが急速に発展する時代において...

内部リンクのアンカーテキストの構築を強化することで、サイト全体の重みが効果的に向上します。

ウェブサイトの SEO におけるアンカー テキストの役割は自明ですが、多くの SEO 担当者はウェブ...

百度とグーグルの完全一致に関する分析

多くのウェブマスターは、Baidu と Google の差別化された最適化について独自の経験を持って...