開発者ドキュメント

Mod_Rewriteの設定方法(2ページ)

1ページから続く

書き換え条件

前のページの3つの例は、URLを書き直して、サイトへのアクセスと記憶を容易にする方法を示しています。

書き換えルールには、特定の状況でのみ書き換えが行われるようにするための条件を設定することもできます。

例1:ホットリンクを防ぐ方法

ホットリンクは、あるサーバーの画像またはオブジェクトを別のサーバーで使用するプロセスです。 このアクションにより、被害者のサーバーから帯域幅が消費され、オブジェクトの作成者は、他の方法で獲得した可能性のあるサイトへの追加の訪問者を拒否します。

サイト上のオブジェクトへのすべてのリンクを他の不快な画像にリダイレクトするか、操作を完全に禁止することで、ホットリンクを防ぐことができます。

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com/.*$ [NC]
RewriteRule .*\.(gif|jpeg|png)$ http://www.example.com/unpleasantness.jpg [R,NC,L]

今説明のために:

例2:URLにwwwを追加する方法

mod_rewriteが実行できるもう1つの便利なトリックは、ドメインにwwwを追加することです。 example.comとwww.example.comが同じサイトであることは簡単にわかりますが、検索エンジンはそれらを重複として登録し、ランキングを傷つけます。

この問題を解決するには、wwwを一貫して削除するか、常にURLに追加するかを選択できます。 この例は、wwwが常に接続されていることを確認する方法を示しています。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301]

今説明のために:

その後、すべてがexample.comからwww.example.comに変換されます

例3:特定のIPアドレスをブロックする

これは、たとえば、特定のIPアドレスの悪意のある当事者がサイトにアクセスするのを防ぐための便利なツールです。

RewriteCond %{REMOTE_ADDR} ^(12\.34\.56\.789)$
RewriteRule (.*) - [F,L]

今説明のために:

資力

前のセクションは、Mod_Rewriteの機能の基本的な概要です。

トピックは非常に広範であり、非常に便利で柔軟なツールにすることができる多くのニュアンスがあります。

Mod_Rewriteの詳細については、次のリンクを参照してください。

EtelSverdlov著
モバイルバージョンを終了