Movatterモバイル変換


[0]ホーム

URL:


コリス

サーバーの設定をカスタマイズ、よく利用する「.htaccess」の設定のまとめ

サイト構築 -制作

Post on:2012年7月24日

sponsorsr

ウェブサイトやブログの運営に役立つ、「.htaccess」の設定を紹介します。

サイトのキャプチャ

.htaccess For All

下記は各ポイントを意訳したものです。
「.htaccess」ファイルを編集する際は、必ずバックアップをとることをお勧めします。

.htaccessファイルの作成とアップロード

「.htaccess」ファイルを作成することは非常に簡単です。
テキストベースのアプリケーションを開き、ワードラップ機能をオフにしてコードを記述し、ファイルを保存します。

Windowsのメモ帳などを使用すると保存する際、ファイル名に「.txt」が加わってしまいます。

.htaccess.txt

これは特に問題ありません。
ファイルをアップロードした後、サーバー上でリネームしてください。

.htaccess

ファイルをアップロードする際は、ASCIIモードで行い、パーミッションは「644」にします。
共有サーバーなどでは「604(グループ不可)」の場合もあるので、システム管理者やサーバー会社へ確認してください。

.htaccessの使い方・有効範囲

「.htaccess」ファイルは設置されたディレクトリとその配下にある全てのディレクトリに影響を与えます。
つまり、ルートに「.htaccess」ファイルを設置した場合は、全てのフォルダに影響を与えます。

http://www.yourdomain.com/| -- directory1| -- directory2| -- directory3|    | -- directory3/childdirectory1|    | -- directory3/childdirectory2| -- .htaccess| -- index.html

「.htaccess」をルートではなく、一つ下の「directory1」に設置するとどうなるでしょうか?
この場合は「directory1」とその配下のフォルダのみに限定されます。
「directory2」「directory3」には適用されません。

http://www.yourdomain.com/| -- directory1|    | -- directory1/childdirectory1|    | -- directory1/childdirectory2|    | -- directory1/childdirectory3|    |    | -- directory1/childdirectory3/newdirectory1|    |    | -- directory1/childdirectory3/newdirectory2|    | -- .htaccess|    | -- index.html| -- directory2| -- directory3

「.htaccess」ファイルを編集する場合は、コメントを利用することを勧めます。
「#」を使用すると、その行がコメントになります。

# コメント# another comment her

.htaccessのよく使う設定のまとめ

インデックスファイルの設定

「/」で終わるアクセスの際に表示するファイル名を設定します。
通常はindex.html, index.htmです。

DirectoryIndex index.php

エラーページの設定

404のエラーページに任意のファイルを指定します。

ErrorDocument 404 error.html

他のエラー時も設定できます。

ErrorDocument 400 /400.htmlErrorDocument 401 /401.htmlErrorDocument 403 /403.htmlErrorDocument 404 /404.htmlErrorDocument 500 /500.htmlErrorDocument 502 /502.htmlErrorDocument 504 /504.html

URLからwwwを削除

ウェブサイトにwww付きでアクセスしてきてもwww無しに向け直します。
これを利用する際は、あなたのサイトでwww無しで一貫するようにしてください。

RewriteEngine OnRewriteBase /RewriteCond %{HTTP_HOST} ^www.yourdomain.com [NC]RewriteRule ^(.*)$ http://yourdomain.com/\ [L,R=301]

タイムゾーンの設定

タイムゾーンを日本時間に設定します。

SetEnv TZ JST-9

もしくは

SetEnv TZ Asia/Tokyo

ファイルへのアクセス制限

アクセス可能なファイルを設定します。
まずは、全アクセスを禁止。

order deny,allowdeny from all

続いて、特定のIPアドレスのみ禁止。

order allow,denydeny from XXX.XXX.XXX.XXXallow from all

301リダイレクト

リニューアルなどでURLが恒久的に変更した際に、旧ページのアクセスを新ページに向けます。

Redirect 301 /olddirectory/file.html http://www.yourdomain.com/newdirectory/file.html

サーバー管理者のメールアドレスの設定

サーバー管理者用のメールアドレスを設定します。

ServerSignature EMailSetEnv SERVER_ADMIN webmaster@domain.com

iPadなどのタブレットを検出して、リダイレクト

iPad, Androidのタブレットでアクセスがあった際、専用ページにリダイレクトします。

RewriteCond %{HTTP_USER_AGENT} ^.*iPad.*$RewriteRule ^(.*)$ http://yourdomain.com/folderfortablets [R=301]RewriteCond %{HTTP_USER_AGENT} ^.*Android.*$RewriteRule ^(.*)$ http://yourdomain.com/folderfortablets [R=301]

hotlinkingの防止

hotlinkingとはあなたのサイトの画像を他の誰かに勝手に利用されてしまうことで、その際に別の画像を指定して表示させます。

Options +FollowSymlinksRewriteEngine OnRewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http://(www.)?yourdomain.com/ [nc]RewriteRule .*.(gif|jpg|png)$ http://yourdomain.com/img/hotlink_f_o.png [nc]

自ドメインを含まないサイトに画像を表示させたくないだけの場合。

RewriteCond %{HTTP_REFERER} !yourdomain\.com [NC] RewriteRule \.(gif|jpg|png)$ - [F]

PDFや動画などのファイルを保存

PDFや動画などのファイルをブラウザ上で表示するのではなく、ダウンロードしてほしいファイルの拡張子を設定します。

AddType application/octet-stream .csvAddType application/octet-stream .xlsAddType application/octet-stream .docAddType application/octet-stream .aviAddType application/octet-stream .mpgAddType application/octet-stream .movAddType application/octet-stream .pdf

下記のように一行に指定することもできます。

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

URLのリライト

「content-1.html」を「content.php?id=1」にリライトします。

RewriteEngine onRewriteRule ^content-([0-9]+)\.html$ content.php?id=$1

httpsにリライト

現在のアクセスをhttpsにリライトします。

RewriteEngine OnRewriteCond %{HTTPS} !onRewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

SSIの利用

SSIが利用できるファイルの拡張子を設定します。

AddType text/html .htmlAddType text/html .shtmlAddHandler server-parsed .htmlAddHandler server-parsed .shtmlAddHandler server-parsed .htm

ディレクトリの表示

ディレクトリにindex.htmlなど表示するべきファイルが無い場合、ディレクトリのファイル一覧が表示されないようにします。

# disable directory browsingOptions All -Indexes

ディレクトリの表示を許可します。

# enable directory browsingOptions All +Indexes

文字コードの設定

特定のディレクトリで文字セットと言語を変更したい場合の設定です。

AddDefaultCharset UTF-8DefaultLanguage en-GB

特定のリファラからのアクセスをブロック

指定したウェブサイトのリファラからのアクセスを阻止します。

<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_REFERER} website1.com [NC,OR] RewriteCond %{HTTP_REFERER} website2.com [NC,OR] RewriteRule .* - [F]</ifModule>

特定のUAを持ったアクセスをブロック

指定したロボットやスパイダーのアクセスを阻止します。

<IfModule mod_rewrite.c>SetEnvIfNoCase ^User-Agent$ .*(bot1|bot2|bot3|bot4|bot5|bot6|) HTTP_SAFE_BADBOTSetEnvIfNoCase ^User-Agent$ .*(bot1|bot2|bot3|bot4|bot5|bot6|) HTTP_SAFE_BADBOTDeny from env=HTTP_SAFE_BADBOT</ifModule>

特定のファイルのアクセスをブロック

拡張子を指定して、.htaccessなどのファイルのアクセスを阻止します。

<Files privatefile.jpg> order allow,deny deny from all</Files><FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$"> Order Allow,Deny Deny from all</FilesMatch>

「.htaccess」の名前の変更

「AccessFileName」を使用すると「.htaccess」の名前を変更して利用できます。
※「httpd.conf」で設定

AccessFileName ht.access

sponsors

Related Posts

top of page

  • ワードプレステンプレート

Sponsors

  • Eagle
  • ソースネクスト
  • 広告掲載募集中
coliss

Recnet Entry

Pickup Entry

Recommend

top of page

Category

Blog Info

当サイトではCookieを使用しています。引き続き当サイトを閲覧することにより、ポリシーを受け入れたものとみなされます。
©2025 coliss

[8]
ページ先頭

©2009-2025 Movatter.jp