けさらんぱさらん

方向性は定めず、ただ思いつくままに

ASP.NET MVCをIIS6で動かす

ちょっとはまったのでメモ

基本的には、下記のサイトの方法で動かすことができます。
http://msdn.microsoft.com/ja-jp/asp.net/ff652616.aspx
http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx

ただしルートへのアクセスはできてません(できないのかもしれません)
http://localhost/Hoge/
みたいなアクセスです。
まあDefault.aspxファイルとかを別途用意すれば良いんでしょうけどね


はまったのは、そこで無くてですね。

ログインしているユーザにのみ使わせる機能にしたい時に
下記のように書きます。

[Authorize]
public ActionResult Index()
{
    return View(list);
}

でもこれがうまく動かないんです。
ページが無いというエラーになってしまいます。
まあURLに.mvcが付いていないと動かないのですが
それが無いってことなんですけどね
んでどこにURLの指定があるかって言うと
web.configにあるわけです。

<authentication mode="Forms">
  <forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>

この部分を変更します。

<forms loginUrl="~/Account.mvc/LogOn" timeout="2880" />

他にも直にURLが書いてあるならそこにも拡張子mvcを付ける必要があります。


久々にブログ書いたら書き方忘れてた orz