2013-06-02 7 views
5

私はすべてのwww.site.com/hello to www.site.com/index.php?p=hello を書き換えしようとしていると、それは(.htaccessで)次のコードで動作します:のRewriteCond

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]*)/?$ /index.php?p=$1 

しかし、私はそうwww.site.com/?p=hello作業古いリンクを維持したいwww.site.com/?p=hello

滞在します

私は、次のコードを試してみたが、それは

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_URI} !(\?p=) 
RewriteRule ^([^/]*)/?$ /index.php?p=$1 

答えて

5

Iが動作しません。答えが見つかりました。

GETパラメータを取得しようとしました。適切な使用方法はQUERY STRINGとなります。

RewriteCond %{QUERY_STRING} !(p=.*)$ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]*)/?$ /index.php?p=$1