-1

1つのサーバーでアップロードスクリプトをホストしたいのですが、アップロードされたファイルをリモートサーバーに保存します。

現在、サーバー上の書き込み可能なフォルダーに保存するスクリプトがあります。これは正常に機能しますが、絶対リンク(つまり、「/ uploads /」ではなく「http://www.somedomain.com/uploads/」)に変更すると、フォルダーが書き込み可能ではないと表示されます。フォルダのアクセス許可は0777です。何か問題がありますか?

最終的には、アップロードをリモートサーバー(つまり、「http://www.someotherdomain.com/uploads/」)に保存したいと思います。洞察はありますか?誰かがこのフォルダにファイルをアップロードする可能性を排除するために、パスワード権限を使用してこれを行うにはどうすればよいですか?

前もって感謝します!

4

3 に答える 3

1

以下はオプションです。

サーバーにファイルを一時的にアップロードします。localhost にアップロードしたら、curlを使用してファイルをリモート サーバーにアップロードします。

パスワード保護のために、約 1 時間ごとに有効期限が切れるアクセス トークンを使用できます。アップロード リクエストで access_token を変数として渡します。リモート サーバーは、アップロードを受け入れる前に、access_token が存在し、有効期限が切れていないことを確認します。

アクセス用のユーザー名とパスワードを設定します。アクセス トークンが存在しないか、有効期限が切れている場合は、curl を使用してユーザー名とパスワードをリモート サーバーに送信します。これにより、ユーザー名とパスワードが有効かどうかが検証され、新しい access_token が返されます。

于 2011-04-16T19:02:45.650 に答える
0

ftp経由で試す

http://php.net/manual/de/book.ftp.php

于 2011-04-16T19:03:49.923 に答える
0

この問題を経験したことがあると思います。あなたの問題を理解するのが間違っていなければ、私の問題はこのようなものです。サーバーAでupload.phpを作成し、サーバーAでも受信します。ファイルがreceive.phpであるとしましょう(正常に動作します)。次に、受信ファイル (receive.php) をサーバー B にアップロードし、サーバー A (upload.php の宛先はサーバー B) で upload.php を変更します。

それは問題ですか?このような問題が発生する場合は、ファイアウォールの問題である可能性があります。しかし、私が両方を使用しているサーバーは centos です。次に、selinux をオフにし、firehol を使用して centos のファイアウォールを調整します。その後、それは正常に動作します。

他のオプションとして、サーバー A でファイルを受信することもできます。次に、受信時に ftp 経由でサーバー B にファイルを転送しますが、これにはもっと手間がかかると思います。ftp 構成を調整する必要があるためです (ftp、sftp、または pem / pkk を使用した sftp のいずれか)。

于 2011-04-16T19:13:32.880 に答える