2011-12-29 7 views
0

基本的に私の書き換え規則はうまくいきますが、ファイルやフォルダにスペースを入れて作業しても機能しません。例えばMod_Rewriteを使用したファイル名とフォルダ名の空白は、404または500のエラーを返します。

RewriteRule !^test/ test%{REQUEST_URI} [L] 
RewriteCond %{THE_REQUEST} ^GET\ /test/ 
RewriteRule ^test/(.*) /$1 [L,R=301] 

上記のルールは完全に正常に動作します。しかし、ファイルやフォルダにスペースがある場合は、次のコードを使用しています。

RewriteRule !^test%20folder/ test%20folder%{REQUEST_URI} [L] 
RewriteCond %{THE_REQUEST} ^GET\ /test%20folder/ 
RewriteRule ^test%20folder/(.*) /$1 [L,R=301] 

これはエラーを返します。 %20を削除しようとしましたが、空白があり、エラーも返されます。

誰もがこの問題を回避する方法を知っていますか?

答えて

1

完全な文字列を知っている場合は、\ s(正規表現の空白)を使用して一致させ、One \ Word \ And \ Anotherを使用します。あなたのケースでは

^test\ folder/(.*) 
関連する問題