944,207 Members | Top Members by Rank

Ad:
  • PHP Discussion Thread
  • Unsolved
  • Views: 17120
  • PHP RSS
Nov 1st, 2006
0

connect one server from another server through script

Expand Post »
Hi everyone,

Iam a nuubie to PHP. I have faced some problems in my project. I want to access a server(folder in server) through script run by another server. Its possible to access the files kept in one server through script run by another server. Please anyone help me. Its very useful to me if anyone provide answer for this.

Thanku..
Mahe4us
Similar Threads
Reputation Points: 10
Solved Threads: 0
Junior Poster in Training
mahe4us is offline Offline
54 posts
since Sep 2006
Nov 1st, 2006
0

Re: connect one server from another server through script

Click to Expand / Collapse  Quote originally posted by mahe4us ...
Hi everyone,

Iam a nuubie to PHP. I have faced some problems in my project. I want to access a server(folder in server) through script run by another server. Its possible to access the files kept in one server through script run by another server. Please anyone help me. Its very useful to me if anyone provide answer for this.

Thanku..
Mahe4us
Do you mean just a list of files? or will it need to include all the other methods for instance renaming files etc?
Reputation Points: 10
Solved Threads: 0
Junior Poster in Training
Barnz is offline Offline
53 posts
since Jan 2006
Nov 1st, 2006
0

Re: connect one server from another server through script

Hi Barnz,

Thanks you for your nice reply. I will tell clearly to you. suppose an image is placed in a folder in a different server. I want to access the image or copy the image from that server location to my server location dynamically. I think you can understand the above problem. Expecting your reply..
Thanks
Reputation Points: 10
Solved Threads: 0
Junior Poster in Training
mahe4us is offline Offline
54 posts
since Sep 2006
Nov 1st, 2006
0

Re: connect one server from another server through script

Click to Expand / Collapse  Quote originally posted by mahe4us ...
Hi Barnz,

Thanks you for your nice reply. I will tell clearly to you. suppose an image is placed in a folder in a different server. I want to access the image or copy the image from that server location to my server location dynamically. I think you can understand the above problem. Expecting your reply..
Thanks
hmmm, do you own the other server?

It may get tricky if you do cannot place a PHP script on the remote server (aswell as the local server etc).

However it may still be possible, but you may have to tell it which images to download etc.
Reputation Points: 10
Solved Threads: 0
Junior Poster in Training
Barnz is offline Offline
53 posts
since Jan 2006
Nov 3rd, 2006
0

Re: connect one server from another server through script

Click to Expand / Collapse  Quote originally posted by mahe4us ...
Hi Barnz,

Thanks you for your nice reply. I will tell clearly to you. suppose an image is placed in a folder in a different server. I want to access the image or copy the image from that server location to my server location dynamically. I think you can understand the above problem. Expecting your reply..
Thanks
If all you want is to copy an image you can do something like:

[PHP]$img_txt = file_get_contents('http://example.com/image.jpg');

$fp = fopen('/local/server/path/to/image/directory/', 'w');

fwrite($fp, $img_txt, strlen($img_txt));

fclose($fp);[/PHP]

But I believe what you want is a bit more than that.

What is really comes down to is what network you have in place between the two servers. If you just have HTTP then you'll have to access averything via HTTP with the HTTP stream functions: http://us2.php.net/stream

or you could use FTP.

You do not have any access to localserver functions on the remote server though unless you use something like SSH. (PHP can access an SSH stream and do what you want, but I don't the SSH protocol so I couldn't help you with that).

Ultimately if you own both server and wanted to write a php script that would act like an SSH for example, you'll be write a wrapper for functions you could do at the localhost, but have the commands sent over HTTP.

I believe thats what Barnz mentioned.

Its not too hard to do though. You can start off by looking at the phpshell project on sourceforge: http://sourceforge.net/projects/phpterm/

It shouldn't be had to write a wrapper for executing commands on the remote server, the hard part would be to keep it secure.

Simple Example:

On your local server:

[php]// wrapper for calling remote php functions on the remote server
function remote_php_call($function, $arguments = false, $auth = false) {

$arguments = serialize($arguments);
$function = serialize($function);

$result = file_get_contents($remove_server.'?func='.$function.'&args='.$arguments.'&auth='.$auth);

return unserialize($result);

}
[/php]

On your remote server:

[php]
function remote_php_server($function, $arguments = false) {

$arguments = unserialize($arguments);
$function = unserialize($function);
$result = call_user_function($function, $arguments);

return serialize($result);

}

// first make sure you AUTHENTICATE the remote server,
// otherwise you open a door for everyone to run abitrary commands on your php server

$function = $_GET['function'];
$arguments = $_GET['arguments'];

echo remote_php_server($function, $arguments);

[/php]

Off course this will only be limited to data that can be serialized and sent over HTTP. ie: you cannot use a resource handlers from functions like fopen(), mysql etc.

Another option is to use one of the webservices such as XMLRPC, or SOAP etc. These have a well defined protocol..
Last edited by digital-ether; Nov 3rd, 2006 at 5:24 am.
Moderator
Reputation Points: 457
Solved Threads: 101
Nearly a Posting Virtuoso
digital-ether is offline Offline
1,250 posts
since Sep 2005

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in PHP Forum Timeline: AJAX and Smarty
Next Thread in PHP Forum Timeline: Newbie Question - How to generate a link





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC