Перенаправление формы IIS с web.config на PHP - PullRequest
1 голос
/ 11 июля 2011

Я написал этот файл для перенаправления, и я не понимаю, почему шестое перенаправление не работает. все остальные работают.

Я действительно новичок в IIS и ASP (и намереваюсь так себя вести :)), но мне нужно кое-что прояснить, чтобы я мог двигаться дальше.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="r1">
                    <match url="contact.aspx"/>
                    <action type="Redirect" redirectType="Permanent" url="http://www.doctornestor.co.il/contact/"/>
                </rule>
                <rule name="r2">
                    <match url="send2friend.aspx"/>
                    <action type="Redirect" redirectType="Permanent" url="http://www.doctornestor.co.il/contact/"/>
                </rule>
                <rule name="r3">
                    <match url="admin/login.aspx"/>
                    <action type="Redirect" redirectType="Permanent" url="http://www.doctornestor.co.il/wp-admin/"/>
                </rule>
                <rule name="r4">
                    <match url="members-club/join_member.aspx"/>
                    <action type="Redirect" redirectType="Permanent" url="http://www.doctornestor.co.il/newsletter/"/>
                </rule>
                <rule name="r5">
                    <match url="articles/dynamic-web-archive.aspx"/>
                    <action type="Redirect" redirectType="Permanent" url="http://www.doctornestor.co.il/blog/articles-and-newsposts/"/>
                </rule>
                <rule name="r6">
                    <match url="articles/dynamic-web-articles.aspx?page_id=55&amp;parent_id=0&amp;pgnm=%D7%97%D7%92%D7%99%D7%9D"/>
                    <action type="Redirect" redirectType="Permanent" url="http://www.doctornestor.co.il/blog/%D7%93%D7%99%D7%90%D7%98%D7%94-%D7%91%D7%97%D7%92%D7%99%D7%9D/"/>
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

1 Ответ

1 голос
/ 17 июля 2011

Ваше последнее правило (r6) недействительно.Шаблон URL НЕ МОЖЕТ включать строку запроса.Строка запроса должна сопоставляться отдельно через условия.

Вот правильное правило:

<rule name="r6" stopProcessing="true">
    <match url="^articles/dynamic-web-articles\.aspx$" />
    <conditions>
        <add input="{QUERY_STRING}" pattern="page_id=55&amp;parent_id=0&amp;pgnm=%D7%97%D7%92%D7%99%D7%9D" />
    </conditions>
    <action type="Redirect" redirectType="Permanent" url="http://www.doctornestor.co.il/blog/%D7%93%D7%99%D7%90%D7%98%D7%94-%D7%91%D7%97%D7%92%D7%99%D7%9D/" />
</rule>
...