ウェブ、ショウジン

XAMPPでmod_rewriteしたいのに500エラー

2009-4-29
Category
Server

インストールしたCodeIgniterの作業ディレクトリに配置した .htaccessファイルのせいで500エラー。はまりまくったので解決までをメモ。

.htaccessを置く

/Applications/xampp/htdocs/CodeIgniterに .htaccessを置く。が、500エラーに。(削除するとWelcome画面が表示される)

.htaccessの内容は以下の通り。

RewriteEngine on RewriteCond $1 !^(index\.php|css|user_guide|.+\.gif$|.+\.jpg$|.+\.png$|.+\.js$) RewriteRule ^(.*)$ /CodeIgniter/index.php/$1 [L]

.htaccessを有効にする(apacheの設定ファイルを編集)

.htaccessを使える状態じゃないのかと思って設定ファイルを確認。

xampp/etc/httpd.conf中のAlloOverrideをnoneからAllに変更。

<directory />
Options FollowSymLinks AllowOverride All Order deny,allow Deny from all
</directory>

こうしても500エラーは変わらず。

Apacheのエラーログ

/Applications/xampp/logs/erro_log これを開くと

[Wed Apr 29 11:01:27 2009] [alert] [client ::1] /Applications/xampp/xamppfiles/htdocs/CodeIgniter/.htaccess: RewriteEngine not allowed here

RewriteEngine not allowed here これくさい。
RewtireEngineが無効ってこと?

phpinfoで確認するとLoaded Modulesではmod_rewriteがあるんだけどな。

再度apacheの設定ファイルを編集(httpd.conf)

Options FollowSymLinksをOptions Allに変更。

<directory />
Options All AllowOverride All Order deny,allow Deny from all
</directory>

これでも駄目。LoadModule rewrite_module modules/mod_rewrite.so ってなってて、モジュール自体は読み込まれているはずなのに。

再度apacheの設定ファイルを編集

227行目にあった AllowOverride AuthConfigという記述を AllowOverride Allに変更。

apacheを再起動($ sudo /Applications/XAMPP/xamppfiles/mampp start)

やっと表示されるようになった。

http://localhost/CodeIgniter/ にアクセスすると、system/application/views/welcome_message.phpが表示される状態。

最後はこのWordPressのフォーラム記事が参考になった。(ありがとうございました)
http://ja.forums.wordpress.org/topic/1215

CodeIgniter徹底入門
CodeIgniter徹底入門
posted with amazlet at 11.02.03
河合 勝彦 鈴木 憲治 安藤 建一
翔泳社
売り上げランキング: 39317

Categories

Tag Cloud

AdMob Android Apache centos CodeIgniter EC-CUBE facebookアプリ facebookページ feed Firefox Flash google googleanalytics htaccess iPad iPhone JavaScript lamp mobile nginx ogp pear php plugin rollover rss sendmail setting smarty ssh Titanium Mobile Titanium Studio tutorial ubuntu vim VirtualBox vmware vps Windows WordPress xampp youtube さくらインターネット アクセス解析 カスタム投稿