これを短くしようと思います。詳細についてはお気軽にお問い合わせください。
モバイル版のWebサイトはMV3かみそりを使用して作成され、拡張のないURLを使用してIIS6Webサーバーに展開されています。.NET4がサーバーにインストールされているため、拡張機能のないURLを機能させるためにサーバーで特別な構成を行う必要はありません。URLを使用してサイトにアクセスしようとするとhttp://site/m/
、404 Not Found
エラーが発生します。
この問題を引き起こすために私がすること:
- VS2010でプロジェクトを右クリックし、ローカルファイルシステムに公開します。
- すべてのファイルを圧縮して本番サーバーに転送し、そこで解凍します
- 本番Webサイトを右クリックして、新しいアプリケーションの仮想ディレクトリを追加します
- すべてのデフォルト設定で新しいアプリケーションプールを作成します
- 新しい仮想ディレクトリ/アプリケーションをそのアプリケーションプールに配置します
- ブラウザでURLにアクセスしてみてください。受け取る
404 Not Found
私を困惑させるのは、ステップ1を「ファイル->新しいMVC3プロジェクトの作成」に置き換えてから、ローカルファイルシステムに公開すると、すべてが正常に機能することです。
- テストプロジェクトは、私が使用した名前でブラウザに表示されます
http://site/mvctest/
- 拡張機能を使用する必要はありません
- 20分経っても動作を停止しません(次の段落を参照)
そして今、(さらに)奇妙な部分について:
ここで、「m」アプリケーションを「mvctest」アプリケーション用に作成したばかりのアプリケーションプールに移動すると、それも機能します。ただし、20分間(または「アイドル状態になった後のワーカープロセスのシャットダウン」に設定した値)のみです。
何か案は?
編集:仮想ディレクトリにワイルドカードマッピングを追加する/m/
と機能しますが、パフォーマンスに悪影響を与える可能性がありますか?