2016-10-24 20 views
1

私はこの問題を解決しました。.htaccessは部分文字列を削除しますが、クエリ文字列を保持しますが、部分文字列はルートに存在します。

A)私はこれまでこの

domain/kniha/?download_file=1619&order=wc_order_57fd45906a1f4&email=zuzana.xyz%40gmail.com&key=0cdf331935ec8ccf184fd729fb922367 

のようなリンクを変更する必要があります。

domain/?download_file=1619&order=wc_order_57fd45906a1f4&email=zuzana.xyz%40gmail.com&key=0cdf331935ec8ccf184fd729fb922367 

(すなわちkniha/部分を除去し、そのままクエリ文字列を保持する)しかし、私はdomain/kniha/にそのまま要求を維持する必要がありますこのディレクトリとして/articleが存在する

したがって - 要求がある場合domain/kniha/ do nothing - リクエストにクエリ文字列が含まれている場合、URLを変更します(ディレクトリの部分文字列を削除します)。

注:Wordpressサイト用です。

誰かが私を助けることができますか?

ありがとうございます。 リチャード

+1

**任意の**クエリ文字列がある場合、 'kniha /'を削除しますか? –

+0

はい、クエリ文字列がある場合は、 "kniha /"を削除してください。クエリ文字列がない場合、何もしない – Richard

答えて

0

あなたはこのルールを使用することができます。

RewriteEngine on 


RewriteCond %{QUERY_STRING} . 
RewriteRule ^kniha/[L,R] 

これは、クエリ文字列がURL中に存在する場合にのみ、URI /knihaをリダイレクトします。

+0

ありがとうございます。それは多くの助けとなりました。最終的なコードは次のとおりです。

 # change for /substring/  RewriteEngine On RewriteCond %{REQUEST_URI} ^/kniha RewriteCond %{QUERY_STRING} . RewriteRule ^kniha/[L,R]  # END redirect'
Richard

関連する問題