• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「htaccess」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(和訳しました〜。)
1行目: 1行目:
.htaccessは、分散型の設定ファイルです。 and is how Apache handles configuration changes on a per-directory basis.
+
{{CheckTrans}}
  
WordPress uses this file to manipulate how Apache serves files from its root directory, and subdirectories thereof. Most notably, WP modifies this file to be able to handle pretty permalinks.
+
.htaccess は、Apache が設定変更をディレクトリ毎に管理するための分散型の設定ファイルです。
  
This page may be used to restore a corrupted .htaccess file (e.g. a misbehaving plugin).
+
WordPress は、このファイルを利用して、Aapche がルートディレクトリやサブディレクトリからファイルをどのように取り出すかを制御します。最大の用途として、WordPress はカスタムパーマリンクを実現するために、このファイルを変更します。
 +
 
 +
この文書は、おかしくなった .htaccess ファイルの復元に使えるかもしれません(例えばプラグインの誤動作)。
 +
 
 +
<div id="Basic_WP">
 +
== WordPress の基本形 ==
 +
</div>
  
==基本のWordPress==
 
 
<pre>
 
<pre>
 
# BEGIN WordPress
 
# BEGIN WordPress
19行目: 24行目:
 
</pre>
 
</pre>
  
==マルチサイト==
+
<div id="Multisite">
 +
== マルチサイト ==
 +
</div>
  
===WordPress 3.5 以上===
+
<div id="WordPress_3.5_and_up">
 +
=== WordPress 3.5 以降 ===
 +
</div>
  
If you activated Multisite on WordPress 3.5 or later, use one of these.
+
WordPress 3.5 以降でマルチサイトを有効にするなら、下記のいずれかを使います。
  
'''サブフォルダーの例'''
+
'''サブフォルダー方式の例'''
 
<pre>
 
<pre>
 
RewriteEngine On
 
RewriteEngine On
42行目: 51行目:
 
</pre>
 
</pre>
  
<strong>サブドメインの例</strong>
+
'''サブドメイン方式の例'''
  
 
<pre>
 
<pre>
60行目: 69行目:
 
</pre>
 
</pre>
  
===WordPress 3.4 以下 ===
 
  
If you originally installed WordPress with 3.4 or older and activated Multisite then, you need to use one of these:
+
<div id="WordPress_3.4_and_below">
 +
=== WordPress 3.4 以前 ===
 +
</div>
  
<strong>サブフォルダーの例</strong>
+
もともと WordPress 3.4 以前をインストールしていた時にマルチサイトを有効にした場合、下記のいずれかを使う必要があります:
  
WordPress 3.0 through 3.4.2
+
'''サブフォルダー方式の例'''
 +
 
 +
<!-- WordPress 3.0 through 3.4.2 -->
 
<pre>
 
<pre>
 
# BEGIN WordPress
 
# BEGIN WordPress
88行目: 100行目:
 
</pre>
 
</pre>
  
 
+
'''サブドメイン方式の例'''
<strong>サブドメインの例</strong>
+
  
 
<pre>
 
<pre>
108行目: 119行目:
  
  
===WordPress MU ===
+
<div id="WordPress_MU">
 +
=== WordPress MU ===
 +
</div>
  
If you started using WordPress with WordPress MU (WPMU) and then migrated to a newer version of WordPress multisite, the .htaccess rules are more complex:
+
最初は WordPress MU (WPMU) を使っていて、新しいバージョンの WordPress マルチサイトへ移行した場合は、.htaccess のルールがもっと複雑です:
  
<strong>SubFolder Example</strong>
+
'''サブフォルダー方式の例'''
  
 
<pre>
 
<pre>
138行目: 151行目:
  
  
 +
<div id="General_Examples">
 
== 一般的な例 ==
 
== 一般的な例 ==
 +
</div>
  
 +
<div id="Options">
 
=== オプション ===
 
=== オプション ===
 +
</div>
  
Any options preceded by a '''+''' are added to the options currently in force, and any options preceded by a '''-''' are removed from the options currently in force.
+
前に '''+''' を付けたオプションは、現在有効なオプションへ追加されます。前に '''-''' を付けたオプションは現在有効なオプションから削除されます。
  
Possible values for the [http://httpd.apache.org/docs/trunk/mod/core.html#options Options directive] are any combination of:
+
[http://httpd.apache.org/docs/trunk/mod/core.html#options Options ディレクティブ] の有効な値は、以下を任意に組み合わせたものです:
  
; None : All options are turned off.
+
; None : すべてのオプションを無効にする。
; All : All options except for MultiViews. This is the default setting.
+
; All : MultiViews を除くすべてのオプションを有効にする。これがデフォルト。
; ExecCGI : Execution of CGI scripts using mod_cgi is permitted.
+
; ExecCGI : mod_cgi による CGI スクリプトの実行を許可する。
; FollowSymLinks : The server will follow symbolic links in this directory.
+
; FollowSymLinks : サーバが、このディレクトリ内でシンボリックリンクをたどれるようにする。
; Includes : Server-side includes provided by mod_include are permitted.
+
; Includes : mod_include が提供する SSI (Server-side includes) を有効にする。
; IncludesNOEXEC : Server-side includes are permitted, but the #exec cmd and #exec cgi are disabled.
+
; IncludesNOEXEC : SSI を有効にするが、<code>#exec cmd<code> と <code>#exec cgi</code> は無効にする。
; Indexes : URL maps to a directory, and no DirectoryIndex, a formatted listing of the directory.
+
; Indexes : もし、URL がディレクトリにマップするリクエストであって、かつ DirectoryIndex で指定したファイルが無ければ、ディレクトリ内の一覧を整形して返す。
; MultiViews : Content negotiated "MultiViews" are allowed using mod_negotiation.
+
; MultiViews : mod_negotiation による [http://httpd.apache.org/docs/trunk/content-negotiation.html コンテントネゴシエーション] された "MultiViews" を許可する。
; SymLinksIfOwnerMatch : Only follow symbolic links where target is owned by the same user id as the link.
+
; SymLinksIfOwnerMatch : シンボリックリンクの参照先とシンボリックリンク自体の所有ユーザ ID が同じ場合のみ、シンボリックリンクをたどる。
  
This will disable all options, and then only enable FollowSymLinks, which is necessary for mod_rewrite.
+
次の例はすべてのオプションを無効にした上で、FollowSymLinks だけを有効にします。これは mod_rewrite に必要な設定です。
  
 
<pre>
 
<pre>
162行目: 179行目:
 
Options FollowSymLinks
 
Options FollowSymLinks
 
</pre>
 
</pre>
 
  
  
 
=== DirectoryIndex ===
 
=== DirectoryIndex ===
  
[http://httpd.apache.org/docs/trunk/mod/mod_dir.html#directoryindex DirectoryIndex] sets the file that Apache will serve if a directory is requested.
+
[http://httpd.apache.org/docs/trunk/mod/mod_dir.html#directoryindex DirectoryIndex] ディレクティブは、ディレクトリ自体がリクエストされた時に Apache が探すファイルを指定します。
  
Several URLs may be given, in which case the server will return the first one that it finds.
+
複数の URL を指定できます。その場合、最初に見つかったファイルが使用されます。
  
 
<pre>
 
<pre>
176行目: 192行目:
  
  
 +
=== DefaultLanguage ===
  
=== デフォルトの言語 ===
+
[http://httpd.apache.org/docs/trunk/mod/mod_mime.html#defaultlanguage DefaultLanguage] ディレクティブは、明示的な言語タグが指定されていないファイルについて使用する、デフォルトの言語を指定します。
 
+
[http://httpd.apache.org/docs/trunk/mod/mod_mime.html#defaultlanguage DefaultLanguage] will cause all files that do not already have a specific language tag associated with it will use this.
+
  
 
<pre>
 
<pre>
186行目: 201行目:
  
  
 +
<div id="Default_Charset">
 
=== デフォルトの文字セット ===
 
=== デフォルトの文字セット ===
 +
</div>
  
Set the default character encoding sent in the HTTP header.  See: [http://www.w3.org/International/questions/qa-htaccess-charset Setting charset information in .htaccess]
+
HTTP ヘッダーに含めて送信されるデフォルトの文字エンコーディングを指定します。[http://www.w3.org/International/questions/qa-htaccess-charset Setting charset information in .htaccess] を見てください。
  
 
<pre>
 
<pre>
194行目: 211行目:
 
</pre>
 
</pre>
  
'''Set Charset for Specific Files'''
+
'''特定のファイルタイプに文字セットを指定する'''
  
 
<pre>
 
<pre>
200行目: 217行目:
 
</pre>
 
</pre>
  
 
+
'''特定のファイルについてセットする'''
'''Set for specific files'''
+
  
 
<pre>
 
<pre>
210行目: 226行目:
  
  
=== サーバ署名 ===
+
=== ServerSignature ===
  
The [http://httpd.apache.org/docs/trunk/mod/core.html#serversignature ServerSignature] directive allows the configuration of a trailing footer line under server-generated documents. Optionally add a line containing the server version and virtual host name to server-generated pages (internal error documents, FTP directory listings, mod_status and mod_info output etc., but not CGI generated documents or custom error documents).
+
[http://httpd.apache.org/docs/trunk/mod/core.html#serversignature ServerSignature] ディレクティブは、サーバが生成するドキュメントの末尾に付けるフッターの設定を行います。サーバのバージョンと仮想ホスト名を含む 1 行を、サーバが生成するドキュメント(エラーメッセージ、FTP のディレクトリリスト、mod_status や mod_info の出力など)へ追加できます。
  
; On : adds a line with the server version number and ServerName of the serving virtual host
+
; On : サーバのバージョン、稼動中の仮想ホストの ServerName が書かれた 1 行を追加
; Off : suppresses the footer line
+
; Off : フッターをつけない
; Email : creates a "mailto:" reference to the ServerAdmin of the referenced document
+
; Email : 参照されたドキュメントの ServerAdmin を指す "mailto:" を追加
  
 
<pre>
 
<pre>
224行目: 240行目:
  
  
 +
<div id="Force_Files_to_be_Downloaded">
 +
=== ファイルをダウンロードさせる ===
 +
</div>
  
=== ファイルダウンロードを強制する ===
+
下記の例は、指定した拡張子を持つファイルがリクエストされた場合にブラウザーに表示するのではなく、「名前をつけて保存」などのダイアログでクライアントがダウンロードできるようにします。
 
+
The below will cause any requests for files ending in the specified extensions to not be displayed in the browser but instead force a "Save As" dialog so the client can download.
+
  
 
<pre>
 
<pre>
234行目: 251行目:
  
  
=== HTTP圧縮 ===
+
<div id="HTTP_Compression">
 +
=== HTTP 圧縮 ===
 +
</div>
  
The AddOutputFilter directive maps the filename extension extension to the filters which will process responses from the server before they are sent to the client. This is in addition to any filters defined elsewhere, including SetOutputFilter and AddOutputFilterByType. This mapping is merged over any already in force, overriding any mappings that already exist for the same extension.
+
AddOutputFilter ディレクティブは、ファイル名の拡張子にフィルターを対応させます。フィルターは、クライアントへ送られる前に応答内容を処理します。これは、ほかのところで定義されたフィルター(SetOutputFilter と AddOutputFilterByType を含む)に加えて実行されます。マッピングは、実施済みのマッピングにマージされます。同じ拡張子についてすでにマッピングがあると、それを上書きします。
  
See also: https://developers.google.com/speed/docs/insights/EnableCompression
+
これも見てください: https://developers.google.com/speed/docs/insights/EnableCompression
  
 
<pre>
 
<pre>
247行目: 266行目:
 
</pre>
 
</pre>
  
'''Force Compression for certain files'''
+
'''特定のファイルを圧縮する'''
  
 
<pre>
 
<pre>
256行目: 275行目:
  
  
=== Send Custom HTTP Headers ===
+
<div id="Send_Custom_HTTP_Headers">
 +
=== カスタム HTTP ヘッダーを送信 ===
 +
</div>
  
The Header directive lets you send HTTP headers for every request, or just specific files.  You can view a sites HTTP Headers using [https://getfirebug.com/ Firebug], Chrome Dev Tools, [https://www.wireshark.org/ Wireshark] or an [http://www.askapache.com/online-tools/http-headers-tool/ online tool].
+
Header ディレクティブは、すべてのリクエストまたは特定のファイルについて、追加の HTTP ヘッダーを送信します。サイトの HTTP ヘッダーは次のようなツールで見ることができます: [https://getfirebug.com/ Firebug], Chrome Dev Tools, [https://www.wireshark.org/ Wireshark] または [http://www.askapache.com/online-tools/http-headers-tool/ オンラインツール]
  
 
<pre>
 
<pre>
266行目: 287行目:
  
  
=== Unset HTTP Headers ===
+
<div id="Unset_HTTP_Headers">
 +
=== HTTP ヘッダーを外す ===
 +
</div>
  
This will unset HTTP headers, using '''always''' will try extra hard to remove them.
+
HTTP ヘッダーを外します。'''always''' を指定すると、ヘッダー削除を強力に行います。
  
 
<pre>
 
<pre>
277行目: 300行目:
  
  
=== ログイン画面をパスワードで保護する ===
+
<div id="Password_Protect_Login">
 +
=== ログインのパスワード保護 ===
 +
</div>
  
<tt>wp-login.php</tt>ファイルを保護するのは、非常に有用です。[http://www.askapache.com/online-tools/htpasswd-generator/ htpasswd generator]パスワードジェネレーターを使用しましょう。
+
これは <tt>wp-login.php</tt> ファイルを保護するのにとても便利です。パスワード生成に [http://www.askapache.com/online-tools/htpasswd-generator/ htpasswd generator] を利用できます。
  
'''Basic認証'''
+
'''[http://ja.wikipedia.org/wiki/Basic認証 Basic 認証]'''
  
 
<pre>
 
<pre>
293行目: 318行目:
 
</pre>
 
</pre>
  
'''Digest認証'''
+
'''[http://ja.wikipedia.org/wiki/Digest認証 Digest 認証]'''
 
   
 
   
 
<pre>
 
<pre>
306行目: 331行目:
 
</pre>
 
</pre>
  
=== 特定のIPを必要とする===
 
  
This is a way to only allow certain IP addresses to be allowed access.
+
<div id="Require_Specific_IP">
 +
=== IP アドレス制限 ===
 +
</div>
 +
 
 +
特定の IP アドレスだけにアクセスを許可する方法です。
  
 
<pre>
 
<pre>
322行目: 350行目:
  
  
 +
<div id="Protect_Sensitive_Files">
 
=== 機密ファイルを保護 ===
 
=== 機密ファイルを保護 ===
 +
</div>
  
This denies all web access to your wp-config file, error_logs, php.ini, and htaccess/htpasswds.
+
この例は、wp-config ファイル、error_log、php.ini および htaccess/htpasswd ファイルへの Web アクセスを拒否します。
  
 
<pre>
 
<pre>
334行目: 364行目:
  
  
=== SSLを要求する ===
+
<div id="Require_SSL">
 +
=== SSL を要求する ===
 +
</div>
  
This will force SSL, and require the exact hostname or else it will redirect to the SSL version.  Useful in a <tt>/wp-admin/.htaccess</tt> file.
+
この例は、SSL を強制し、正式なホスト名を要求します。これらの条件を満たさなければ SSL バージョンへリダイレクトします。<tt>/wp-admin/.htaccess</tt> の中で役立ちます。
  
 
<pre>
 
<pre>
346行目: 378行目:
  
  
 +
<div id="External_Resources">
 
== 外部リソース ==
 
== 外部リソース ==
 +
</div>
  
* [http://httpd.apache.org/docs/trunk/howto/htaccess.html Official Apache HTTP Server Tutorial: .htaccess files]
+
* [http://httpd.apache.org/docs/trunk/howto/htaccess.html 公式 Apache チュートリアル: .htaccess ファイル]
* [http://httpd.apache.org/docs/trunk/mod/quickreference.html Official Htaccess Directive Quick Reference]
+
* [http://httpd.apache.org/docs/trunk/mod/quickreference.html Official Htaccess ディレクティブ クイックリファレンス]
* [http://www.askapache.com/htaccess/htaccess.html Htaccess Tutorial]
+
* [http://www.askapache.com/htaccess/htaccess.html Htaccess チュートリアル]
 
* [https://developers.google.com/speed/docs/insights/rules Google PageSpeed for Developers]
 
* [https://developers.google.com/speed/docs/insights/rules Google PageSpeed for Developers]
 
* [http://perishablepress.com/stupid-htaccess-tricks/ Stupid Htaccess Tricks]
 
* [http://perishablepress.com/stupid-htaccess-tricks/ Stupid Htaccess Tricks]
356行目: 390行目:
  
  
== あわせて読む ==
+
<div id="See_Also">
 
+
== あわせて読もう ==
* [[htaccess_for_subdirectories]] /[[:en:htaccess_for_subdirectories|en]]
+
</div>
* [[Using_Permalinks|パーマリンクの使い方]]
+
* [[Changing File Permissions|ファイルパーミッションの変更]]
+
* [[UNIX Shell Skills]] /[[:en:UNIX Shell Skills|en]]
+
 
+
{{原文|htaccess|149417}}<!-- 22:37, 2 February 2015‎ Jdgrimes  版 -->
+
 
+
{{Stub}}
+
{{NeedTrans}}
+
  
 +
* [[htaccess_for_subdirectories]]/[[:en:htaccess_for_subdirectories|en]]
 +
* [[Using_Permalinks|パーマリンクの使い方]]/[[:en:Using_Permalinks|en]]
 +
* [[Changing File Permissions|ファイルパーミッションの変更]]/[[:en:Changing File Permissions|en]]
 +
* [[UNIX Shell Skills]]/[[:en:UNIX Shell Skills|en]]
  
 +
{{原文|htaccess|149417}} <!-- 22:37, 2 February 2015 Jdgrimes 版 -->
  
 
[[Category:WordPress について]]
 
[[Category:WordPress について]]
374行目: 405行目:
 
[[Category:上級トピック]]
 
[[Category:上級トピック]]
 
[[Category:セキュリティ]]
 
[[Category:セキュリティ]]
 +
 +
[[en:htaccess]]

2015年6月6日 (土) 13:39時点における版

この項目「htaccess」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。

.htaccess は、Apache が設定変更をディレクトリ毎に管理するための分散型の設定ファイルです。

WordPress は、このファイルを利用して、Aapche がルートディレクトリやサブディレクトリからファイルをどのように取り出すかを制御します。最大の用途として、WordPress はカスタムパーマリンクを実現するために、このファイルを変更します。

この文書は、おかしくなった .htaccess ファイルの復元に使えるかもしれません(例えばプラグインの誤動作)。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

マルチサイト

WordPress 3.5 以降

WordPress 3.5 以降でマルチサイトを有効にするなら、下記のいずれかを使います。

サブフォルダー方式の例

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

サブドメイン方式の例

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]


WordPress 3.4 以前

もともと WordPress 3.4 以前をインストールしていた時にマルチサイトを有効にした場合、下記のいずれかを使う必要があります:

サブフォルダー方式の例

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
# END WordPress

サブドメイン方式の例

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# uploaded files
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule . index.php [L]
# END WordPress


WordPress MU

最初は WordPress MU (WPMU) を使っていて、新しいバージョンの WordPress マルチサイトへ移行した場合は、.htaccess のルールがもっと複雑です:

サブフォルダー方式の例

RewriteEngine On
RewriteBase /

# BEGIN WordPress
#uploaded files
RewriteRule ^(.*/)?files/$ index.php [L]
RewriteCond %{REQUEST_URI} !.*wp-content/plugins.*
RewriteRule ^(.*/)?files/(.*) wp-includes/ms-files.php?file=$2 [L]

# add a trailing slash to /wp-admin
RewriteCond %{REQUEST_URI} ^.*/wp-admin$
RewriteRule ^(.+)$ $1/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . - [L]
RewriteRule  ^([_0-9a-zA-Z-]+/)?(wp-.*) $2 [L]
RewriteRule  ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
# END WordPress


一般的な例

オプション

前に + を付けたオプションは、現在有効なオプションへ追加されます。前に - を付けたオプションは現在有効なオプションから削除されます。

Options ディレクティブ の有効な値は、以下を任意に組み合わせたものです:

None 
すべてのオプションを無効にする。
All 
MultiViews を除くすべてのオプションを有効にする。これがデフォルト。
ExecCGI 
mod_cgi による CGI スクリプトの実行を許可する。
FollowSymLinks 
サーバが、このディレクトリ内でシンボリックリンクをたどれるようにする。
Includes 
mod_include が提供する SSI (Server-side includes) を有効にする。
IncludesNOEXEC 
SSI を有効にするが、#exec cmd<code> と <code>#exec cgi は無効にする。
Indexes 
もし、URL がディレクトリにマップするリクエストであって、かつ DirectoryIndex で指定したファイルが無ければ、ディレクトリ内の一覧を整形して返す。
MultiViews 
mod_negotiation による コンテントネゴシエーション された "MultiViews" を許可する。
SymLinksIfOwnerMatch 
シンボリックリンクの参照先とシンボリックリンク自体の所有ユーザ ID が同じ場合のみ、シンボリックリンクをたどる。

次の例はすべてのオプションを無効にした上で、FollowSymLinks だけを有効にします。これは mod_rewrite に必要な設定です。

Options None
Options FollowSymLinks


DirectoryIndex

DirectoryIndex ディレクティブは、ディレクトリ自体がリクエストされた時に Apache が探すファイルを指定します。

複数の URL を指定できます。その場合、最初に見つかったファイルが使用されます。

DirectoryIndex index.php index.html /index.php


DefaultLanguage

DefaultLanguage ディレクティブは、明示的な言語タグが指定されていないファイルについて使用する、デフォルトの言語を指定します。

DefaultLanguage en


デフォルトの文字セット

HTTP ヘッダーに含めて送信されるデフォルトの文字エンコーディングを指定します。Setting charset information in .htaccess を見てください。

AddDefaultCharset UTF-8

特定のファイルタイプに文字セットを指定する

AddType 'text/html; charset=UTF-8' .html

特定のファイルについてセットする

<Files "example.html">
AddCharset UTF-8 .html
</Files>


ServerSignature

ServerSignature ディレクティブは、サーバが生成するドキュメントの末尾に付けるフッターの設定を行います。サーバのバージョンと仮想ホスト名を含む 1 行を、サーバが生成するドキュメント(エラーメッセージ、FTP のディレクトリリスト、mod_status や mod_info の出力など)へ追加できます。

On 
サーバのバージョン、稼動中の仮想ホストの ServerName が書かれた 1 行を追加
Off 
フッターをつけない
Email 
参照されたドキュメントの ServerAdmin を指す "mailto:" を追加
SetEnv SERVER_ADMIN admin@site.com
ServerSignature Email


ファイルをダウンロードさせる

下記の例は、指定した拡張子を持つファイルがリクエストされた場合にブラウザーに表示するのではなく、「名前をつけて保存」などのダイアログでクライアントがダウンロードできるようにします。

AddType application/octet-stream .avi .mpg .mov .pdf .xls .mp4


HTTP 圧縮

AddOutputFilter ディレクティブは、ファイル名の拡張子にフィルターを対応させます。フィルターは、クライアントへ送られる前に応答内容を処理します。これは、ほかのところで定義されたフィルター(SetOutputFilter と AddOutputFilterByType を含む)に加えて実行されます。マッピングは、実施済みのマッピングにマージされます。同じ拡張子についてすでにマッピングがあると、それを上書きします。

これも見てください: https://developers.google.com/speed/docs/insights/EnableCompression

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

特定のファイルを圧縮する

<FilesMatch "\.(js|css|txt|xml)$">
SetOutputFilter DEFLATE
</FilesMatch>


カスタム HTTP ヘッダーを送信

Header ディレクティブは、すべてのリクエストまたは特定のファイルについて、追加の HTTP ヘッダーを送信します。サイトの HTTP ヘッダーは次のようなツールで見ることができます: Firebug, Chrome Dev Tools, Wireshark または オンラインツール

Header set X-Pingback "http://www.askapache.com/xmlrpc.php"
Header set Content-Language "en-US"


HTTP ヘッダーを外す

HTTP ヘッダーを外します。always を指定すると、ヘッダー削除を強力に行います。

Header unset Pragma
Header always unset WP-Super-Cache
Header always unset X-Pingback


ログインのパスワード保護

これは wp-login.php ファイルを保護するのにとても便利です。パスワード生成に htpasswd generator を利用できます。

Basic 認証

<Files wp-login.php>
AuthType Basic
AuthName "Password Protected"
AuthUserFile /full/path/to/.htpasswd
Require valid-user
Satisfy All
</Files>

Digest 認証

<Files wp-login.php>
AuthType Digest
AuthName "Password Protected"
AuthDigestDomain /wp-login.php https://www.askapache.com/wp-login.php
AuthUserFile /full/path/to/.htpasswd
Require valid-user
Satisfy All
</Files>


IP アドレス制限

特定の IP アドレスだけにアクセスを許可する方法です。

ErrorDocument 401 default
ErrorDocument 403 default

<Files wp-login.php>
Order deny,allow
Deny from all
Allow from 198.101.159.98 localhost
</Files>


機密ファイルを保護

この例は、wp-config ファイル、error_log、php.ini および htaccess/htpasswd ファイルへの Web アクセスを拒否します。

<FilesMatch "^.*(error_log|wp-config\.php|php.ini|\.[hH][tT][aApP].*)$">
Order deny,allow
Deny from all
</FilesMatch>


SSL を要求する

この例は、SSL を強制し、正式なホスト名を要求します。これらの条件を満たさなければ SSL バージョンへリダイレクトします。/wp-admin/.htaccess の中で役立ちます。

SSLOptions +StrictRequire
SSLRequireSSL
SSLRequire %{HTTP_HOST} eq "www.wordpress.com"
ErrorDocument 403 https://www.wordpress.com


外部リソース


あわせて読もう

最新英語版: WordPress Codex » htaccess最新版との差分