Web アプリケーションを設計するとき、「/」を使用してルート ディレクトリへのアクセスを指定するのが好きです。現在、これは IIS 7.5 で実行されている実稼働サイトで完全に機能します。
しかし、VS 2010 の仮想サーバーでサイトを実行しようとすると、"/" で始まるすべてのパスで 404 エラーが発生し続けます。
404 エラーが発生した場合、アドレスバーのアドレスは正しいアドレスです。たとえば、http://my.site.com/index.aspx http://localhost:61679/index.aspx` へのリンクがあり/index.aspx' - and on the iis7.5 webserver, the path becomes
、and it navigates perfectly. However on the VS virtual server, the path becomes
404 エラーが発生します。
ただし、パスに「/」を使用しない場合、つまり、フル パスを使用するか、そのままにしておくと、仮想サーバーは次のhttp://localhost:61679/index.aspx
ように移動するはずです。
したがって、「/」が最初の文字であるかどうかにかかわらず、アドレスは同じです。
これらのリンクはいずれも を使用しrunat="server"
ていないため、使用について心配する必要はありません~
。
これを有効にする設定はどこかにありますか?
[アップデート]
さらにいくつかの手がかりがあります:
- ナビゲートするhttp://localhost:61679/index.aspx
と 404 が返されhttp://localhost:61679/mysite/index.aspx
ます。- 「/」で始まるリンクはhttp://localhost:61679/
NOTにつながりhttp://localhost:61679/mysite
ます。- これは、"/" が、サイトのルートではなく、サーバーのルートに移動するように VS サーバーに指示することを意味します。ただし、IIS ではこの方法は機能しません。
VS に IIS Express を使用するように指示すると、すべてが正常に機能します。
つまり、"/" が Visual Studio の組み込みサーバー (私は "仮想サーバー" と呼んでいます) のサイトのルートを参照するようにする設定がどこかにある必要があります。