1. 写真の URL を正しく検証するには?
URL の形式を検証するプラグインを使用するか、自分で記述できます。
validates_each :photo_url do |record, attr, value|
begin
uri = URI::parse(value)
record.errors.add(nil, 'Sorry, you may only use http/https links') if (uri.class.to_s =~ /URI::HTTPS?/).nil?
record.errors.add(nil, 'The url must point to a picture') unless value =~ /\.(png|jpg|jpeg)$/i
rescue URI::InvalidURIError
record.errors.add(nil, 'The format of the url is not valid')
end
end
2. セキュリティの問題? XSS?
テキストをエスケープする限り、顕著なセキュリティ上の問題はありません。
<%=h image_tag obj.photo_url %>安全です。ユーザーは引き続き 100MB の画像を使用できるため、すべての訪問者の速度が低下することに注意してください。
3. API を備えた無料のアセット ストアがあるかもしれません。
私が知っているものはありませんが、ラックスペース クラウド、Amazon s3 ホスティングはかなり安価です。一部の画像アップロード プラグインはこれら 2 つをサポートしているため、少なくとも時間を節約できます。