Как я делаю маршрутизацию в WebForms для CMS? - PullRequest
1 голос
/ 08 декабря 2011

Я знаю, что вы можете создавать маршруты в веб-формах asp.net, но как мне создать такой, который обрабатывает все мои страницы, например mydomain.com/aboutus?

Я слышал о пользовательских обработчиках iroute, но могукто-то на самом деле показывает мне пример?

Может кто-нибудь, пожалуйста, пришлите мне пример на C #, как я поступил бы по этому поводу?У меня есть файл с именем page.aspx, который будет обрабатывать все запросы к CMS.Я думаю, что мне нужен обработчик root.

Ответы [ 2 ]

0 голосов
/ 12 декабря 2011

URL Rewrite в IIS 7 и IIS 7.5 делает это очень хорошо. Сначала необходимо установить перезапись URL-адресов в IIS с помощью установщика веб-платформы. После этого вы должны поместить это в ваш файл web.config.

<system.webServer>
    <rewrite>
        <rules>
            <rule name="admin" stopprocessing="true">
                <match url="^admin/(.+)$" />
                <action type="Rewrite" url="/admin/{R:1}.aspx" />
            </rule>
            <rule name="pagehandler">
                <match url="^(.*)$" />
                <action type="Rewrite" url="/pagehandler.aspx?page={R:1}" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

Вы можете разместить больше страниц, которые не изменяются динамически через CMS, над правилом "обработчик страниц". /Pagehandler.aspx будет принимать идентификатор страницы с параметром и динамически обслуживать его содержимое. Это ваша часть, чтобы выработать.

0 голосов
/ 08 декабря 2011

Один из способов справиться с этим - переписать - почти так же, как Wordpress, ExpressionEngine и многие другие CMS.

Вы можете перезаписать запросы в файл page.aspx с запрошенным 'страница 'является параметром и обрабатывается по мере необходимости ...

эквивалент mod_rewrite для IIS 7.0 содержит много информации о модулях перезаписи для IIS, а затем вы можете исследовать любое количество открытыхисходные решения, использующие этот метод для «красивых» или «дружественных к SEO» URL

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...