Вот правило для IIS7, которое будет работать для вашего первого требования.RedirectType является постоянным (301).
<rewrite>
<rules>
<rule name="test" stopProcessing="true">
<match url="^www\.(\w+\.com)$" />
<action type="Redirect" url="http://{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
Ваше второе требование потребует следующих правил:
<rewrite>
<rules>
<rule name="RedirectUserFriendlyURL" stopProcessing="true">
<match url="^domain\.com/test\.html$" />
<conditions>
<add input="{REQUEST_METHOD}" negate="true" pattern="^POST$" />
</conditions>
<action type="Redirect" url="domain.com/test" appendQueryString="false" redirectType="Permanent" />
</rule>
<rule name="RewriteUserFriendlyURL" stopProcessing="true">
<match url="^domain\.com/test$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="domain.com/test.html" />
</rule>
</rules>
</rewrite>
Эти правила переписывают http://domain.com/test.html
в http://domain.com/test
Возможно, вам придется изменить некоторые настройки в соответствии с вашими потребностями.