Есть ли способ сопоставить путь с внешнего сервера? - PullRequest
0 голосов
/ 09 мая 2018

Ну, я работал на моем сервере с помощью метода, подобного следующему:

System.Web.HttpContext.Current.Server.MapPath("/path/something");

... и это работает до сих пор. Тем не менее, теперь я столкнулся с проблемой. Дело в том, что мне нужно написать файл, который находится на внешнем сервере. Есть ли в C # метод для этого?

1 Ответ

0 голосов
/ 09 мая 2018

Server.mappath предназначен для преобразования веб-путей в локальные пути в зависимости от местоположения веб-корня и, строго говоря, не имеет значения при попытке доступа к внешним ресурсам.

Единственным исключением является случай, когда удаленное местоположение файла используется как часть файловой системы веб-сайта. НАПРИМЕР. Если на вашем веб-сайте есть папка «/ remotefiles /», и в IIS вы сопоставили эту папку с удаленным сетевым путем. MapPath будет работать как обычно, и вы получите полный UNC-путь.

Если сервер, к которому вы хотите получить доступ, находится в той же сети, что и ваш веб-сервер, но не упоминается как часть вашего веб-корня, то вам следует обратить внимание на прямую ссылку на рассматриваемое местоположение, используя полный путь UNC. НАПРИМЕР. "\\ ExternalServer \ CDrive \ SomeStuff \".

Если удаленный доступ к серверу осуществляется через более широкую сеть, вам нужно будет обратиться к другой форме доступа.

...