0

ユーザーが自分のコンテンツを RoR アプリケーションにアップロードできるようにし、その後、次のような静的コンテンツにアクセスできるようにするにはどうすればよいですか。

  1. [Rails経由のオーバーヘッドを回避するため] APACHE Webサーバーによって提供されますが、

  2. コンテンツにアクセスする前に認証/承認チェックを実行したい

制約は、ApacheファイルにしかアクセスできないDreamHost共有プラットフォームを使用しており、独自の Apache モジュールを追加できないことです。.htaccess

4

1 に答える 1

1

次のような静的コンテンツへのリダイレクトを行うことができます

class ImagesController
  def show
    @image = Image.find(params[:id])
    if user_has_access_to @image
      redirect_to @image.bizarre_and_secret_image_location_that_is_served_by_apache
    else
      access_denied
    end
  end
end

確かに、コンテンツを完全に保護するわけではありません。静的 URL を一時的にすると役立つ場合があります。

RewriteRule ^/images/RANDOMIZED_PREFIX_HERE/(.+)$ images/SECRET_IMAGE_LOCATION/$1 [L]

....htaccessファイルを 1 時間ごとに変更します。もちろん、アプリケーションもプレフィックスを認識している必要があります。

于 2009-09-23T11:11:18.470 に答える