第2章 URL形式を変更しよう

URL形式を変更しよう

前章までの内容はこちらにアップロードしてあります。開発環境が整っている人はxamppのhtdocs以下のダウンロードしたファイルをそのまま貼り付けていただければ、たぶん動作するはずです。

こ の章ではyiiframeworkのURLの形式をPATHINFO形式に変更します。とりあえず何をやってるか分からなくてもよいので、とりあえず説明 書きに従って手を動かしてください。よく分からない人は、これをやることで、URLの形式が綺麗になると思ってくれれば大丈夫です。このURL形式の方 が、説明もしやすいので、今のうちから早速変更します。

まずはC:\xampp\htdocs\protected\configを開いてください。すると中にmain.phpがあるのでそいつを開いてください。

protecte/config/main.php
protecte/config/main.php

ポイント:なお大事な設定ファイルはprotected/config/main.phpだと覚えておいてください。yiiframeworkはファイルがたくさんあってややこしいですが頑張りましょう。

39行目あたりをコメントアウトしてください。以下のような結果になるはずです。

// uncomment the following to enable URLs in path-format
		'urlManager'=>array(
			'urlFormat'=>'path',
			'rules'=>array(
				'<controller:\w+>/<id:\d+>'=>'/view',
				'<controller:\w+>/<action:\w+>/<id:\d+>'=>'/',
				'<controller:\w+>/<action:\w+>'=>'/',
			),
		),

この状態では、yiiのアプリケーションのURLの形式がhttp://localhost/index.php/~~/~~となってしまい、index.phpが少し邪魔な感じがします。そこでhtdocsの直下に以下の内容の.htaccessを設置してください。念のためこちらにもファイルを置いておきます。

RewriteEngine on

# ディレクトリまたはファイルが存在する場合は、それを直接に使う
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# それ以外は index.php に転送する
RewriteRule . index.php

そうすることで、今まで

http://localhost/index.php/site/login

だったアドレスも

http://localhost/site/login

というURLでアクセスできるようになりました。

最後のこの章の完成品はこちらにアップロードしておくので、必要に応じてダウンロードしてください。