MapPath

(PWS4 IIS4 IIS5)
MapPath — 指定された仮想パス (現在のサーバー上の絶対パス、または現在のページからの相対パス) を物理パスにマップします。

Server.MapPath( Path )

パラメータ
Path 物理ディレクトリにマップする相対パスまたは仮想パスを指定します。path にスラッシュ (/) または円記号 (\) で始まるパスを指定した場合、MapPath メソッドは、path を仮想フルパスであるとみなした場合のパスを返します。path にスラッシュまたは円記号以外の文字で始まるパスを指定した場合、MapPath メソッドは、処理中の .asp ファイルのディレクトリからの相対パスを返します。

説明

MapPath メソッドは、指定された相対パスや仮想パスを、サーバー上の対応する物理ディレクトリにマップします。

MapPath メソッドでは、返されるパスが有効であるかどうか、またサーバー上に存在するかどうかはチェックされません。
MapPath メソッドは、指定されたディレクトリが現在存在しているかどうかにかかわらず、パスをマップします。このため、MapPath メソッドを使用してパスを物理ディレクトリ構造にマップしてから、指定されたディレクトリやファイルをサーバー上に作成するコンポーネントにそのパスを渡すことができます。
AspEnableParentPaths プロパティが TRUE (既定値) に設定されている場合は、Path パラメータに相対パス構文を使用することができます。スクリプトが物理ディレクトリ構造にアクセスするのを許可することに不安がある場合は、 AspEnableParentPaths プロパティを FALSE に設定することで、この機能を無効にすることができます。これは、インターネット インフォメーションサービススナップイン、またはスクリプトのいずれかを使用して行うことができます。

以下のスクリプト例で、ファイル data.txt は C:\Inetpub\Wwwroot\Script というディレクトリにあります。また、次のスクリプトが記述されている test.asp というファイルも同じディレクトリにあります。C:\Inetpub\Wwwroot ディレクトリはサーバーのホームディレクトリとして設定されています。
次の例は、サーバー変数 PATH_INFO を使用して現在のファイルの物理パスをマップします。

例1.MapPathの例

1
<%= server.mappath(Request.ServerVariables("PATH_INFO"))%>

上の例からは、次の出力が得られます。

c:\inetpub\wwwroot\script\test.asp

次の例のパス パラメータはスラッシュまたは円記号で始まっていないため、現在のディレクトリ (ここでは C:\Inetpub\Wwwroot\Script) からの相対パスとしてマップされます。

1
<%= server.mappath("data.txt")%>

上の例からは、次の出力が得られます。

c:\inetpub\wwwroot\script\data.txt

次の例は、スラッシュ (/) または円記号 (\) を使用してホーム ディレクトリの物理パスを返す方法を示しています。

1
<%= server.mappath("/")%>

上の例からは、次の出力が得られます。

c:\inetpub\wwwroot