2009-05-19 9 views
3

私が取り組んでいるアプリケーション用の非常に単純なRESTfulテストリグを構築しようとしています。私は.htaccessを使用して、ロジックを処理するURLを解析するコントローラスクリプトにURLをリダイレクトします。.htaccessをRESTに使用すると301リダイレクトする

私はリダイレクト機能を持っていますが、POST/PUT/DELETEを実行するとFirebugがリクエストをテストリグに正しく伝えることができますが、301リダイレクト応答と2回目のGET応答があります。

ブラウザに301を送信せずにURLリダイレクトにhtaccessを使用するにはどうすればよいですか?

これは私が今使っているの.htaccessです:

RewriteEngine On 
RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 

答えて

4

はこのような何かを試してみてください:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

ファイルが存在するために頼まない限り、これには、画像やCSSなど(リダイレクトしますファイル)。私は頻繁にこれらのルールを使用して、私はあなたのPHPスクリプトが301

+0

グラシアスへの応答を変更していない301

チェックに遭遇したことがないしました。あなたの更新されたリライトが助けになりました。私はまた、要求を開始する不完全なクライアント側ハンドラを持っていました。今や両方を修正し、すばらしく働いています。 – Geuis

+0

ファイル名がまったく指定されていない場合、デフォルトとして "index.html"を残す方法もあれば? – donohoe

関連する問題