2

だから私はウェブサイトに CodeIgniter PHP フレームワークを使用しています。いくつかのサーバー、ライブ、開発、およびファイル サーバーがあります。ファイルを開発サーバーにアップロードし、ファイル サーバーに安全にコピーして保存することができました。私たちの問題は、ファイルサーバーから開発ウェブサイトの画像を読み取り/表示する方法です。私たちのファイル サーバーは、セキュリティのために sftp を使用しています。ファイル サーバーから画像オブジェクトを返すだけで、実際のファイルは返さないさまざまな方法を検討してきました。これを行う方法に関する提案はありますか?ありがとう。

CodeIgniter PHP フレームワーク Linux サーバー ファイル サーバー上の SFTP

ありがとう...

4

2 に答える 2

0

さて、私は sftp をあまり扱っていませんが、少なくとも、開始するためのいくつかの手順を説明しようと思います。

  1. ssh2のようないくつかの apache/php モジュールをインストールし、それを有効にする必要がありextension=php_ssh2.dllます。

  2. 次のように、独自の sftp ライブラリを作成できます。

    クラスSftp{

    protected $connection;
    
    public function __construct($params)
        {
    
        }
    
        public function connect()
        {
        $server = "you-server.com";
        $port = "1234";
        $username = "admin";
        $password = "blabla";
    
        //connect
        $ssh2 = ssh2_connect($server, $port);
    
        if(ssh2_auth_password($ssh2, $username, $password))
        {
            //sftp session
            $this->connection = ssh2_sftp($resConnection);
        }
        else
        {
            echo "Unable to connect to server";
        }
        }
    
    public function download($image_name)
    {
        $image = fopen("ssh2.sftp://{$this->connection}/path/to/{$image_name}", 'r');
        fclose($image);
    }
    
    }
    

そして、次のように使用してみてください:
$this->sftp->connect(); $image = $this->sftp->download('イメージ名');

于 2012-06-28T16:03:42.217 に答える
0

Github でこの Codeigniter ライブラリを見つけました。まだ使用していませんが、Codeigniter を使用してライブラリをロードする前に、いくつかの手順を実行する必要があるようです。そうでなければ、これは有望に見えます。

https://github.com/ipolar/CodeIgniter-sFTP-Library

于 2012-06-29T13:49:20.303 に答える