0

私の現在htaccessのように見えます

DirectoryIndex welcome.do index.jsp default.php index.wml homepage.php default.htm default.html index.php index.php4 index.php3 index.htm index.html index.shtml default_new_vhost.html

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

RedirectPermanent /content.asp?AUID=01 /content/
...

リダイレクトが機能しません (Wordpress の 404 ページしか表示されません)。その理由は、URL の get パラメーターです。ここに投稿された回答を試しました。例えば

RewriteCond %{REQUEST_URI} ^/content.asp$
RewriteCond %{QUERY_STRING} ^AUID=01$
RewriteRule ^.*$ http://www.yourdomain.com/content? [L,R=301]

500 エラーが発生するか、Wordpress の 404 ページが表示されます。これを行う正しい方法は何ですか?フォームに多くのエントリがあるよりも

RedirectPermanent /content.asp?pCategory=&pCountry=1&AUID=01 /content/

これは間違っていますが、これを htaccess に入れる効率的な方法を探しています。代わりにこのようなものを使用できますか?

RewriteCond %{REQUEST_URI} ^/content.asp$
RewriteCond %{QUERY_STRING} ^pCategory=([0-9]+)&pCountry=([0-6]+)$
RewriteRule ^.*$ http://www.yourdomain.com/content? [L,R=301]
4

2 に答える 2

0

これを行うだけです(私のサイトから)

rewriteCond %{QUERY_STRING} ^id=([0-9]+)$
rewriterule ^news_details.asp$ news/index.php?old_id=%1

^id を任意のパラメーターに置き換え、単純にユーザー %1、%2 を書き換えでそれらにアクセスすると、あなたのものは次のようになります。

rewriteCond %{QUERY_STRING} ^pCategory=([0-9]+)&pCountry=([0-6]+)$
rewriteRule ^content.asp$ /content/?category=%1&country=%2
于 2012-09-04T19:50:00.550 に答える
0

私は次の解決策になりました:

DirecotryIndex welcome.do index.jsp ...

RewriteCond %{REQUEST_URI} ^/content.asp$
RewriteCond %{QUERY_STRING} ^AUID=01$ [OR]
RewriteCond %{QUERY_STRING} ^pCategory=&pCountry=1&AUID=01$ [OR]
RewriteCond %{QUERY_STRING} ^pCategory=&pCountry=8&AUID=01$
RewriteRule ^.*$ /content? [L,R=301]

RedirectPermanent /italiano/index.asp /it/

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

問題は、Wordpress コードの前ではなく後にコードを配置したことです。htaccess のエンコーディングを BOM なしの UTF-8 に変更すると、ウムラウトを使用することもできます。問題なく GET パラメータを使用して URL にリダイレクトすることもできます。

于 2012-09-05T08:37:00.730 に答える