- ベストアンサー
.html ファイルでasp実行?
現状、Win2000Server+IIS5.0 上で、以下のようなファイルが動いています。 これを Win2003Server + IIS6.0に移行しているところなのですが、うまく動きません。 まず、index.aspで、index.htmlにリダイレクトし、index.htmlは表示されます。しかし、index.htmlの最初の行にある<!--#include Virtual = "/gl.asp"-->がインクルードされず、ブラウザに表示されたソースを見るとそのまま表示されてしまいます。 そもそも、.htmlなる拡張でaspが実行されるのかが疑問なのです。 ただ、現行サーバでは動いているんですが。 ちなみに新サーバ上でのIISマネージャのWeb拡張にてSSIやCGI、ASPは有効にしてあります。 次に、SSIを.htmlにマッピングしてみました(現行サーバではそうなっていませんが)。 結果、<!--#include Virtual = "/gl.asp"-->はインクルードされましたが、 gl.aspは実行されずそのまま読み込まれただけです。 つまり、ここでもPerlが実行されないまま、単にインクルードされたに過ぎないのです。 Perlでのスクリプトも単独では動作しているのは確認しております。 新サーバ上で、どのような設定が必要なのかが判りません。どなたかお知恵をお貸しください。 よろしくお願いします。 ****************************** [ファイル名 index.asp] <% リダイレクトの為のスクリプト%> ******************************* [ファイル名 index.html] <!--#include Virtual = "/gl.asp"--><% %> <html ・・・ 以下省略(これ以降もHTMLタグとASPスクリプトの混在したものが続く) ************************* [ファイル名 gl.asp] <script language="PerlScript" runat="Server">Perlスクリプト</script> <% ・・・ 以下省略(これ以降もサーバー側ASPに関する記述が続く)に関する記述が続く)
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
htmlをaspとして動かすには、 インターネットインフォメーションサービスの 仮想ディレクトリのプロパティにある、 [仮想ディレクトリ]タブの[構成]ボタンをクリックします。 [アプリケーションのマッピング]タブに拡張子の一覧がでてきます。 一度、.aspをダブルクリックし、[実行ファイル]テキストボックスおよび[制限]テキストボックスの内容をコピーしておきます。 その後、それを閉じ、[追加]ボタンをクリックします。 ここで、先ほどコピーしたものを、[実行ファイル]テキストボックスおよび[制限]テキストボックスに貼り付け、拡張子に.htmlを入力し[OK]とします。同様に、.htmをやっておくこともお勧めします。 以上で、拡張子が.html/.htmのものはすべて.aspとして動くことができるようになります。
その他の回答 (1)
- kalze
- ベストアンサー率47% (522/1092)
<!--#include Virtual = "/gl.asp"--> と記述すると、実行結果ではなく、ソースが表示されるのだけど、実行結果を表示したいってことでしょうか? includeの動作としてはソースが読み込まれるのが正しいので、コマンドを変更してください。 実行結果を読み込みたいのであれば、参考URLをどうぞ
補足
回答ありがとうございます。 実行結果ではなくソースがindex.html内の頭に読み込まれます。 確かに、include の動作としてはソースが読み込まれて表示するのは正しいとは思いますが、現サーバでは実行された結果が表示されます。 ファイルは現サーバからコピーしているので書き間違いはありえないのです。 しかも、includeされるgl.aspはperlスクリプトとaspが混在したファイルです。 IIS上の設定を何か変更すれば、include後のindex.htmlはaspとしてサーバー上で実行されるものなのでしょうか?