輝く僕らの学費

外の空気が大好き、そこそこ忙しい理系の男子大学生のぶちおです。

未分類

htaccessでwwwなしで統一しつつ、index.phpも省略する書き方

投稿日:

Codeigniterで作っているWebアプリで、www.ドメイン名でのアクセスをwwwなしのドメイン名へリダイレクトしつつ、index.phpを省略する.htaccessの書き方。

とりあえず、このhtaccess書けば実現できる。

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.domain\.com [NC]

# wwwなしへリダイレクト ここでwww.を加えればwwwありに統一できる。
RewriteRule ^(.*)$ https://domain.com/$1 [L,R=301]
# index.phpを省略する部分
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

Codeigniterのあれこれ

CodeigniterでWebアプリを構築すると、次のようにそれぞれのコントローラを変えて動かすことができる。

http://domain/index.php/{コントローラ名}

また、htaccesssでこのindex.phpを省略して、次のような形で動かせるようにしておくのが一般的だ。

http://domain/{コントローラ名}

ここまでが以前から設定していた部分で、セッション周りの問題で、気づいたらwwwついてて違うセッションになってるじゃんという状況を回避するために、どちらかに統一したかった。

wwwあり/なしの統一は調べればたくさん出てくる。

単純に今まで書いていたやつの最後に、そのwww統一の記述を加えたけど、思い通りに動かなかった。

日本語で調べてもいまいち欲しい情報が得られなかったけど、またStack Overflowに先人がいたので参考にさせてもらいました。

記述する順番の問題だったようです。

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

freeeのインターンの面接に行ってきました

IT未経験でプログラミングは趣味程度のスキルの大学生です。 やっぱり僕は、IT業界にすごい魅力を感じて、好きで、ワクワクできる分野なので、ITベンチャーの長期インターンを探し始めました。

no image

GCE(CentOS7)でLet’s Encryptを設定してhttpsを使用できるようにする

GCEの環境整備を進めています。今回は、ドメインの設定とLet’s Encryptを利用した無料httpsの設定です。

no image

春の京都、ロングドライブ2018

若いのでお金をかけないで京都へ行くよ。 お金のこと 旅行仲間になるべくお金で負担を感じさせたくない。一人の負担を抑えたいから4人集めたい。 交通費 宿泊費 ご飯 関東から京都って、遠いのだろうか 距離 …

no image

スノボをカッティングシートでステッカーチューン

カッティングシートでステッカーを自作してスノーボードをカスタムしたときの作業の手順

no image

GCEにPHP7.1+MySQLをインストール

Google Cloud PlatformのCE無料枠でPHP7の実行環境とMySQLを使えるようにする。