- PR -

IIS6.0 仮想ディレクトリ内のインクルードファイルが見えない

1
投稿者投稿内容
らしゅかる
会議室デビュー日: 2002/10/25
投稿数: 4
投稿日時: 2006-04-21 10:53
お世話になります。

IIS6.0 の仮想ディレクトリ内のインクルードファイルについて質問させてください。

【環境】
Srv1 (Windows Server 2003 IIS6.0)
Srv2 (Windows Server 2003 IIS6.0)

【仮想ディレクトリ作成方法】
Srv2側に include というエイリアスの仮想ディレクトリを作成
パス:\\srv01\c-drive\aaaa\include
上記パスに対してフルコントロール権限をもつユーザ・パスを入力

読み取り及びASPなどのスクリプトを実行するに Check を入れる

【設定】
includeにはSQL関数を書いたソースが入っており、ページを表示させる
test.aspファイル上では

<!--#include virtual="/aaaa/include/class_xxxxx.asp"-->

という記載をしております。

また上記class_xxxxx.asp ファイル内で <!--#include file="ADODB.asp"-->
という記述でincludeもしております

ADODB.asp内では

Public Sub getConnectOpen(ByRef p_cnnADO, ByVal p_strDSN, ByVal p_strUserName, ByVal p_strPassword)
Set p_cnnADO = Server.CreateObject("ADODB.Connection")
p_cnnADO.Open p_strDSN,p_strUserName,p_strPassword
End Sub

のようにSQLサーバへのコネクションの定義を実施しております

【現象】
IEからtest.aspを表示させようとすると
------------------------------------------------------------
Active Server Pages エラー 'ASP 0126'

インクルード ファイルが見つかりません

/aaaa/include/class_xxxxx.asp, 行 1

インクルード ファイル 'ADODB.asp' が見つかりませんでした。
-------------------------------------------------------------
というエラーが発生してしまいます。

仮想ディレクトリを使用するのではなく、単純に
\\srv01\c-drive\aaaa\include をsrv2上にコピーしてきた場合には
ページの表示が確認できました。

また上記class_xxxxx.asp ファイル内で
<!--#include file="/aaaa/include/ADODB.asp"-->
と記載すると表示は可能でした。

*ただし今回仮想ディレクトリに指定しているものは別のサーバでも使用しており
<!--#include file="/aaaa/include/ADODB.asp"--> という記述にする事ができない
という前提条件があり、この方法ではダメなんです。

また以前は
srv3 (Windows2000) にパス:\\srv01\c-drive\aaaa\include の仮想ディレクトリ
を作成しておりましたが、その際は普通に表示が可能でした。

IIS6.0のセキュリティ系の問題かなとは思うのですが、上記エラーを
解決するよい方法がありましたらご教授願えればと思います。

1

スキルアップ/キャリアアップ(JOB@IT)