<h1microsoft yahei line-height:25.200000762939453px background-color:rgb>GridFS<span>はじめに</span><pmicrosoft yahei font-size:14px background-color:rgb>GridFS<span>は</span><span>MongoDB</span><span>の組み込み機能であり、多数の小さなファイルを保存するために使用できます。 </span><pmicrosoft yahei font-size:14px background-color:rgb>http://www.mongodb.org/display/DOCS/GridFS<pmicrosoft yahei font-size:14px background-color:rgb>http://www.mongodb.org/display/DOCS/GridFS+仕様<h1microsoft yahei line-height:25.200000762939453px background-color:rgb><br><h1microsoft yahei line-height:25.200000762939453px background-color:rgb>GridFS<span></span><pmicrosoft yahei font-size:14px background-color:rgb>MongoDB<span>を使用してください</span><span>bin</span><span> ディレクトリ内の </span>GridFS<span></span> を処理するためのコマンド ライン ツール <span>mongofiles が提供されています。 </span><pmicrosoft yahei font-size:14px background-color:rgb>すべてのファイルをリストする: <pmicrosoft yahei font-size:14px background-color:rgb>mongofiles list<pmicrosoft yahei font-size:14px background-color:rgb> ファイルをアップロードする: <pmicrosoft yahei font-size:14px background-color:rgb>mongofiles put xxx.txt<pmicrosoft yahei font-size:14px background-color:rgb> ファイルをダウンロードする: <pmicrosoft yahei font-size:14px background-color:rgb>mongofiles get xxx.txt<pmicrosoft yahei font-size:14px background-color:rgb> ファイルを検索する: <pmicrosoft yahei font-size:14px background-color:rgb>mongofiles search xxx // <span> は、ファイル名に「</span><span>xxx</span><span>」が含まれるすべてのファイルを検索します </span><pmicrosoft yahei font-size:14px background-color:rgb>mongofiles list xxx //<span> は、ファイル名の前に「</span><span>xxx</span><span>」が付くすべてのファイルを検索します </span><pmicrosoft yahei font-size:14px background-color:rgb>パラメータの説明: <pmicrosoft yahei font-size:14px background-color:rgb> –d <span>データベースを指定します。デフォルトは </span><span>fs</span><span>、</span>Mongofiles list です –d testGridfs<pmicrosoft yahei font-size:14px background-color:rgb>-u –p <span>ユーザー名、パスワードを指定します </span><pmicrosoft yahei font-size:14px background-color:rgb>-h <span>ホストを指定します </span><pmicrosoft yahei font-size:14px background-color:rgb>-port <span>ホストポートを指定します</span><pmicrosoft yahei font-size:14px background-color:rgb>-c <span>コレクション名を指定します。デフォルトは</span><span>fs</span><pmicrosoft yahei font-size:14px background-color:rgb>-t <span>ファイルの</span><span>MIME</span><span>タイプを指定します。デフォルトは無視します</span><pmicrosoft yahei font-size:14px background-color:rgb><h1microsoft yahei line-height:25.200000762939453px background-color:rgb><span>MongoVUEを使用します</span><span>に</span><span> GridFS</span><pmicrosoft yahei font-size:14px background-color:rgb>MongoVUE<span> アドレス: </span>http://www.mongovue.com/<pmicrosoft yahei font-size:14px background-color:rgb>MongoVUE<span> は無料のソフトウェアですが、</span><span>15</span><span>以降は機能が制限されます。次のレジストリ キーを削除することで制限を解除できます: </span><pmicrosoft yahei font-size:14px background-color:rgb>[HKEY_CURRENT_USERSoftwareClassesCLSID{B1159E65-821C3-21C5-CE21-34A484D54444}4FF78130]<pmicrosoft yahei font-size:14px background-color:rgb>このキーの下にあるすべての値を削除するだけです。 <pmicrosoft yahei font-size:14px background-color:rgb><br><pmicrosoft yahei font-size:14px background-color:rgb><h1microsoft yahei line-height:25.200000762939453px background-color:rgb>nginx-gridfs モジュールのインストールと使用<pmicrosoft yahei font-size:14px background-color:rgb>プロジェクトのホームページ: https://github.com/mdirolf/nginx-gridfs<pmicrosoft yahei font-size:14px background-color:rgb>nginx-gridfs を通じて、<span>http</span><span> を使用して </span><span>GridFS</span> 内のファイルに直接アクセスできます。 <span> 。 </span><pmicrosoft yahei font-size:14px background-color:rgb>1. インストール<pmicrosoft yahei font-size:14px background-color:rgb> さまざまな依存関係パッケージをインストールします: <span>zlib</span><span>、</span>pcre<span>、</span><span>openssl</span><pmicrosoft yahei font-size:14px background-color:rgb> <span>ubuntu</span><span>では、次のコマンドを実行します: </span><pmicrosoft yahei font-size:14px background-color:rgb>sudo apt-get install zlib1g-dev //<span></span>sudo apt-get install zlib-devがインストールできないようです<pmicrosoft yahei font-size:14px background-color:rgb>sudo apt-get install libpcre3 libpcre3-dev<pmicrosoft yahei font-size:14px background-color:rgb>sudo apt-get install openssl libssl-dev<pmicrosoft yahei font-size:14px background-color:rgb>install<span>git</span> <span>(省略) </span> <pmicrosoft yahei font-size:14px background-color:rgb>git<span></span>を使用して、<span>nginx-gridfsのコードをダウンロードします: </span>git clone git://github.com/mdirolf/nginx-gridfs.git<pmicrosoft yahei font-size:14px background-color:rgb> cd nginx-gridfs<pmicrosoft yahei font-size:14px background-color:rgb> git submodule init<pmicrosoft yahei font-size:14px background-color:rgb> git サブモジュールの更新<pmicrosoft yahei font-size:14px background-color:rgb> <pmicrosoft yahei font-size:14px background-color:rgb><br> ダウンロード <pmicrosoft yahei font-size:14px background-color:rgb>nginx<span></span>: <span></span>wget http://nginx.org/download/nginx-1.0.12.zip<pmicrosoft yahei font-size:14px background-color:rgb>tar zxvf nginx-1.0.12.zip<pmicrosoft yahei font-size:14px background-color:rgb>cd nginx -1.0.12 <pmicrosoft yahei font-size:14px background-color:rgb> ./configure --add-module=<nginx-gridfsへのパス<pMicrosoft YaHei',Verdana,sans-serif,SimSun; font-size:14px; background-color:rgb(250,250,250)"><span></span>><span></span>make<pmicrosoft yahei font-size:14px background-color:rgb>sudo make install<pmicrosoft yahei font-size:14px background-color:rgb> コンパイルエラーがある場合は、<pmicrosoft yahei font-size:14px background-color:rgb>--を追加します-cc-opt=-Wno-error パラメーター。 <span></span><span></span>2. 設定<pmicrosoft yahei font-size:14px background-color:rgb>nginx<br><pmicrosoft yahei font-size:14px background-color:rgb>次の<span></span>を<pmicrosoft yahei font-size:14px background-color:rgb>server<span></span> location /pics/ の設定に追加します。フィールド=ファイル名<span><pmicrosoft yahei font-size:14px background-color:rgb> type=string; 、ファイル名を通じてファイルにアクセスします<pmicrosoft yahei font-size:14px background-color:rgb>filename<pmicrosoft yahei font-size:14px background-color:rgb>、<pmicrosoft yahei font-size:14px background-color:rgb>filename<pmicrosoft yahei font-size:14px background-color:rgb> タイプは<span></span>string<span></span><span>現在、</span>id<span></span>を介したファイルへのアクセスのみをサポートしています<span></span>ファイル名<span></span>。 <span></span>Start <pmicrosoft yahei font-size:14px background-color:rgb>nginx<span></span>: <span></span>/usr/local/nginx/sbin/nginx<span></span><span></span>MongoVUE<pmicrosoft yahei font-size:14px background-color:rgb>を使用して、<span></span>001.jpg<span></span>に写真をアップロードします写真<span></span>データベース内。 <pmicrosoft yahei font-size:14px background-color:rgb><span>Open: http://localhost/pics/001.jpg</span><span> 成功すると、表示された画像が表示されます。 </span><span></span><span></span>注意事項<span></span>1. <span></span>md5<pmicrosoft yahei font-size:14px background-color:rgb>同一のファイルの場合、<pmicrosoft yahei font-size:14px background-color:rgb>GridFSに1つのストレージのみを必要とする場合、GridFS<pmicrosoft yahei font-size:14px background-color:rgb>は自動的に処理しません。 <br>、必要ですユーザー様ご自身で対処してください。 Md5<h1microsoft yahei line-height:25.200000762939453px background-color:rgb> 値の計算はクライアントによって行われます。 <pmicrosoft yahei font-size:14px background-color:rgb><span>2. </span>GridFS<span></span>は、ファイルアップロードプロセス中に最初にファイルデータを<span></span>fs.chunks<span></span>に保存し、最後にファイル情報を<span></span>fs.files<span></span>に保存するため、ファイル処理が失敗すると、ジャンクデータが <span></span>fs.chunks<span></span> に表示される可能性があります。このジャンク データは定期的にクリーンアップできます。 <pmicrosoft yahei font-size:14px background-color:rgb><span> </span> 上記では、MongoDB の GridFS の側面を含む詳細な分析を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。 <span> </span> <span></span></pmicrosoft></pmicrosoft></h1microsoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></span></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></h1microsoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></h1microsoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></pmicrosoft></h1microsoft></h1microsoft></pmicrosoft></pmicrosoft></pmicrosoft></h1microsoft>