サウウェブ

B'z、映画、海外ドラマ、スケボーネタバレニュースまとめ

WEB

CPIサーバーのhttpsやルートディレクトリへのリダイレクトする.htaccessの書き方・記述

PC コーディング ディスプレイ

CPIサーバーの.htaccessの書き方が特殊なので、あとで見返せるようにメモを残しておきます。

契約のプランが「ACE01_2011」か「ACE01_2015」かで少し記述が変わります。
詳しくは「.htaccess の設定方法」(CPIオンラインヘルプ)

スポンサーリンク

.htaccessの記述

Options +SymLinksIfOwnerMatch
RewriteEngine On
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://www.***.**/$1 [R,L]

RewriteEngine On
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ https://www.***.**/$1 [R=301,L] 

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html

 

はじめに

Options +SymLinksIfOwnerMatch

の記述がないとちゃんと動いてくれません。
「www.***.**」はドメインです。

なぜか「¥」マークが「バックスラッシュ」になってる。
上記の記述でうまくいかないときはその辺を見たほうがいいかもしれません。

コピペしたらちゃんとバックスラッシュになってるし、大丈夫かもしれませんが。

 

解説

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://www.***.**/$1 [R,L]

はhttpsへのリダイレクトです。

 

RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ https://www.***.**/$1 [R=301,L] 

はindex.htmlから/(ルートディレクトリ)へのリダイレクトです。

 

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html

は.htmlの拡張子を無しにします。

設置する階層は?

/html/

の直下です。
コントロールパネルで制限しているディレクトリを作成していても

/html/admin

じゃなくて、

/html/

です。

 

おまけ

wwwなしで接続があった場合にwwwありの URL にリダイレクトする記述

Options +SymLinksIfOwnerMatch
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.jp
RewriteRule (.*) http://www.example.jp/$1 [R=301,L]

詳しくは「.htaccess の設定方法」(CPIオンラインヘルプ)

-WEB