Re: Copy Function Errors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



You need to test using regular FTP, SFTP goes over SSH, while the PHP
script your trying to use is making use of regular old FTP. Make sure
that the linux machine has the ports open for FTP and that you have an
FTP server running on it (SSH is not one).

Wei, Alice J. wrote:
> It sounds to me like your problem is now about the authentication. By
> default most linux distributions do not give apache a password. I
> personally think using apache would be a bad idea. How about creating a
> user on the linux box your trying to put the files on to make it's
> primary group apache (make sure the group can write to the folder you
> are putting the files in) and give it a password that is a random string
> of 20 characters (http://www.goodpassword.com) that only your script knows.
>
> Try testing to make sure you can ftp to the server using a normal ftp
> client (ftp for the linux command line or http://filezilla-project.org/
> is a good one if your using windows) using the account you created. Make
> sure you can put files in the directory you will be with the script.
>
> If this all works and your script using the new account is not, I'm sure
> we can help you debug it further :). Good luck!
>
> You are right, there is something terribly wrong with my authentication. I have added one user called test and gave it a fixed password. Since the information where I intend to extract from is a Linux machine, and the location where it is meant to copy to is the Windows server. I tested it using the SSH Shell from the Windows machine to make sure it is working. It does.
>
> I have modified the script where it does the authentication to the following:
>
> // set up basic connection
> $ftp_server="192.168.10.63";
> $conn_id = ftp_connect($ftp_server) or die ("Failed to Connect");
>
> // login with username and password
> $ftp_user_name="somename";
> $ftp_user_pass="somepass";
> $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass) or die ("Failed to Login");
>
> // try to download $server_file and save to $local_file
> if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
>     echo "Successfully written to $local_file\n";
> } else {
>     echo "There was a problem\n";
> }
>
> When I executed the script, it now prompts me back "Failed" to Connect" as in the first die statement. I am confused because when I use the SSH with Filezilla or other SFTP clients, I used the same user and passwords here and have received no errors.
>
> I don't know if I should put the user_name and user_pass from this file to the httpd.conf, though. Currently, this is not set.
>
> Thanks in advance.
>
> Alice
>
> Wei, Alice J. wrote:
>   
>> Hi Alice...
>>
>> I just caught/saw this thread. I'm asuming you haven't found/solved what you're trying to do.
>>
>> So, What exactly are you trying to accomplish? What OS are you running on both the client/server machine? Are you trying to copy from a directory on one box, to a directory on another box? Is this a one time thing? Are the boxes on the same network (physically close together)? Are you able to login to the remote box from your initial server?
>>
>> Let me know what you're looking to do, and I can probably get you going.
>>
>> -regards...
>>
>>   All I wanted to do is to copy the file that is sitting on a remote machine to have it copied it over to another remote machine. Since I put the code snippet below on the server that is supposed to accept the files, I would say I am "downloading" the file here from a remote server to a local server.
>>
>>   It is weird, because I followed Robert's advice and cut out the http:// snippet in my ftp server address, and I have tried both the apache and root password of the actual log in of the FTP, which neither of them worked. Both of the servers have the firewall DNS set up properly, and in my PHP info page, it appears that my FTP is enabled.
>>
>> Is there something else I have missed?
>>
>> // define some variables
>> $local_file = "C:/Inetpub/wwwroot/test/$id/data.tar";
>> $server_file = "http://192.168.10.63/test/$id/data.tar";;
>>
>> // set up basic connection
>> $ftp_server="192.168.10.63";
>> $conn_id = ftp_connect($ftp_server);
>>
>> // login with username and password
>> $ftp_user_name="root";
>> $ftp_user_pass="xxxxxx!";
>> $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
>>
>> // try to download $server_file and save to $local_file
>> if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
>>     echo "Successfully written to $local_file\n";
>> } else {
>>     echo "There was a problem\n";
>> }
>>
>> // close the connection
>> ftp_close($conn_id);
>>
>> Thanks in advance.
>>
>> Alice
>>
>>     
>
>   


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux