0

次のように、自分のサイトへのすべてのGETリクエストのルールを作成する必要があります。

GET /articles/topic1.html?showall=1

次のように書き直されます:

GET /articles/topic1.html

Joomlaサイトに次の.htaccessファイルがあります。

RewriteEngine On

RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

########## This is the Rule I have added ################
RewriteRule ^(.*)$ /$showall=1 [R=301,L]

RewriteBase /

追加した行にコメントを追加しました。残念ながら、それは機能しません。ブラウザは、循環ループを生成したことを警告します。

それを修正する方法はありますか?ありがとうフランク

4

1 に答える 1

0

それを次のように置き換えてみてください:

RewriteCond %{QUERY_STRING} ^showall=([0-9])+$
RewriteRule ^articles/topic[0-9]*\.html /articles/topic%1.html? [L]

または、本当に の場合は、次のtopic1.htmlようにします。

RewriteCond %{QUERY_STRING} ^showall=1$
RewriteRule ^articles/topic1\.html /articles/topic1.html? [L]
于 2012-07-22T20:01:08.337 に答える