2017-02-16 8 views
1

をスキップする方法Apacheの書き換えモジュールは、パス

特に
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !^(ampache)$ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [L] 

、私はパスがampacheで始まるようにするにしたい私は、特定のパスを書き換えスキップするApacheの書き換えモジュールを教え、現在、私は.htaccessの中に以下のコードを持っています書き直すことなく通過する。 上記のコードは、私が必要とするものを達成しません。

答えて

1

REQUEST_FILENAMEの代わりにREQUEST_URIを使用してください。REQUEST_FILENAMEは完全なファイルシステムのパスと一致します。

あなたはこのルール修正に使用できる

RewriteEngine On 

RewriteCond %{REQUEST_URI} !^/ampache(/.*)?$ [NC] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule^index.php [L] 

、さらには、この否定パターンが動作します:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule !^/?ampache(/.*)?$ index.php [L,NC] 
+0

私が欲しいものをするときのパス= ' –

+0

ampache' index.phpにリダイレクトしないことですはい、それはこのルールがやっていることです。 URIが '/ ampache'で始まる場合、上記のルールは' index.php'にルーティングされません – anubhava

+1

@anabhavaありがとうございました。 –

関連する問題