Hypertext Access fileハイパーテキストアクセスファイルの使い方


備考

.htaccessファイルは、Apacheがサイトとやりとりする方法を制御します。 .htaccessファイルがドメインのディレクトリ(通常はルートディレクトリ)に置かれると、そのファイルはApacheによって検出され、実行されます。

.htaccessファイルは一般的に次の目的で使用されます:

  • 特定のIPをサイトに拒否する
  • あなたのサイトを保護するパスワード
  • URLの書き換え
  • カスタムエラーページ
  • ファイルの圧縮とキャッシュ
  • 一般的なセキュリティとハック防止

バージョン

さまざまなApacheのリリース

バージョン現行版リリース
1.3 1.3.42 1998年6月6日
2.0 2.0.65 2002-04-06
2.2 2.2.31 2005-12-01
2.4 2.4.23 2012-02-21

カスタムエラーページ

.htaccess を使用すると、ユーザーがエラーサーバーの応答コードを持つページで終わったときに、黒いテクノバブルで白いエラーページが表示されるのではなく、Webサイトのテーマに一致するカスタムエラーページを設定できます。エラーページは、(ただしこれに限定されない).html、.php、.asp、.txt、.xmlなどのブラウザ解析可能なファイルにすることができます。

ほぼすべての一般的なエラー応答コードの例:

#Client Errors

ErrorDocument 400 /mycool400page.html    # Bad Request
ErrorDocument 401 /mycool401page.html    # Unauthorized
ErrorDocument 402 /mycool402page.html    # Payment Required
ErrorDocument 403 /mycool403page.html    # Forbidden
ErrorDocument 404 /mycool404page.html    # Page Not Found

#Server Errors

ErrorDocument 500 /mycool500page.html    # Internal Server Error
ErrorDocument 501 /mycool501page.html    # Not Implemented
ErrorDocument 502 /mycool502page.html    # Bad Gateway
ErrorDocument 503 /mycool503page.html    # Service Unavailable
ErrorDocument 504 /mycool504page.html    # Gateway Timeout
ErrorDocument 505 /mycool505page.html    # Internal Server Error
 

これらのエラーはすべてのブラウザで発生する可能性があるため、最も一般的なエラー応答(400,403,404、および500)のエラードキュメントを含めることは、常に良い習慣です。

500エラーは、送信するページの読み込み中に何かが失敗した場合に発生する最も悪名高いエラーの1つです。最も一般的には、PHP、ASPなどのHTMLプリプロセッサからのサーバーのhtml前処理エラーです。テスト中に、500ページを設定して、発生したエラーを表示することをお勧めします。

500エラーページを有効にして特定のエラーを書き込むには、使用しているhtmlプリプロセッサに基づいて次のいずれかを参照してください: php asp

サーバーのタイムゾーンを設定する

世界中に多くのタイムゾーンがありますので、サーバーが正しいサーバーに設定されていることを確認することが重要です。これは.htaccess を使用して行います。

SetEnv TZ America/Indianapolis
 

可能な他のタイムゾーンのいくつかの例:

America/Los_Angeles
America/Los_Angeles - Pacific Time 
Pacific/Honolulu - Hawaii
 

選択したタイムゾーンの前でSetEnv を使用していることを確認してください。

.htaccessの設定

.htaccess ファイル(または「分散設定ファイル」)は、ディレクトリ単位で構成を変更する方法を提供します。 1つまたは複数の構成指示語を含むファイルは、特定の文書ディレクトリに置かれ、指示語は、そのディレクトリおよびそのすべてのサブディレクトリに適用されます。

.htaccessファイルは、Apacheがサイトとやりとりする方法を制御します。これは、コア・サーバー構成ファイルを変更することなく、要求を変更し、デフォルトの動作を変更するために使用されます。

.htaccess 設定は、メモ帳を開いて.htaccess として保存するのと同じくらい簡単です。通常、このファイルはWebサイトのファイルのroot ディレクトリに置かれますが、複数の異なるディレクトリの下で使用できます。これは、特定のディレクトリをパスワードで保護する場合に特に便利です。

.htaccessを有効にする

場合によっては、 httpd.conf ファイルまたは.htacces ファイル内に1つのエラーがあっても、一時的にサーバーが壊れてしまい、 500 - Internal Server Errorページが表示されることがあります。したがって、変更を加える前に必ずhttpd.conf.htaccess ファイルのバックアップをとるようにしてください。

<Directory "/var/www">
    AllowOverride All
</Directory>
 

.htaccess ファイルは通常、デフォルトで有効になっています。これは、 httpd.conf ファイルのAllowOverride ディレクティブによって制御されます。このディレクティブは、 <Directory> セクション内にのみ置くことができます。

横にAll のみ、特定のコンテキストのコンフィギュレーションを制限する他の多数の値があります。それらの一部は次のとおりです。

  • なし - .htaccess 完全に無効にします。
  • AuthConfig - 基本認証を扱う認証指令など。
  • FileInfo - ヘッダー、エラードキュメント、Cookie、URL書き換えなどの設定を処理するディレクティブ。
  • インデックス - デフォルトのディレクトリ一覧のカスタマイズ。
  • 制限 - さまざまな方法でページへのアクセスを制御します。
  • オプション - インデックスへの同様のアクセスですが、ExecCGI、FollowSymLinks、Includesなどのさらに多くの値が含まれます。
# Only allow .htaccess files to override Authorization and Indexes
AllowOverride AuthConfig Indexes