2012-03-31 20 views
0

私はこれを動作させるのが難しいです。たぶん誰かが私を助けることができます。htaccess mod_rewrite RewriteRule

ユーザーは、サーバーが

domain.com/folder/images/に書き換える必要があります

domain.com/folder/images/1.png

を開いた場合image.php?file = 1.png

いくつかの書き換えが必要なのでeサイト上lswhereを、私はこの1

にdomain.com/folder/images/

RewriteEngine on 
RewriteRule ^([\.\-_0-9A-Za-z]+)$ image.php?file=$1 [L] 

が、これ何とかセットを含む

のための.htaccessファイルを置く必要があると思いました

$ 1 = image.php

実際のファイル名ではなく

となります。私は

RewriteEngine on 
RewriteRule ^([\-_0-9A-Za-z]+)$ image.php?file=$1 [L] 

を使用した場合、リダイレクトは唯一私がdomain.comのルートに1つの.htaccesファイルを複数のフォルダの動作を得ることができる場合、それは次のようになり、それ

期間なしで文字列のために働きますさらに良い。ああ、btw、ファイルの拡張子はjpgまたはpngのみ可能です。それを正規表現に含めることはできますか? 大歓迎です!

答えて

0

あなたは大文字小文字を区別しないURLの

RewriteRule ^folder/images/([\.\-_0-9a-z]+)$ folder/images/image.php?file=$1 [L,N] 

Nを(あなたのバーチャルホストのconfファイルまたはより良いとAllowOverrideのを無効にし、htaccessファイルの使用を無効にする)ルートのhtaccessでこれを置くことができます。

+0

早速お返事ありがとうございます!それは正しいファイルを開きますが、私が$ _GETで読んだ値はimage.phpなので、なぜそれは分かりません。ファイルの拡張子としてpngやjpgもチェックする方法はありますか? – danielheinrich