Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   ASPX (.net) (http://www.forosdelweb.com/f78/)
-   -   Guardar Archivos en otro Servidor (http://www.forosdelweb.com/f78/guardar-archivos-otro-servidor-583213/)

el mago de oz 05/05/2008 15:43

Guardar Archivos en otro Servidor
 
holas... estoy tratando de almacenar un archivo utilizando el FileUpload de Asp.net pero lo que necesito es guardarlo en otro servidor... o sea.. la web esta en el servidor A y el archivo debe quedar en el servidor B....

sirve el FileUpload??

gracias...

Fann_Lavigne 05/05/2008 16:01

Re: Guardar Archivos en otro Servidor
 
Pues, si, serviria, en dado kaso, lo uniko tendrias ke hacer, seria pasarle la ruta kompleta del server a tu metodo .SaveAs del FileUpload, es decir, puedes tener una karpeta kompartida en el server B: .SaveAs.SaveAs(\\B\CarpetaKompartidaEn.SaveAsB\.Sa veAs\Archivo.extension)

saludos.

el mago de oz 23/05/2008 08:57

Respuesta: Guardar Archivos en otro Servidor
 
He retomado el tema... :-) ...

y no sirve... el fileupload solo sirve para guardar en rutas locales...(por lo que he visto)... si alguien sabe algo mas...

mientras busco otro metodo...

Saludos.

RootK 23/05/2008 09:14

Respuesta: Guardar Archivos en otro Servidor
 
Lo que se puede hacer es mapear la unidad y listo

ejemplo

servidor destino \\serverdestino\c$\Archivos\
se mapea esa ruta (le asignamos una unidad X,Y, Z etc)

Y la tenemos como

Z:\

Y al hacer el upload lo podemos hacer así

Cita:

File1.PostedFile.SaveAs("Z:\" + lfileName)
Salu2

el mago de oz 23/05/2008 09:24

Respuesta: Guardar Archivos en otro Servidor
 
Gracias por la respuesta... :aplauso:
pero podrias ser mas explícito... sobre todo con lo de mapear... :-)

Saludos

RootK 23/05/2008 09:59

Respuesta: Guardar Archivos en otro Servidor
 
con lo de mapear

Salu2

el mago de oz 23/05/2008 10:08

Respuesta: Guardar Archivos en otro Servidor
 
jajaja.. perfecto.. pense que estabamos a nivel de codigo todavía...

pruebo y cuento...

un saludo...

el mago de oz 23/05/2008 10:43

Respuesta: Guardar Archivos en otro Servidor
 
me sale el siguiente error :
ERROR: No se puede encontrar una parte de la ruta de acceso 'Z:\Orden.txt'.

en Z: esta mapeada la ruta: servidor\c:\temp

file = FileUp.FileName; // Orden.txt
ruta = "Z:\\" + file; // Z:\Orden.txt
FileUp.PostedFile.SaveAs(ruta); // Z:\Orden.txt
FileUp.SaveAs(ruta); // Z:\Orden.txt

ese el codigo y el valor de las variables...
independientemente del metodo FileUp.PostedFile.SaveAs ó FileUp.SaveAs el error es el mismo...
A que se deberá??

Saludos

RootK 23/05/2008 12:00

Respuesta: Guardar Archivos en otro Servidor
 
mejor olvidemos el tema del mapeo, puedes arreglarlo simplemente dando permisos sobre tu carpeta del servidor destino, con el usuario NETWORK SERVICE, recuerda que tu carpeta debe estar compartida

y desde tu upload simplemente haces algo así

Cita:

File1.PostedFile.SaveAs("\NOMBRESERVER\CARPETACOMP ARTIDA\" + lfileName)
Saludos

el mago de oz 23/05/2008 13:19

Respuesta: Guardar Archivos en otro Servidor
 
Definitivamente no funciona el fileupload... ahora es este error:

{"No se puede encontrar una parte de la ruta de acceso 'C:\\servidor\\temp\\Orden.txt'."} System.Exception {System.IO.DirectoryNotFoundException}

a pesar de tener el codigo asi:

FileUpload2.SaveAs("\\servidor\\temp\\" + FileUpload2.FileName);

por lo que averigue solo funciona con rutas locales...

Existe otro metodo...?? a otro codigo me refiero...

Saludos-...

RootK 23/05/2008 14:43

Respuesta: Guardar Archivos en otro Servidor
 
Cita:

Iniciado por el mago de oz
por lo que averigue solo funciona con rutas locales...

creeme que su funciona para otros servers (lo he hecho infindad de veces)

recuerda que una carpeta compartida en el server no es equivalente a la misma ruta que accesas desde afuera, ejemplo

En tu server tienes la siguiente carpeta

c:\carpeta1\subfolder1\otro_subfolder\archivos

y quieres depositar todo en "archivos"

dar boton derecho sobre la carpeta "archivos" (que es tu server remoto) le das permisos "full" al usuario NETWORK SERVICE y desde tu servidor donde tienes IIS la ruta para accesar sería:

\\servidor_remoto\archivos

quedando en tu Upload algo así:

FileUpload2.SaveAs(@"\\servidor_remoto\archivos\" + FileUpload2.FileName);

Salu2 y cualquier cosa por aqui seguimos

el mago de oz 23/05/2008 14:58

Respuesta: Guardar Archivos en otro Servidor
 
Perfecto RootK... y gracias por tu paciencia... efectivamente di permisos a la carpeta Temp a Network Service con full control...

Ahora al intentar enviar el archivo me sale lo siguiente:

"Error de inicio de sesión: nombre de usuario desconocido o contraseña incorrecta.\r\n"} System.Exception {System.IO.IOException}

Cabe hacer notar que estoy recien haciendo una pequeña aplicacion web para hacer esto y está en desarrollo ... no esta publicado ni mucho menos... ¿¿tendrá esto algo que ver??

Saludos y mil gracias...

RootK 23/05/2008 15:54

Respuesta: Guardar Archivos en otro Servidor
 
Lo que puedes hacer aparte de eso podrías intentar impersonar desde tu web.config

Cita:

<system.web>
<identity impersonate="true" userName="dominio\usuario"
password="passwordUsuario" />
Depende mucho de la configuración del server, pero tenemos que ir descartando las posibilidades, pruebalo y nos cuentas como te fue

Salu2

el mago de oz 23/05/2008 16:19

Respuesta: Guardar Archivos en otro Servidor
 
ahora esto... :'( :neurotico :neurotico

"Acceso denegado a la ruta de acceso '\\\\sevidor\\Temp\\Orden.txt'."
System.Exception {System.UnauthorizedAccessException}

y esto colocando datos validos del dominio en
<identity impersonate="true" userName="dominio\user" password="pass" />

bueno.. por hoy ya me aburri.. mañana retomo el tema...

un saludo y gracias por la ayuda...

leipunk 26/05/2008 10:08

Respuesta: Guardar Archivos en otro Servidor
 
lo primero que debes realizar es darle permiso de lectura y escritura a tu carpeta desde el IIS.

Luego solo debes colocar en el codigo lo siguiente:

ruta=\\nombredetuservidor\nombrecarpeta\
archivo=nombredetuarchivo

Control.SaveAs(Ruta & Archivo)

eso es todo funciona, los errores que ademas tiene son errores de permiso.


La zona horaria es GMT -6. Ahora son las 06:40.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.