Cloud Filesが壊れたときにローカルイメージにフォールバックしますか?


12

Rackspace Cloud Files PHP APIを使用して、アップロードされたすべてのファイルをRackspace Cloud Files(CDN)に保存するCloud Filesモジュールを使用しています。すべてうまくいきます。

しかし、今日、Rackspace自体にはAPIに関連する機能停止があり、サイト全体が破損しました。私のサイトがついに公開されたとき、私はこれを絶対に起こせません。問題が発生した場合、管理ページで設定を切り替えることができ、ローカルファイルの使用を開始できるように、ファイルをローカルおよびクラウドファイル内に保持する方法はありますか?問題?


CDNモジュールではなくクラウドファイル(ラックスペース固有)の使用を選択したことに興味があります。CDNモジュールにはフォールバックがありませんか?私はCDNのプロではありません。
ダンカンムー

1
Cloud Filesモジュールを使用したのは、実際にファイルをRackspaceに転送するのに対し、CDNモジュールは処理しないためです。CDNでは、転送を行うためにFile Conveyorと呼ばれる外部アプリケーションが必要です。サイトを壊さずにFile ConveyorをCloud Filesで動作させるのに何の問題もありませんでしたので、簡単なソリューションを採用しました。
ケニーワイランド

2
モジュールの問題ページで機能のリクエストとしてこれを尋ねるのが良いかもしれません。理論的には、Rackspaceクラウドにファイルの提供に問題がある場合、「404」応答を返す必要があります。その場合、モジュールはローカルファイルシステムにフォールバックする必要があります。これはモジュール開発者ができると思います。
ANDiTKO

CDNモジュールは、「File Conveyor」モードと「Origin Pull」モードの両方をサポートしています。原点プルは自動ですが、ファイルコンベヤーは自動ではありません。Rackspaceクラウドファイルはファイルコンベヤーのみをサポートするため、ファイルの転送を自動的に処理する特定のモジュールが必要です。
マイク

回答:


6

JavaScriptでは、画像のonerrorイベントリスナーをリッスンできます。

ソースを通常に設定します。onerrorで、this.srcをローカルイメージパスに設定します。

<img src="//somecdn.com/cat.jpg" onerror="this.src='/localpath/cat.jpg';" />

jqueryを使用してページ上のすべての画像をループし、onerrorイベントリスナーを追加できます。


まさに私が探していたものではありませんが、それでも合理的な解決策です。
ケニーワイランド
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.