2017-09-27 9 views
1

私は完全に機能するIISリダイレクトルールを持っています。私は少しの成功と、ライブWebホストで使用するために.htaccess形式に変換しようとしてきました。.htaccess URLの照会パラメータを元のURLとターゲットURLにリダイレクトする

ルールの目的は、以下のようにルールのIISのWeb.config形式であるURL

http://my.web.host/network/?user=username

へのURLのすべてのアクセス

http://my.web.host/user/username/?profiletab=main

をリダイレクトします:

<rule name="bounce" patternSyntax="ECMAScript" stopProcessing="true"> 
    <match url="^user/(.*)/$" /> 
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> 
     <add input="{QUERY_STRING}" pattern="profiletab=main" /> 
     <add input="{QUERY_STRING}" pattern="um_action" negate="true" /> 
    </conditions> 
    <action type="Redirect" url="/network/?user={R:1}" appendQueryString="false" redirectType="Found" /> 
</rule> 

私がこれまで試したことは、ルール

Redirect 301 /user/(.*)/?profiletab=main /network/?user=$1

とも働いているどちらも

RewriteCond %{THE_REQUEST} ^user/(.*)/\?profiletab=main$ [NC] 
RewriteRule network/?user=%1 [R=302,L] 

のバリエーションとなっています。ですから、私は上記のリダイレクトを達成するのに必要な構文について助けていただきたいと思います。 (私は少なくとも近づいていることを願っています)

おかげさまで、皆さんよろしく!

答えて

1

あなたは.htaccessファイルにあなたの非常に最初のルールとしてこのルールを使用することができます。

RewriteEngibe On 

RewriteCond %{QUERY_STRING} (?:^|&)profiletab= [NC] 
RewriteRule ^user/([\w-]+)/?$ /network/?user=$1 [QSA,R=301,L] 
+1

はい、それは作業結果のための基礎を提供し、あなたに感謝します。あなたの助けに感謝します! –

関連する問題