0

IIS 6 で Web サイトを非 www から www にリダイレクトする必要があります。たとえば、URL に domain.com を入力すると、SEO 最適化のために www.domain.com にリダイレクトする必要があります。

ビデオ「http://www.youtube.com/watch?v=PYxabNrIMQ4」に従って、書き換えルールを作成しました。そして、私はそれを以下のようにしました

<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to www" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions>
<add input="{HTTP_HOST}" pattern="mydomain.com" />
</conditions>
<action type="Redirect" url="http://www.mydomain.com/{R:0}" />
</rule>
</rules>
</rewrite>

しかし、期待どおりに機能していません。解決策を見つけるのを手伝ってください。

注: 私の Visual Studio には、「要素 'system.webServer' には無効な子要素 'rewrite' があります」のような警告が表示されます。

問題ないと思います。

4

2 に答える 2

2

このビデオによると、IIS Manager UI を使用してリダイレクトできます。あなたのサイトの WWW バージョンと同じ "Location" を持つ、非 WWW バージョン用の 2 つ目のサイトがあることを確認してください。作成するときは、[ホスト ヘッダー] フィールドに非 WWW ドメインを指定してください。

作成後、サイトを右クリックして [プロパティ] に移動します。必要に応じてログを無効にし (リダイレクトするので必要ないかもしれません)、[ホーム ディレクトリ] タブに移動します。アプリケーションはリダイレクトに使用されないため、適切な [削除] ボタンをクリックしてアプリケーションを削除します。次に、[URL へのリダイレクト] ラジオ ボタンを選択します。[上で入力した正確な URL] と [このリソースの永続的なリダイレクト] にチェックを入れてください。

最後に、「リダイレクト先」フィールドに、完全な WWW URLに続けて $S$Qを入力します(つまり、 http://www.example.com $S$Q)。$S$Q は、パスを取得するために重要です。クライアントが送信する可能性のあるクエリ文字列と、ユーザーがhttp://example.com/foo/bar.htmlにアクセスすると、代わりにhttp://www.example.com/foo/bar.htmlに適切にリダイレクトされます。 http://www.example.com/だけです。[適用] と [OK] をクリックすると、リダイレクトが設定されます。

于 2013-12-12T18:51:06.263 に答える
-1

これは機能しますか?ルート web.config に追加することを忘れないでください

        <rules>
            <rule name="Redirect domain.com to www" patternSyntax="Wildcard" stopProcessing="true">
                <match url="*" />
                <conditions>
                    <add input="{HTTP_HOST}" pattern="domain.com" />
                </conditions>
                <action type="Redirect" url="http://www.domain.com/{R:0}" />
            </rule>
        </rules>
于 2013-10-30T03:36:28.243 に答える