検索

ホームページ  >  に質問  >  本文

php - 数据库存图片,是存图片名称?还是存图片路径??

数据库存图片,是存图片名称?还是存图片路径??

问题如上,之所以会有这么个疑问,目前图片是在本地服务器上存的,但是以后若是业务规模扩大,那图片肯定是要迁移到云存储服务上的,那个时候图片路径会改动,我怕原有网站图片显示,全部挂掉...。

不知道,大家存图片到数据库的时候,是存图片名称(test.jpg) 还是 存图片路径(一般都是 /Data/UploadImage/2017-04-14/test.jpg)??

存图片名称的话,以后,路径改动,直接修改图片路径的代码就解决了。

存图片路径的话,以后,路径改动,要更新数据库中所有图片的路径才能够解决。

不知道你们在上传图片后,保存图片的时候,是怎样保存的呢??

大家讲道理大家讲道理2863日前1992

全員に返信(6)返信します

  • 黄舟

    黄舟2017-04-17 16:54:36

    私は
    パス、名前、サフィックスを個別に保存することに慣れていますが、完全な URL のフィールドがあります。つまり、上記のすべてを接続する

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 16:54:36

    ご質問から判断すると、最初に画像の相対パスがデータベースに保存されているため、将来的にサードパーティの画像サービスを保存したい場合は、それを置き換えるスクリプトを作成するだけで済みます。サードパーティの画像アドレスをバッチで取得したい場合は、サードパーティの画像サービスを使用できるようになりました

    返事
    0
  • 迷茫

    迷茫2017-04-17 16:54:36

    これは通常、画像パスを独自のデータベースに保存します。画像が多すぎる場合、どのくらいのスペースが必要になりますか?実際の写真は、Qiniu などのサードパーティ プラットフォームに保存できます。実装のアイデアは次のとおりです。まず Qiniu Cloud Server にアップロードし、保存されているパス強度を取得し、それを独自のデータベースに保存します。

    返事
    0
  • 阿神

    阿神2017-04-17 16:54:36

    画像を保存する現在の一般的な方法は、画像リソースを画像サーバーに均一にアップロードしてから、データの量が非常に大きい場合は、ハッシュ値に基づいて別のテーブルに保存することです。 。プロジェクトで使用する場合、すべての画像はimages.xxx.com/path.pngを使用してロードされます。さらに、画像サーバーを使用せず、専用のドメイン名を使用する場合は、Web サイトのルート ディレクトリにリソース フォルダーを作成し、パスが使用されるすべての場所に「/」を使用してここにすべてを保存することができます。移行を容易にするためにルート ディレクトリから開始すると、パスの問題は発生しません。

    返事
    0
  • 阿神

    阿神2017-04-17 16:54:36

    自分のサーバーに保存する場合は、データ ライブラリの相対パス! 移行してもドメイン名を変更しても問題はありません。ドメイン名を変更するだけで済みます。フルパスを保存してドメ​​イン名の IP を変更すると、悲惨なことになります。 >

    サードパーティに保存すると、この ID を直接保存するだけで、必要な写真を取得できます。

    返事
    0
  • 巴扎黑

    巴扎黑2017-04-17 16:54:36

    ローカル サーバー上の画像の場合は、プロジェクトのルート ディレクトリに対する相対パス (/upload/20170413/xxxx.png など) を保存します。これには 2 つの利点があります。 1. 直接使用できます。フロントエンドで参照する場合(nginxなどの設定ルートがプロジェクトパスであることが前提です)。 2. プロジェクトを移行する場合、大きな問題なく直接移行できます。
    サードパーティのアドレスの場合は、完全なアドレスを直接保存してください (http://img.xxx.xx.qiniu.com/x... など)。サードパーティは介入できません。アドレス移行の話も出るでしょう。

    返事
    0
  • キャンセル返事