2013-02-18 6 views
0

Я не знаком с этой функцией, и я нашел несколько примеров, как сделать что-то, но я не знаю, как установить этот случай:Удалить часть URL с переписыванием

Я хочу, чтобы этот адрес http://www.domain.co.uk/anything/en чтобы стать http://www.domain.co.uk/anything/

Я хочу, чтобы удалить окончательный 'ан'

Я попытался с:

^/([_0-9a-z-]+)/([_0-9a-z-]+)/en 
/{R:1}/{R:2} 

или

^http://www.domain.co.uk/([_0-9a-z-]+)/(en) 
http://www.domain.co.uk/{R:1}/ 

Но это не сработает.

ответ

2

Вы можете использовать следующее правило:

<rule name="Remove en" stopProcessing="true"> 
    <match url="^(.*)/en$" /> 
    <action type="Rewrite" url="{R:1}" /> 
</rule> 

Это будет соответствовать любому URL оканчивающегося /en и удалить эту часть.
Из вашего примера, http://www.domain.co.uk/anything/en будет переписано в http://www.domain.co.uk/anything

Если вы хотите, чтобы пользователь перенаправлены, а затем использовать следующее правило:

<rule name="Remove en" stopProcessing="true"> 
    <match url="^(.*)/en$" /> 
    <action type="Redirect" url="{R:1}" /> 
</rule> 

type="Redirect" без выбора вызывает постоянное (301).

+0

Спасибо cheesemacfly, Я следую вашим советам и этой ссылке http://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module, но я не знаю, почему не работает ... Любая идея? Еще раз спасибо –

+0

Я обновил свой ответ, дайте мне знать, если это поможет! – cheesemacfly

Смежные вопросы