輝く僕らの学費

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

未分類

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

大学でプログラミングの講義がはじまりました

大学2年生になりました。2年の前期は勉強が重いです。 1限登校して4限終わりってのが週に4回あってつらさ感じる。 2年生になってやっとプログラミングの授業 つまずいたところ int n = 1234; …

no image

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

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

no image

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

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

no image

情報通信応用数学 想定問題集の解答

情報通信応用数学 想定問題集の解答のまとめ

no image

VSCodeをIntelliJみたいなキーマップにできる拡張機能

5日間ぐらい、38度の熱を出し続けていたこの頃です。 来週から、アプリのサービスのところでアルバイトをすることになりました。そこでは、React Native + TypeScriptな環境なので、V …