O método server.mappath é organizado para referência de amigos que precisam dele./Diretório atual
/Diretório inicial do site
../diretório superior
~/Diretório virtual do site
Se o diretório do site atual for E:/wwwroot, o diretório virtual do aplicativo for E:/wwwroot/company e o caminho da página navegada for E:/wwwroot/company/news/show.asp
Usado na página show.asp
Server.MapPath(./) retorna o caminho: E:/wwwroot/company/news
Server.MapPath(/) retorna o caminho: E:/wwwroot
Server.MapPath(../) retorna o caminho: E:/wwwroot/company
Server.MapPath(~/) retorna o caminho: E:/wwwroot/company
servidor.MapPath(request.ServerVariables(Path_Info))
Solicitação.ServerVariables(Path_Translated)
O caminho de retorno dos dois métodos acima é D:/wwwroot/company/news/show.asp
O método MapPath mapeia o caminho relativo ou virtual especificado para o diretório físico correspondente no servidor.
gramática
Servidor.MapPath(Caminho)
parâmetro
Caminho
Especifique um caminho relativo ou virtual para o diretório físico a ser mapeado. Se Path começar com uma barra (/) ou barra invertida (/), o método MapPath tratará Path como um caminho virtual completo ao retornar o caminho. Se Path não começar com uma barra, o método MapPath retornará um caminho relativo a um caminho existente no arquivo .asp.
Comentário
O método MapPath não oferece suporte à sintaxe de caminho relativo (.) ou (..). Por exemplo, o seguinte caminho relativo ../MyDir/MyFile.txt retorna um erro.
O método MapPath não verifica se o caminho retornado está correto ou existe no servidor.
Como o método MapPath mapeia apenas caminhos, independentemente da existência do diretório especificado, você pode primeiro usar o método MapPath para mapear o caminho para a estrutura de diretório física e depois passá-lo para o componente que cria o diretório ou arquivo especificado no servidor.
Exemplo
Para o exemplo a seguir, o arquivo data.txt e o arquivo test.asp que contém o script a seguir estão localizados no diretório C:/Inetpub/Wwwroot/Script. O diretório C:/Inetpub/Wwwroot é definido como o diretório inicial do servidor.
O exemplo a seguir usa a variável de servidor PATH_INFO para mapear o caminho físico para o arquivo atual. roteiro
<%= server.mappath(Request.ServerVariables(PATH_INFO))%><BR>
saída
c:/inetpub/wwwroot/script/test.asp<BR>
Como os parâmetros de caminho nos exemplos a seguir não começam com uma barra, eles são relativamente mapeados para o diretório atual, neste caso C:/Inetpub/Wwwroot/Script. roteiro
<%= server.mappath(data.txt)%><BR>
<%= server.mappath(script/data.txt)%><BR>
saída
c:/inetpub/wwwroot/script/data.txt<BR>
c:/inetpub/wwwroot/script/script/data.txt<BR>
Os próximos dois exemplos usam o caractere de barra para especificar que o caminho retornado deve ser tratado como o caminho virtual completo no servidor. roteiro
<%= server.mappath(/script/data.txt)%><BR>
<%= server.mappath(/script)%><BR>
saída
c:/inetpub/script/data.txt<BR>
c:/inetpub/script<BR>
O exemplo a seguir mostra como usar barra (/) ou barra invertida (/) para retornar o caminho físico do diretório host. roteiro
<%= server.mappath()%><BR>
<%= server.mappath()%><BR>
saída
c:/inetpub/wwwroot<BR>
c:/inetpub/wwwroot<BR>