ASP.NET MVCでMVC Webアプリケーションを作成していますが、これは私の同僚の一人が書いたFlashオブジェクトを提供することになっています。私はフラッシュを知らない。彼はC#/ ASP.NETを知らない。したがって、問題はSOに行く!IIS7.5でFlashオブジェクトが表示されない
私のWebページ上のコードは次のようになります。
<head>
(blah blah blah...)
<script type="text/javascript" src="/FlashStuff/js/swfobject.js"></script>
<script type="text/javascript">
var GP_MLM_flashvars = {};
GP_MLM_flashvars.remote = 'true';
GP_MLM_flashvars.streamprovider = 'localweb';
GP_MLM_flashvars.referer = '';
GP_MLM_flashvars.bgcolor = '#000033';
var GP_MLM_params = {};
GP_MLM_params.menu = 'false';
GP_MLM_params.allowFullScreen = 'true';
GP_MLM_params.salign = 'tl';
GP_MLM_params.scale = 'noscale';
GP_MLM_params.wmode = 'opaque';
GP_MLM_params.bgcolor = '#000033';
var GP_MLM_attributes = {};
GP_MLM_attributes.id = 'GP_MLM';
GP_MLM_attributes.name = 'GP_MLM';
swfobject.embedSWF('/FlashStuff/swf/GP_MLM.swf', 'GP_MLM', '100%', '100%', '9', '/FlashStuff/expressInstall.swf', GP_MLM_flashvars, GP_MLM_params, GP_MLM_attributes);
</script>
</head>
(etc.)
私はVS開発サーバーを使用してこのページをデバッグするとき、それはすべての非常に喜んで表示され、正常に動作します。しかし、ローカルのIIS(7.5)サーバーを使用してデバッグしようとすると、Flashオブジェクトがロードされません。
私は、Flashオブジェクトを使用可能にするためにIIS上で何かする必要があると推測していますが、それは何ですか?
編集:問題が部分的に解決されました。その手掛かりは "404"エラー(thanks @ Beliskner)に由来しています。
VS開発サーバーで実行しているときは、ルートフォルダがプロジェクトフォルダで、私の場合は "/ FlashStuff"が自分のプロジェクトフォルダから直接読み込まれるため、うまくいきます。
しかし、IISサーバーを実行すると、ルートフォルダは既定のWebサイト(または使用しているサイト)になります。さて、「のhttp:// localhost /をMyTestApp」に設定されたプロジェクトのURLで、私は例えば、「/ MyTestApp」ですべての私のパスをプレフィックスする必要がある。:
<script type="text/javascript" src="/MyTestApp/FlashStuff/js/swfobject.js"></script>
は、すべてのパスを変更しました。今はうまくいく。
私は現在、展開固有の情報をアプリケーションにハードコードしているので、これはかなり醜い状況です。私のアプリケーションを "MyLiveApp"というフォルダにあるIISサーバーに展開する場合は、ファイル参照を変更する必要がありますどこでも!私がそれをデバッグしたいのであれば、何を?すべての参照を「MyTestApp」に戻してください。
明らかに私はこのような状況に立ち向かう最初の開発者ではなく、私が上記のことをしなければならないことは考えられません。だからこのような状況に対処するためのトリックは何ですか?
Uhh ...あなたが話していることを知っているわけではないので、答えは "いいえ"と思います! :D –
あなたは行くよ... – Hawxby
OK、私は多かれ少なかれあなたが意味するものに取り組んだ。あなたの最初の質問に答えて:私はMIMEタイプで何も設定しませんでした。しかし、 ".swf"はすでに "application/x-shockwave-flash"としてリストされていることがわかります。 2番目の質問:チャールズを使用すると、 "swfobject.js"の呼び出しが "404ing"であることがわかります。これは、応答が404.0エラーであることを意味しています。 .jsファイルが正しいフォルダにある場合、なぜそれを行うのですか?IISまたはVSデバッガを使用しているのとは異なり、なぜそれが違いますか? –