У меня Apache 2.2 и установлен modaspdotnet - версия 2.2.
Я последовал совету в Настройка ASP.NET MVC2 на Apache 2.2 с помощью mod_aspdotnet, и сервер работает в основном очень хорошо.
Однако я пытаюсь создать собственные расширения (например, file.customname вместо file.aspx), аналогично тому, как Apache / PHP / htaccess может с этим справиться. (Я думаю, что это mod_rewrite или .htaccess, сейчас забыл!)
Что мне делать, чтобы эти настраиваемые типы файлов (все обслуживающие файлы .NET) работали?
Я дал расширениям собственные имена просто для тестирования.
Это туристический сайт [тестируемый, кстати], и он нормально работает на localhost для основных страниц, но я хотел знать, как это сделать.
Как мне это сделать? Я смотрел в Google и т. Д., Но пользовательские обработчики HTTP - это все, что я действительно мог найти!
Спасибо
Вместо того, чтобы пытаться настроить обработчики для этого, почему бы просто не использовать перезапись. В вашем web.config добавьте следующее в свой <system.webServer>
раздел:
<system.webServer>
<rewrite>
<rules>
<rule name="Rewrite custom ext" stopProcessing="true">
<match url="^(.*)\.customname$" />
<action type="Rewrite" url="{R:1}.aspx" />
</rule>
</rules>
</rewrite>
<system.webServer>
Это перепишет:
http://example.com/somepage.customname -> http://example.com/somepage.aspx
Если вы пытаетесь использовать собственные расширения в приложении ASP.NET MVC, вы можете использовать маршрут:
{controller}/{action}.customname/{id}