アプリ版:「スタンプのみでお礼する」機能のリリースについて

mod_rewriteが一部だけ効きません。

CORESERVERからKAGOYAサーバーにサイトを移したのですが、
mod_rewriteが一部効きません。

運営側に尋ねても問題ないとしか回答が返ってきませんでしたので、困っています。

-----------------------------------------------------------------------------
【.htaccessの記述】

php_flag magic_quotes_gpc off

RewriteEngine On

(1)RewriteRule ^exp/txt/([0-9]+)/$ exp/index.php?nov=$1&p=0 [L]
(2)RewriteRule ^exp/all/$ exp/index.php?list=all [L]

-----------------------------------------------------------------------------

上手くいかないのは(1)の記述です。

「ドメイン名/exp/txt/001/」に繋いだら、
「exp」ディレクトリのindex.phpに([0-9]+)の値を$_GET['nov']に渡す。

という処理にしたいのですが、実際に繋いでみると、
下記エラーがサーバーに出力されました。
******************************************************************************
File does not exist: /home/○○○○/public_html/ドメイン名/exp/txt/001.txt/
******************************************************************************

CORESERVERでは正常に動作していたのに、なぜKAGOYAの方では
「~/exp/txt/001.txt/」となるのかが分かりません。
(実際に、txtディレクトリには001.txtというファイルは存在しています)

しかし、(2)のmod_rewriteは正常に動作します。
「ドメイン名/exp/all/」に繋いだら、
「exp」ディレクトリのindex.phpにallという値を$_GET['list']に渡す。

どなたかお知恵を貸してください。

A 回答 (2件)

それらの行って、 (2) (1) の順に書かれてませんか?



[L] は、「この行がLast」 という意味なので、それ以後 RewriteRule が書かれていても無視してしまう気がします。

両方の行から、 [L] を削ってみてはどうでしょうか。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

(1)と(2)は記述している順番で記述しています。

[L]にはそういう意味があったのですか…知らなかったです。
削除してみましたが変化なしでした。

お礼日時:2011/03/25 22:44

MultiViewsが動作している可能性が高い。



無効にするには.htaccessに
Options -MultiViews
を追記。

参考URL:http://webings.net/htaccess/multiviews/
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!