<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>URL書き換え on qwerty.work</title>
        <link>https://qwerty.work/tags/url%E6%9B%B8%E3%81%8D%E6%8F%9B%E3%81%88/</link>
        <description>Recent content in URL書き換え on qwerty.work</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja-JP</language>
        <lastBuildDate>Sun, 26 Feb 2012 21:06:38 +0900</lastBuildDate><atom:link href="https://qwerty.work/tags/url%E6%9B%B8%E3%81%8D%E6%8F%9B%E3%81%88/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>.htaccessによるURL書き換え「Rewrite（リライト）」で転送する方法</title>
            <link>https://qwerty.work/post/2012/02/htaccessurl_rewrite/</link>
            <pubDate>Sun, 26 Feb 2012 21:06:38 +0900</pubDate>
            <guid>https://qwerty.work/post/2012/02/htaccessurl_rewrite/</guid>
            <description>&lt;h2 id=&#34;ドメインやurlの変更による転送&#34;&gt;ドメインやURLの変更による転送&#xA;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;.htaccess&lt;/strong&gt;に記述することにより、外部から要求されたリクエストURLを書き換えてリダイレクトすることができます。&lt;/p&gt;&#xA;&lt;p&gt;サイト移転、ファイル名の変更、ディレクトリ変更、更にはアクセス拒否まで絶大な効果を発揮します。&lt;/p&gt;&#xA;&lt;p&gt;具体的には、外部から要求されたリクエストURLを&lt;strong&gt;Apache&lt;/strong&gt;の&lt;strong&gt;mod_rewrite&lt;/strong&gt;拡張モジュール（URL書き換えエンジン）を使用し、 正規表現を使って書き換えます。&lt;strong&gt;Redirect&lt;/strong&gt;と異なり、リクエストの URL が実在しなくても転送が可能です。&lt;/p&gt;&#xA;&lt;p&gt;注意：サーバーの環境&#xA;Apache1.2 以降で使用可能。&#xA;Apache の&lt;strong&gt;httpd.conf&lt;/strong&gt;で、&lt;strong&gt;mod_rewrite&lt;/strong&gt;モジュールが利用可能になっている必要があります。&lt;/p&gt;&#xA;&lt;h2 id=&#34;htaccess-ファイルにおける-rewrite-の記述方法&#34;&gt;.htaccess ファイルにおける Rewrite の記述方法&#xA;&lt;/h2&gt;&lt;h3 id=&#34;一般的な書式&#34;&gt;一般的な書式&#xA;&lt;/h3&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteEngine on&#xA;RewriteBase /&#xA;&#xA;#WWWありで統一&#xA;RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC]&#xA;RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]&#xA;&#xA;#WWWなしで統一&#xA;RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]&#xA;RewriteRule ^(.*)$ https://%1/$1 [R=301,L]&#xA;&#xA;#HTTPSを強制&#xA;RewriteCond %{HTTPS} off&#xA;RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]&#xA;&#xA;#ディレクトリの移転&#xA;RewriteRule ^old_dir(.*)$ /new_dir$1 [R=301,L]&#xA;&#xA;#ファイルの移転&#xA;RewriteRule ^old_dir/index\.html$ /new_dir/index.html [R=301,L]&#xA;&#xA;#クローラのアクセス禁止&#xA;RewriteCond %{HTTP_USER_AGENT} Badbot-1 [NC, OR]&#xA;RewriteCond %{HTTP_USER_AGENT} Badbot-2 [NC]&#xA;RewriteRule !^robots\.txt$ - [F]&#xA;&#xA;RewriteEngine off&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;注意すること&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;書き換え対象に正規表現の特殊文字が含まれている場合は、&lt;code&gt;\&lt;/code&gt;（日本語環境では円マーク）でエスケープします。&lt;/li&gt;&#xA;&lt;li&gt;書き換え対象&lt;code&gt;old_dir&lt;/code&gt;が、&lt;code&gt;/&lt;/code&gt;から始まっていないことに注意してください。&lt;/li&gt;&#xA;&lt;li&gt;書き換え後&lt;code&gt;/new_dir&lt;/code&gt;が、&lt;code&gt;/&lt;/code&gt;から始まっていることに注意してください。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;よく使うhttpsとwwwなしにリダイレクトするルール&#34;&gt;よく使うHTTPSとWWWなしにリダイレクトするルール&#xA;&lt;/h3&gt;&lt;p&gt;以下の2つはどちらも同じ動作をします。&lt;/p&gt;&#xA;&lt;h4 id=&#34;それぞれ書く方法&#34;&gt;それぞれ書く方法&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteEngine On&#xA;&#xA;# httpをhttpsにリダイレクト&#xA;RewriteCond %{HTTPS} off&#xA;RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]&#xA;&#xA;# wwwありをwwwなしにリダイレクト&#xA;RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]&#xA;RewriteRule ^(.*)$ https://%1/$1 [L,R=301]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;同時に書く方法&#34;&gt;同時に書く方法&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteEngine On&#xA;&#xA;# httpとwwwありの両方をhttpsとwwwなしにリダイレクト&#xA;RewriteCond %{HTTPS} off [OR]&#xA;RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]&#xA;RewriteRule ^(.*)$ https://%1%{REQUEST_URI} [L,R=301]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;HTTPとWWWありで同時にアクセスがあった場合、複数のリダイレクト条件が連続して適用されることになり、サーバーからリダイレクト回数が多いという理由でで404エラーが返される場合があります。対処方法は今のところ不明です。&lt;/p&gt;&#xA;&lt;h3 id=&#34;ファイルの移転&#34;&gt;ファイルの移転&#xA;&lt;/h3&gt;&lt;p&gt;ファイル名や階層を変更したとき、古いURLにアクセスがあったら新しいURLに転送します。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteRule ^old_dir/index\.html$ /new_dir/index.html [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;解説&#34;&gt;解説&#xA;&lt;/h4&gt;&lt;p&gt;&lt;code&gt;old_dir/index.html&lt;/code&gt;のアクセスを&lt;code&gt;/new_dir/index.html&lt;/code&gt;にリダイレクトし、ここではファイルが永久に移転したことを通知しています。書き換えが行われたら処理終了。&lt;code&gt;301&lt;/code&gt;は恒久的なリダイレクトで、一時的なリダイレクトは&lt;code&gt;302&lt;/code&gt;を指定します。&lt;/p&gt;&#xA;&lt;h3 id=&#34;ディレクトリの移転転送&#34;&gt;ディレクトリの移転・転送&#xA;&lt;/h3&gt;&lt;p&gt;リクエストに対して、ディレクトリ全体が移転したことを知らせます。&lt;code&gt;http://～&lt;/code&gt;から記述することにより、外部ドメインへのリダイレクトも可能です。サイトの引っ越しなど、旧ドメインから新ドメインに転送に使います。&lt;/p&gt;&#xA;&lt;h4 id=&#34;内部移転&#34;&gt;内部移転&#xA;&lt;/h4&gt;&lt;p&gt;階層を変更したときなどに使います。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteRule ^old_dir(.*)$ /new_dir$1 [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;外部移転&#34;&gt;外部移転&#xA;&lt;/h4&gt;&lt;p&gt;ドメイン変更した際、旧ドメインにアクセスがあった場合、新しいドメインのサイトに転送したいときに使います。工事中など、一時的な転送の場合は&lt;code&gt;302&lt;/code&gt;を使用します。&lt;/p&gt;&#xA;&lt;p&gt;書式&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteRule ^old_dir(.*)$ https://www.example.com/new_dir$1 [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;使用例&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]&#xA;RewriteRule (.*)$ https://www.example.com [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;解説&#xA;&lt;code&gt;.*&lt;/code&gt;は任意の1文字0回以上の繰り返しを意味しています。&lt;code&gt;(.*)&lt;/code&gt;に該当する文字列が、後方参照&lt;code&gt;$1&lt;/code&gt;に入ります。&lt;/p&gt;&#xA;&lt;h3 id=&#34;拡張子の変更&#34;&gt;拡張子の変更&#xA;&lt;/h3&gt;&lt;p&gt;リクエストに対して、ファイルの拡張子を書き換えてリダイレクトします。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# 拡張子が .html のファイルを、全て .phpl に変更する&#xA;RewriteRule ^(.*)\.html$ /$1.php [R=301,L]&#xA;&#xA;# 特定のディレクトリに対して、ファイルの拡張子を変更する&#xA;RewriteCond %{REQUEST_URI} ^/example/ [NC]&#xA;RewriteRule ^(.*)\.html$ /$1.php [R=301,L]&#xA;&#xA;# 特定のディレクトリを除いて、ファイルの拡張子を変更する&#xA;RewriteCond %{REQUEST_URI} !^/example/ [NC]&#xA;RewriteRule ^(.*)\.html$ /$1.php [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;解説&#xA;特定のディレクトリに関しては、（行頭から）&lt;code&gt;/example/&lt;/code&gt;の大小を問わない文字を含む（もしくは含まない）アクセスに対して、拡張子&lt;code&gt;.html&lt;/code&gt;を&lt;code&gt;.php&lt;/code&gt;に書き換えてリダイレクトしています。&#xA;ここではファイルが永久に移転したことを通知しています。書き換えが行われたら処理終了。&lt;/p&gt;&#xA;&lt;h3 id=&#34;サーバ移転サイトの引越し&#34;&gt;サーバ移転（サイトの引越し）&#xA;&lt;/h3&gt;&lt;p&gt;リクエスト全体を、新しいドメインへリダイレクトします。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteRule ^(.*)$ http://www.new-example.com/$1 [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;解説&#xA;HTTPステータスコード&lt;code&gt;R=301&lt;/code&gt;(Moved Permanently) を付加することにより、URLが永久に移動したことを検索サイトのクローラに通知します。&lt;/p&gt;&#xA;&lt;p&gt;この処理で、旧サイトのページランクを自動的にほぼ引き継ぐことができます。&#xA;検索サイトへの反映は、クローラにもよりますが、1週間から1ヶ月ほどかかります。&lt;/p&gt;&#xA;&lt;h3 id=&#34;ドメインの統一&#34;&gt;ドメインの統一&#xA;&lt;/h3&gt;&lt;p&gt;サーバーは1つのドメイン、例えば&lt;strong&gt;example.com&lt;/strong&gt;に対して、&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.example.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;www.example.com&lt;/a&gt;&lt;/strong&gt;でもリクエストを受け付けます。&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;host.com&lt;/strong&gt;がサブドメインを使用している場合は、更に&lt;strong&gt;example.host.com&lt;/strong&gt;と&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.example.host.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;www.example.host.com&lt;/a&gt;&lt;/strong&gt;でも閲覧可能になり、合計4つのサイトにアクセスが分散することになります。&#xA;これは、 SEO 対策上あまり好ましいことではありません。ここでは、&lt;code&gt;Rewrite&lt;/code&gt;を使って、&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.example.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;www.example.com&lt;/a&gt;&lt;/strong&gt;に統一する場合を記述します。&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;サブドメインを使用していない場合&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC]&#xA;RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;サブドメインを使用している場合&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC,OR]&#xA;RewriteCond %{HTTP_HOST} ^(example\.host\.com)(:80)? [NC,OR]&#xA;RewriteCond %{HTTP_HOST} ^(www\.example\.host\.com)(:80)? [NC]&#xA;RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;アクセス制限&#34;&gt;アクセス制限&#xA;&lt;/h3&gt;&lt;p&gt;サーバ変数を取得して、アクセス制限を掛けます。&lt;/p&gt;&#xA;&lt;p&gt;アクセス制限は、サーバに思わぬ負荷をかけることがあります。&lt;br&gt;&#xA;不必要なアクセス制限はできるだけ掛けないようにしてください。十分にアクセス情報を解析してから設定してください。設定によっては正当な訪問者もアクセスできなくなる可能性があります。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;[F]&lt;/code&gt;は、「Forbidden（アクセス禁止）」を意味します。&lt;/li&gt;&#xA;&lt;li&gt;特殊文字の前に&lt;code&gt;\&lt;/code&gt;（日本語環境では円マーク）を付加する事に注意してください。&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;REMOTE_HOST&lt;/code&gt;は、サーバーによっては取得できない場合があります。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4 id=&#34;特定のホストからのアクセスを全て禁止する&#34;&gt;特定のホストからのアクセスを全て禁止する&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{REMOTE_HOST} ^example\.com$ [NC, OR]&#xA;RewriteCond %{REMOTE_ADDR} ^192\.168\.1\.&#xA;RewriteRule ^.* - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;解説&#xA;&lt;code&gt;REMOTE_HOST&lt;/code&gt;が取得できない場合は、&lt;code&gt;REMOTE_ADDR&lt;/code&gt;を使用してアクセス制限をかけます。&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;特定のブラウザからのアクセスを全て禁止する&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4\.0 \(compatible; MSIE 6\.0\)$ [NC]&#xA;&#xA;RewriteRule ^.* - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;特定の-referer-からのアクセスを全て禁止する&#34;&gt;特定の Referer からのアクセスを全て禁止する&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_REFERER} ^http://www\.example\.com/bad\.html$ [NC]&#xA;RewriteRule ^.* - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;特定の-referer-以外からのアクセスを全て禁止する特定の-referer-からのみアクセスを全て許可する&#34;&gt;特定の Referer 以外からのアクセスを全て禁止する（=特定の Referer からのみアクセスを全て許可する）&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_REFERER} !^http://www\.example\.com/good\.html$ [NC]&#xA;RewriteRule ^.* - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;直リンクを全て禁止する&#34;&gt;直リンクを全て禁止する&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_REFERER} !example\.com [NC]&#xA;RewriteRule ^.* - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;解説&#xA;Referer が&lt;strong&gt;example.com&lt;/strong&gt;を含まないリクエストに対して、全てのアクセスを禁止します。&lt;/p&gt;&#xA;&lt;h4 id=&#34;画像の直リンクを禁止する&#34;&gt;画像の直リンクを禁止する&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_REFERER} !example\.com [NC]&#xA;RewriteRule \.(jpg|png|gif)$ - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;解説&#xA;Referer が&lt;strong&gt;example.com&lt;/strong&gt;を含まないリクエストに対して、拡張子が&lt;code&gt;.jpg&lt;/code&gt;または&lt;code&gt;.png&lt;/code&gt;または&lt;code&gt;.gif&lt;/code&gt;へのアクセスを禁止します。&lt;/p&gt;&#xA;&lt;h4 id=&#34;特定のホスト--特定のブラウザからのアクセスを禁止する&#34;&gt;特定のホスト &amp;amp; 特定のブラウザからのアクセスを禁止する&#xA;&lt;/h4&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{REMOTE_ADDR} ^192\.168\.1\.&#xA;RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4\.0 \(compatible; MSIE 6\.0\)$&#xA;&#xA;RewriteRule ^.* - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;特定の検索ロボットクローラに対してrobotstxt以外のアクセスを禁止する&#34;&gt;特定の検索ロボット（クローラ）に対して、robots.txt以外のアクセスを禁止する&#xA;&lt;/h4&gt;&lt;p&gt;クローラのアクセス禁止は、サーバの負荷を伴います。そこで先に、ここに記述する全てのクローラを&lt;code&gt;robots.txt&lt;/code&gt;で拒否しておきます。それを無視した悪質クローラだけを、最終的にここでアクセス禁止にします。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;RewriteCond %{HTTP_USER_AGENT} Badbot-1 [NC, OR]&#xA;RewriteCond %{HTTP_USER_AGENT} Badbot-2 [NC, OR]&#xA;RewriteCond %{HTTP_USER_AGENT} Badbot-3 [NC, OR]&#xA;RewriteCond %{HTTP_USER_AGENT} Badbot-n [NC]&#xA;&#xA;RewriteRule !^robots\.txt$ - [F]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;解説&#xA;&lt;code&gt;HTTP_USER_AGENT&lt;/code&gt;が、&lt;code&gt;Badbot-1&lt;/code&gt;, から&lt;code&gt;Badbot-n&lt;/code&gt;の文字（文字の大小を区別しない）を含むクローラに対して、&lt;code&gt;robots.txt&lt;/code&gt;以外のアクセスを禁止します。&lt;/p&gt;&#xA;&lt;p&gt;※悪質クローラに対する対策の詳細は：&lt;a class=&#34;link&#34; href=&#34;http://webtech.akijapan.com/spam/robots.phtml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;検索ロボット対策&lt;/a&gt;をご覧ください。&lt;/p&gt;&#xA;&lt;h2 id=&#34;説明&#34;&gt;説明&#xA;&lt;/h2&gt;&lt;h3 id=&#34;ディレクティブ&#34;&gt;ディレクティブ&#xA;&lt;/h3&gt;&lt;pre&gt;&lt;code&gt;  ディレクティブと書式&#xA;  初期値&#xA;  説明&#xA;&#xA;&#xA;&#xA;&#xA;  RewriteEngine on/off&#xA;  off&#xA;  書き換えの可否を設定。&#xA;&#xA;&#xA;  RewriteOptions inherit&#xA;  -&#xA;   inherit : 現在の設定値を親ディレクトリの設定値から強制的に継承する。 &#xA;&#xA;&#xA;  RewriteBase /&#xA;  /&#xA;   書き換えのベースとなるパス（ベースが明白な場合は不要）。 &#xA;&#xA;&#xA;  RewriteCond テスト文字列 条件 パターン。&#xA;  -&#xA;  条件によるテスト文字列とパターンの比較。&#xA;&#xA;&#xA;  RewriteRule パターン 置換対象。&#xA;  -&#xA;  パターンを置換対象で置き換える。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h3 id=&#34;オプション&#34;&gt;オプション&#xA;&lt;/h3&gt;&lt;pre&gt;&lt;code&gt;  [R]&#xA;   強制的にリダイレクト (Redirect) する。&#xA;&#xA;    [R=301] : 永久的に移動。HTTP レスポンスの「301 : Moved Permanently」を返します。&#xA;&#xA;    [R=302] : 一時的な移動。HTTP レスポンスの「302 : Moved Temporarily」を返します、デフォルト。 &#xA;&#xA;&#xA;  [F]&#xA;   強制的にアクセス禁止 (Forbidden) にする。&#xA;&#xA;    HTTP レスポンスの「403 : Forbidden」を返します。 &#xA;&#xA;&#xA;  [G]&#xA;   強制的に消去済み (Gone) にする。&#xA;&#xA;    HTTP レスポンスの「410 : Gone」を返します。&#xA;    &#xA;    もはや存在しないページを消去済みとしてマークします。 &#xA;&#xA;&#xA;  [L]&#xA;   書き換えが行われたら終了 (Last) にする。&#xA;&#xA;    現在の書き換え後の URL が後続のルール によってそれ以上書き換えられることを防止します。 &#xA;&#xA;&#xA;  [NC]&#xA;   パターンについて、文字の大小を区別しない(No Case)。&#xA;    &#xA;    つまり、&amp;quot;A-Z&amp;quot; と &amp;quot;a-z&amp;quot; は区別されません。 &#xA;&#xA;&#xA;  [OR]&#xA;  または。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h3 id=&#34;正規表現&#34;&gt;正規表現&#xA;&lt;/h3&gt;&lt;pre&gt;&lt;code&gt;  文字&#xA;  説明&#xA;&#xA;&#xA;&#xA;&#xA;  !&#xA;  否定。&#xA;&#xA;&#xA;  .&#xA;  任意の1文字。&#xA;&#xA;&#xA;  [ ]&#xA;  括弧内のいずれかの文字。&#xA;&#xA;&#xA;  [^ ]&#xA;  括弧内のいずれかの文字以外。&#xA;&#xA;&#xA;  |&#xA;  または。&#xA;&#xA;&#xA;  ?&#xA;  直前の文字の0回または1回の繰り返し&#xA;&#xA;&#xA;  *&#xA;  直前の文字の0回以上の繰り返し。&#xA;&#xA;&#xA;  +&#xA;  直前の文字の1回以上の繰り返し。&#xA;&#xA;&#xA;  ( )&#xA;  選択範囲の境界を明示する、もしくは後方参照を作成する。&#xA;&#xA;&#xA;  ^&#xA;  行頭。&#xA;&#xA;&#xA;  $&#xA;  行末。&#xA;&#xA;&#xA;  $n&#xA;  (0 &#xA;&#xA;&#xA;  %{ }&#xA;  サーバ変数の取得。&#xA;&#xA;&#xA;  \&#xA;  （日本語環境では円マーク）正規表現の特殊文字をエスケープする。 &#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h3 id=&#34;サーバ変数&#34;&gt;サーバ変数&#xA;&lt;/h3&gt;&lt;pre&gt;&lt;code&gt;  変数名&#xA;  説明&#xA;&#xA;&#xA;&#xA;&#xA;  HTTP_USER_AGENT&#xA;  ブラウザの種類とバージョン。&#xA;&#xA;&#xA;  HTTP_REFERER&#xA;  参照元の URL 。&#xA;&#xA;&#xA;  HTTP_COOKIE&#xA;  設定されているクッキー情報。&#xA;&#xA;&#xA;  HTTP_FORWARDED&#xA;  プロキシサーバ情報。&#xA;&#xA;&#xA;  HTTP_HOST&#xA;  接続要求しているホスト名。&#xA;&#xA;&#xA;  HTTP_PROXY_CONNECTION&#xA;  接続先プロキシサーバとの接続状態。&#xA;&#xA;&#xA;  HTTP_ACCEPT&#xA;  ブラウザが認識可能なデータ形式。&#xA;&#xA;&#xA;  DOCUMENT_ROOT&#xA;  サイトのルートディレクトリ。&#xA;&#xA;&#xA;  SERVER_ADMIN&#xA;  サーバ管理者のメールアドレス情報。&#xA;&#xA;&#xA;  SERVER_NAME&#xA;  サーバのホスト名、ドメイン名、またはIPアドレス情報。&#xA;&#xA;&#xA;  SERVER_ADDR&#xA;  サーバのIPアドレス。&#xA;&#xA;&#xA;  SERVER_PORT&#xA;  送信に使われたサーバのポート番号。&#xA;&#xA;&#xA;  SERVER_PROTOCOL&#xA;  送信に使われたプロトコルの名前とレビジョン情報。&#xA;&#xA;&#xA;  SERVER_SOFTWARE&#xA;  起動したサーバソフトウエアの名前とバージョン情報。&#xA;&#xA;&#xA;  REMOTE_ADDR&#xA;  リモートホストのIPアドレス情報。&#xA;&#xA;&#xA;  REMOTE_HOST&#xA;  リモートホストのドメイン名。&#xA;&#xA;&#xA;  REMOTE_USER&#xA;  ユーザの認証名。&#xA;&#xA;&#xA;  REMOTE_IDENT&#xA;  リモートホストのユーザ名。&#xA;&#xA;&#xA;  REQUEST_METHOD&#xA;  リクエストを送信した方法。&#xA;&#xA;&#xA;  REQUEST_URI&#xA;  リクエストされたURI。&#xA;&#xA;&#xA;  SCRIPT_FILENAME&#xA;  現在実行しているスクリプト名。&#xA;&#xA;&#xA;  PATH_INFO&#xA;  クライアントから送られるパス情報。&#xA;&#xA;&#xA;  QUERY_STRING&#xA;  URL に付加して渡された &amp;quot;?&amp;quot; 以降の文字列。&#xA;&#xA;&#xA;  AUTH_TYPE&#xA;  ユーザを認証するときに使用する認証方法。&#xA;&#xA;&#xA;  TIME_YEAR&#xA;  サーバのシステム日付・年&#xA;&#xA;&#xA;  TIME_MON&#xA;  サーバのシステム日付・月&#xA;&#xA;&#xA;  TIME_DAY&#xA;  サーバのシステム日付・日&#xA;&#xA;&#xA;  TIME_HOUR&#xA;  サーバのシステム日付・時&#xA;&#xA;&#xA;  TIME_MIN&#xA;  サーバのシステム日付・分&#xA;&#xA;&#xA;  TIME_SEC&#xA;  サーバのシステム日付・秒&#xA;&#xA;&#xA;  TIME_WDAY&#xA;  サーバのシステム日付・曜日&#xA;&#xA;&#xA;  TIME&#xA;  サーバのシステム日付・Unix タイムスタンプ。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;</description>
        </item></channel>
</rss>
