Mono Works

チラシのすきま

.htaccessでサイトアクセスの制御

寒くなったり暑くなったり体温調節の難しい今日この頃。風邪などひかれませんようお気を付け下さい@ぽぽろんちでございます。

サイトの引越しにともない、URLの構成も変えましたので、301リダイレクトやその他アクセス制御に関する諸々を.htaccessに記載しました。

301リダイレクト

サイト構成を変更したので、SEO的に旧URLから新URLへのリダイレクトをセット。記事をセクションごとにフォルダ分けしたので、下記のように記述。Wordpress使い始めにデフォルトで日本語URLになっていたリンクもリダイレクトさせているので、.htaccessはUTF-8、BOMなし、LFのフォーマットで保存してます。

RewriteEngine On
RewriteBase /
RewriteRule ^blog01/(.*)$ http://monoworks.co.jp/mobile/blog01/$1 [R,L]
RewriteRule ^blog02/(.*)$ http://monoworks.co.jp/mobile/blog02/$1 [R,L]
RewriteRule ^ブログ01/(.*)$ http://monoworks.co.jp/mobile/blog03/$1 [R,L]
RewriteRule ^ブログ02/(.*)$ http://monoworks.co.jp/mobile/blog04/$1 [R,L]
…

あと一部でhttp://monoworks.co.jp/?p=1234という形式になっていたこともあり、そのリンクについては下記形式でリダイレクト。

RewriteCond %{QUERY_STRING} ^p=1234
RewriteRule ^$ /dev/blog00/? [R,L]
…

index.html等が存在しない場合にファイル一覧を表示しない

index.htmlなどのファイルを置いていないフォルダ(例 /hogehoge)にアクセスした場合、さくらインターネットでは、下記のようなファイル一覧が表示されてしまいます。

Index of /hogehoge

これを防ぐための方法が、下記ページに記載されてます。

「 index.html( index.htm ) 」が存在しない場合、ファイル一覧を表示しない設定にする – さくらのサポート情報

もしくは、.htaccessに下記を手動で追加。

DirectoryIndex index.html index.cgi index.php .ht

404の時に表示するページを指定

404の時にデフォルトページではなく、独自ページ(404.html)を表示するため、.htaccessに下記を追加。

ErrorDocument 404 /404.html

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

特定ファイル(.htaccess、.txt、.log、.xml)へアクセスさせたくない場合

<Files ~ "\.(htaccess|txt|log|xml)$">
  deny from all
</Files>

www付きをwww無しへリダイレクト

SEO的な感じでwww.monoworks.co.jpmonoworks.co.jpにリダイレクト

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.monoworks\.co\.jp [NC]
RewriteRule ^(.*)$ http://monoworks.co.jp/$1 [R=301,L]

コメント

コメントなどありましたら、GitHubのディスカッションへお願いします。(書き込みには、GitHubのアカウントが必要です)
執筆者
"ぽぽろんち" @pporoch
pporoch120
Mono Worksの中の人。好きなことをつらつらと書き留めてます。
ギターを始めてから 練習動画をYouTubeにアップしてます。ご笑納ください。
"DQX@ぬここ(UD487-754)、コツメ(NO078-818)"
採用案内