2021/2/6追記: 新コンソールではS3でのCORS設定はJSONで記述する必要がある CORSとは何か Cross-Origin Resource Sharing、オリジン間リソース共有。 ブラウザで閲覧しているページと違うドメインからのリソースの取得を許可する仕組み。 ちゃんと知りたい場合は、W3C勧告を読むのが早い。 なぜCORSがあるのか 他のサーバーからデータを取得して、任意のコードを実行される等のセキュリティ上の問題があるから。 ただし、これらはブラウザの実装であり、例えばサーバー同士で直接遣り取りする場合は関係無い。 また、他ドメインからのデータ転送を防いだからと言ってセキュリティ上の問題が無くなるわけでは当然無く、どちらかと言うと「そういう仕組みがあるんだな」という捉え方でいるほうが良いと思われる。 CORS対応はデータを呼ばれる側で行う。 <?xml version=
CloudFront から (出力された)「リクエストされたリソースに「Access-Control-Allow-Origin」ヘッダーが存在しません」というエラーは、どうすれば解決できますか? 解決策 オリジンのクロスオリジンリソースシェアリング (CORS) ポリシーで、オリジンに Access-Control-Allow-Origin ヘッダーを返すことが許可されていることを確認します **注:**AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、使用している AWS CLI が最新バージョンであることを確認してください。 次のコマンドを実行して、オリジンサーバーから Access-Control-Allow-Origin ヘッダーが返ることを確認します。**example.com ** を必要なオリジンヘッダーに置き換えてください
こんにちは! SmartHRのエンジニア、溝上といいます。 今回は通常の業務と合わせて行っている開発環境の改善、その一部である Sprockets 絶ちを紹介していけたらと思います。 現在進行中のため、不定期な連載になる予定です! Sprockets とは? Rails 3.1 から導入された gem で、アセットファイル(JS, CSS, 画像など)を効率的に管理するための Asset Pipeline という仕組みの基盤です。 主な機能は以下のような物があります。 アセットファイルのパス管理 アセットファイルの結合・圧縮 アセットファイルの依存関係の解決 アセットファイルのコンパイル 最終的に出力するファイルに hash を付けてキャッシュを無効化 などなど。 なぜ Sprockets と別れたいのか? この記事を読んでくださっている方ならそれぞれの理由があるかと思います。 Smart
Rails4のproduction環境でのみ、画像が表示されない問題 問題の概要 先日、弊社サービス STORYS.JP をRails3からRails4.0.2にアップデートしました。 Rails4はRails3に比べて、development環境でのページロードにかかる時間が1/10ぐらいになりました。 読み込みに 1500ms ほどかかっていたのが、Rails4にするだけで本番並みの 150ms で返ってくるようになり、本当に非常に快適に開発ができるようになりました。 しかし、便利なものには弊害も多く、様々な問題がおきます。 その中でも、解決に苦しんだ問題が、 これまでは正常に表示されていた画像が、Rails4のproduction環境でのみ表示されない問題 です。 問題の原因 問題の原因は、 app/assets/images 以下に置いてある画像を直接パスを指定して読み込んでいるこ
Additional ResourcesHomeElementsProductsPricingCareersHelpStatusEventsPodcastsCompliance CenterHeroku BlogHeroku Blog Find out what's new with Heroku on our blog. Visit Blog Using Asset Sync can cause failures. Heroku recommends using a CDN instead of asset_sync whenever possible. The asset sync gem uploads your assets (images, CSS, JavaScript) to a third party file store such as S3. From there, y
もう二度とasset pipelineで苦しみたくないので、問題切り分けの手順をまとめたい。 (asset pipelineのおおかた理解してる人は5->1の順で切り分けていったほうが効率的かもです) 1. assetsパスの確認(アセットパイプラインで配信したいコンテンツがassetsパスに入っているか?) 当然ですが、app/controllersやdb/migrateなどの下に画像ファイルを置いても、アセットパイプラインでコンテンツ配信することはできません。 では、どこにアセットを置けば配信できるのか? assetsパスに置く必要があります。 確認方法 アプリケーションの現在のassetsパスは以下のように確認できる rails c $> Rails.application.config.assets.paths => ["/vagrant/shared/test_app/app/a
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く