2009-08-14 10 views
2

は現在、これは私がテンプレートをレンダリングし、それにURLを与える指標から、私の.htaccessので奇妙なhtaccessの質問

RewriteEngine on 
#rewrite the url's 
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA] 

です。

通常ページが、この www.whatever.com/?url=test/page

のようになります。しかし、リライトして、それはそう www.whatever.com/test/page

を行きます質問は{

私はこれに影響を受けないサイトの管理セクションを持っています。 したがって、/ adminはフォルダツリーの管理フォルダにアクセスする必要があります。ヘルプ

-wes

答えて

2

これを行うための最善の方法について おかげではなく、ファイルシステム上のURLの実際のファイルとディレクトリのを再作成することです。

RewriteCond %{REQUEST_FILENAME} !-s [OR] 
RewriteCond %{REQUEST_FILENAME} !-l [OR] 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA] 

を、これらが意味する、それぞれ、唯一れるURL書き換え:これはあなたのルールにカップルの書き換え条件を追加することによって達成することができません(> 0サイズの)実際のファイルではなく、シンボリックリンクを、そしてディレクトリではありません。

また、あなたは自分のルールは、あなたのadminディレクトリと一致していないことを確認できます。それはすべての静的ファイルを妨げることはありませんよう

RewriteCond %{REQUEST_URI} !^/admin 
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA] 

最初の例では、しかし、これまでで最も柔軟性があり、画像などのような画像である。