ASP - MapPath
Метод MapPath сопоставляет указанный относительный или виртуальный путь соответствующему физическому каталогу на сервере.
Синтаксис
Server.MapPath( Путь )
Параметры
Путь
Указывает относительный или виртуальный путь, сопоставляемый физическому каталогу. Если Путь начинается с прямой (/) или обратной косой черты (\), метод MapPath возвращает путь, как если бы Путь был полным виртуальным путем. Если Путь не начинается с косой черты, метод MapPath возвращает путь относительно каталога, в котором находится обрабатываемый файл .asp.
Примечания
Метод MapPath не проверяет допустимость пути и существование каталога на сервере.
Поскольку метод MapPath сопоставляет путь вне зависимости от существования указанного каталога, можно использовать метод MapPath для сопоставления пути к физической структуре каталога и передачи этого пути компоненту, который создает указанный каталог или файл на сервере.
Если свойство AspEnableParentPaths установлено в TRUE (значение используется по умолчанию), можно использовать синтаксис относительного пути. Если нежелательно разрешать сценариям доступ к структуре физических каталогов, эта возможность может быть запрещена установкой свойства AspEnableParentPaths в ЛОЖЬ. Это может быть выполнено с помощью оснастки IIS или с помощью сценария.
Пример
В приведенном ниже примере файл data.txt в каталоге C:\Inetpub\Wwwroot\Script, как и файл test.asp, который содержит приведенные ниже сценарии. Домашней страницей сервера является каталог C:\Inetpub\Wwwroot.
В приведенном ниже примере переменная сервера PATH_INFO
используется для сопоставления физического пути текущего файла. Приведенный ниже сценарий
<%= server.mappath(Request.ServerVariables("PATH_INFO"))%><BR>
дает следующий результат
c:\inetpub\wwwroot\script\test.asp<BR>
Поскольку параметры «путь» в приведенных ниже сценариях не начинаются с символа косой черты, они сопоставляются относительно текущего каталога, в данном случае C:\Inetpub\Wwwroot\Script. Приведенные ниже сценарии
<%= server.mappath("data.txt")%><BR>
<%= server.mappath("script/data.txt")%><BR>
дают следующие результаты
c:\inetpub\wwwroot\script\data.txt<BR>
c:\inetpub\wwwroot\script\script\data.txt<BR>
В двух следующих примерах используется символ косой черты для указания, что возвращаемый путь должен выглядеть как полный виртуальный путь на сервере. Приведенные ниже сценарии
<%= server.mappath("/script/data.txt")%><BR>
<%= server.mappath("\script")%><BR>
дают следующие результаты
c:\inetpub\wwwroot\script\data.txt<BR>
c:\inetpub\wwwroot\script<BR>
Следующие примеры показывают использование прямой (/) и обратной косой черты (\) для возвращения физического пути к домашнему каталогу. Приведенные ниже сценарии
<%= server.mappath("/")%><BR>
<%= server.mappath("\")%><BR>
дают следующие результаты
c:\inetpub\wwwroot<BR>
c:\inetpub\wwwroot<BR>