PHP - No me puedo conectar a un servidor FTP desde mi servidor FTP

   
Vista:

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por Program (11 intervenciones) el 01/09/2015 20:19:08
Buenas tardes.

Tengo dos servidores FTP, en uno tengo el script php para conectarme al otro.

Servidor1: aquí almacena mi archivo.php (necesito transferir un archivo ubicado en el servidor2 al servidor1).
Servidor2: aquí está almacenado el archivo que quiero obtener.

Después de hacer la conexión y el login en el código, entra en la condición que tengo de:
if ((!$conn_id) || (!$login_result)){
echo "Ftp-connect failed!";
die;
}
Pero los datos sí son correctos, he probado el script desde mi servidor local.

Gracias por sus respuestas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por xve (5519 intervenciones) el 01/09/2015 22:01:41
Hola, faltaria ver que contienen esas variables...

Nos puedes mostrar el resto del código para poder probarlo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por Program (11 intervenciones) el 02/09/2015 00:41:15
No puedo proporcionar usuarios ni contraseña por cuestiones de privacidad, así que no, pero según yo, no requiero de permisos especiales del servidor2:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
	$ftp_server= "xxx.xx.xx.xxx";
	$ftp_user_name= "user";
	$ftp_user_pass= "pass";
 
	// ruta al archivo remoto
	$remote_file ="/carpeta/archivo.txt";
	$local_file = "carpeta/archivo.txt";
 
	// establecer una conexión básica
	$conn_id = ftp_connect($ftp_server);
 
	// iniciar sesión con nombre de usuario y contraseña
	$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
 
	// Check conexion FTP
 
	if ((!$login_result) || (!$conn_id)){
		/*ESTE ES EL MENSAJE QUE ME ARROJA*/
		echo "Conexión FTP fallido!";
		die;
	}else{
		echo "Conectado al servidor FTP con éxito! :D";
		ftp_pasv($conn_id, true);
		$decarga = ftp_get($conn_id, $local_file, $remote_file, FTP_BINARY);
		echo "<br>Archivo descargado con éxito";
	}
	ftp_quit($conn_id);
	uploadFile("public_html/PHP/xml/productos.xml", $remote_file);
 
	function uploadFile($remote_file, $file){
		$ftpUser = "user2";
		$ftpServer = "yyy.yy.yy.yyy";
		$ftpPass = "pass2";
 
		$con = ftp_connect($ftpServer);
		$login = ftp_login($con, $ftpUser, $ftpPass);
		if((!$con) || (!$login)){
			echo "No se ha podido conectar con el servidor FTP<br>";
		}else{
			$success = ftp_put(
				$con,
				$remote_file,
				$file,
				FTP_BINARY);
			if($success){
				echo "Se ha subido el archivo al servidor";
			}else{
				echo "No se ha podido subir el archivo al servidor";
			}
		}
		ftp_close($con);
	}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por xve (5519 intervenciones) el 02/09/2015 08:35:56
He simulado tu código, y me ha funcionado correctamente...
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$ftpUser = "xve";
$ftpServer = "192.168.0.151";
$ftpPass = "345857521X";
 
$con = @ftp_connect($ftpServer);
$login = @ftp_login($con, $ftpUser, $ftpPass);
 
if(!$con || !$login)
{
	echo "Error";
}
?>

Si por alguna razón falla, muestra el error...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por Program (11 intervenciones) el 02/09/2015 18:45:33
Ese código lo probaste desde tu servidor? entonces puede que mi servidor esté configurado de manera distinta para PHP?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por xve (5519 intervenciones) el 02/09/2015 20:27:53
Si, si, fíjate que están puestos mis datos...
Y mi servidor de correo, es un servidor de ftp normal, creo que dispone de proftpd como servidor de ftp.

Haz lo que te indica Vainas, activa los errores haber si te da alguna pista.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Vainas

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por Vainas (254 intervenciones) el 02/09/2015 09:59:50
Podrias activar los mensajes de error de php a ver que dicen.

Comprueba con phpinfo() si tienes la libreria necesaria para ejecutar esas funciones.

Si el otro servidor es linux podrias usar tcpdump (analizador de red) para comprobar de alguna forma si al menos llega la conexion. Otra opcion es mirar el log del ftp o del sistema a ver si hay algun intento de conexion.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por Program (11 intervenciones) el 02/09/2015 18:47:08
Me podrías decir en donde puedo consultar dichos datos? mi servidor es GoDaddy.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Vainas

No me puedo conectar a un servidor FTP desde mi servidor FTP

Publicado por Vainas (254 intervenciones) el 03/09/2015 18:31:37
Por partes:

para el phpinfo() te creas un archivo.php y dentro:

phpinfo();

y ya esta. Cuando entres a esa archivo en tu navegador veras variables y configuraciones de tu php... busca con el buscador del navegador alguna que tenga que ver con el ftp.

Para activar los errores de php solo tienes que agregar algunas funciones a el archivo php que te da problemas. Aqui tienes un ejemplo. siempre pon las funciones al principio del todo: http://www.anerbarrena.com/mostrar-errores-php-608/

Lo de poder revisar los logs de tu ftp se lo puedes preguntar a los de godaddy si es que los guardan y en que carpeta quedan es lo unico que se me ocurre. No doy con nada de momento en los foros de godaddy. Si veo algo te cuento.

Saludos.

Actualizo: no entiendo bien si se pueden ver los logs del ftp o son solo los del apache: https://www.godaddy.com/help/working-with-error-logs-1197
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar