質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.35%
Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

nginx

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

1回答

2774閲覧

サーバーのpublicフォルダに画像ファイルを置いてよいのか

fdaskjlfda

総合スコア40

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

nginx

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

1クリップ

投稿2021/09/26 07:46

編集2021/09/26 07:54

環境

Linux20.04
React JS
Nignx

フォルダ構成

> public > index.html > manifest.json > src > assets > icon > 画像ファイルたくさん > 他のフォルダ > atoms > Avatar.js > pages > HomePage.js > index.js

やりたいこと

TwitterのようなSNSアプリを勉強用に作ろうとしています。
作る機能は、ログイン、プロフィール表示、投稿です(タイムラインは実装しない予定です)。
ユーザーが登録したアイコンをどのフォルダに保存すればよいかがわからず、質問させていただきました。

質問させていただきたいこと

TL;DR

  • アイコンなどプライバシーに関するデータをpublicフォルダの中に入れてもよいのか(お作法的に)
  • 入れても良い場合、publicフォルダの中のデータにssh権限を持たない人はアクセスできるのか
  • 例えば、publicのindex.htmlは通常のPermissionだと閲覧可能だが、同じようにしてpathさえわかればアクセスできるのではないか
  • publicとsrcの使い分けはどうすればよいのか
  • サーバーのフォルダ構成がどうなっているのか、どう使い分ければよいかがカイてあるサイト、もしくは調べることのできる検索キーワード

を教えていただけると嬉しいです。

詳細

npx create-react-appをすると、public,srcフォルダが作成されると思います。サンプルコードなどを見る限り、画像はsrcフォルダにassetsというフォルダを作成し、その中に画像を置いてあることが多いです。
ですが、ReactJSで画像の相対path(例えば、Aavatar.jsから../assets/icon/画像ファイル名を表示する)を指定したところ、画像が表示されずaltタグで指定した文字が表示されていました。
色々試したところ、どうやらindex.htmlがあるpublicのフォルダの中からの相対pathとして読み込まれていることがわかりました。

ReactJSで色々検索しても、publicフォルダの画像にアクセスする方法は書いてあっても、srcフォルダの画像にアクセスする方法は相対path以外書かれていないことが多いです。

初心者で、サンプルコードと、実際の仕様が違っていて混乱しています。
どうか宜しくお願い致します。

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

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

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

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

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

guest

回答1

0

自己解決

いろいろ調べてたら何もわかっていない質問だと気づきました。
ReactJSはフロントエンドなのに画像保存できるわけないですね。
普通バックエンドとAPI用意してそちらに任せるのが普通ですね。

焦ってて視野が狭くなってました。

投稿2021/09/26 08:15

fdaskjlfda

総合スコア40

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問