🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

719閲覧

Puma + Nginx + Railsで一定のファイルサイズ以上の画像が表示されない

lyzmfeqpxs54

総合スコア237

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2019/11/30 07:31

いつもお世話になっております。
現在RailsでWebページを作成しております。

下記コードのように画像を表示させているのですが、画像ファイルが大きい場合に画像が表示されなくなってしまいます(alt属性の文字が表示される状態です)。
10kByte程度なら問題なく画像が表示されるのですが、500kByteでは表示されませんでした。

5M、10Mの画像で起こるならまだわかるのですが、500k程度の画像を表示できないのはおかしいと思い、いろいろと調べてみたのですが分からずこちらに質問させていただきました。

画像が表示されないのは、Nginxをかませている時で、
$ sudo systemctl start nginx
でNginx起動状態で
$ bundle exec pumactl start
でRailsを起動している状態で起こります。

Puma + Railsだけで立ち上げるようにするため
$ sudo systemctl stop nginx
でNginxを停止し、
$ sudo ~/.rbenv/versions/2.6.1/bin/bundle exec rails s -b 0.0.0.0
でRailsを起動している状態だと画像は大きさに関係なく表示されます。

Rubyではシンプルに以下のように表示させており、htmlの出力も以下のように問題はなさそうに見えます。

Ruby

1#show.html.erb 2<%= image_tag "xxxx.png" alt="xxxx.png画像大きいと表示されない" %>

html

1<img src="../images/xxxx.png" alt="xxxx.png画像大きいと表示されない">

どのようなことが考えられますでしょうか。
解決策が全く見つからず、難航している状態です。

参考になるサイトでも構いませんので、適切な方法をご教示いただけますと幸いです。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

take88

2019/11/30 13:40

curl -v '画像のURL` を実行して結果を追記してもらえますか? curl が使えなければ、ブラウザで画像のURLを直接開いて、表示されるステータスや、エラーメッセージがあれば それを教えてください。
lyzmfeqpxs54

2019/12/01 13:17

ご回答ありがとうございます。 一度Nginxを停止、pumaのみでRailsを起動してサイトをある程度作成した後、もう一度Nginxとの連携を行ったのですが、画像が表示されるようになってしまいました。 何かの設定だったのか、原因がわからない状態なので、ひとまず何日か様子を見たいと思います。 ご親切な対応をしていたただいたのに、大変申し訳ございません。 問題が解決したようでしたら一旦この質問はクローズしたいと思います。
guest

回答1

0

自己解決

/etc/nginx/nginx.confに下記を記載することで解決いたしました。

location {
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Real-IP $remote_addr;
}

投稿2019/12/09 06:15

lyzmfeqpxs54

総合スコア237

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問