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

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

詳細はこちら
bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

1381閲覧

php.iniに情報が記載されていない

hiroki88

総合スコア66

bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2021/02/06 11:30

現在docker環境内でLaravelを使用しアプリを作成しております。
その際にファイルをアップロードする場面があるのですがアップロードした時に413 (Payload Too Large)
エラーが表示されてしまいました。
原因はnginx、phpのデフォルトの設定でアップロードの上限が決まっていると分かったのでnginxの方は
修正ができました。次にphpの方を修正しようと思い下記の手順で修正を行おうとしました。

Terminal

1php -r 'phpinfo();' 2//表示内容抜粋 3//POST上限値 4post_max_size => 8M => 8M 5//アップロード上限値 6upload_max_filesize => 2M => 2M 7 8php -r 'phpinfo();' | grep php.ini 9//表示内容 10Configuration File (php.ini) Path => /usr/local/etc/php 11Loaded Configuration File => /usr/local/etc/php/php.ini 12 13cd /usr/local/etc/php 14//php.iniがあるフォルダまで移動 15 16ls 17//php.iniがある事を確認 18conf.d php.ini php.ini-development php.ini-production 19 20vi php.ini 21//表示内容 22[Data] 23data.timezone = "Asia/Tokyo" 24[mbstring] 25mbstring.internal_encoding = "UTF-8" 26mbstring.language = "Japanese"

php -r 'phpinfo();'で情報を確認した時はサイズの上限値以外に基本的な情報は全て表示されました。
しかし実際にphp.iniファイルを書き換えようとviでファイルを開いたら情報がdataとstringしかありませんでした。
これは他のファイルに記載されているのでしょうか?
なぜphpinfo()と実際のファイルの中身が違うのでしょうか?
サイズの上限値を変更したいので分かる方がいたらご教示頂きたいです。

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

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

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

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

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

guest

回答1

0

ベストアンサー

これは他のファイルに記載されているのでしょうか?
なぜphpinfo()と実際のファイルの中身が違うのでしょうか?

iniのあるディレクトリ配下全て確認済みですね?それでも記載の無い項目についてはデフォルト値が適用されます。

webで使われる設定値はnginx,php-fpm,apacheなどのミドルウェアや、phpファイル(勝手にlaravelに握られている値)の順に上書きされるので、それらのどこかで設定されている可能性もあります。

なので確実なのは、動作しない処理の書いてある箇所でini_setでもして対応する事です。

変更を適用したい箇所を適切に判断出来るようになればミドルウェアで変更したりphp.iniで変更したりと変更する箇所(範囲)を広げていくのもGOODです。

投稿2021/02/06 11:47

hentaiman

総合スコア6426

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

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

hiroki88

2021/02/06 14:23

iniのあるディレクトリ配下全てのファイルは確認できていなかったので確認いたしました。 そうしたらphp.ini-development ,php.ini-productionファイルに post_max_size => 8M => 8M upload_max_filesize => 2M => 2M の記述があったので変更してdockerを再起動してphpinfoで 表示させてみたのでが変更前の内容のままでした。 ini_setのリンクを確認したのですがこれはphpファイルに記述して行うものなのでしょうか? これを行うとphp.iniの値が変更されるんでしょうか? かしこまりました。正直自分で開発を行うときに設定値などはあまり気にしなかったので変更を適用したい箇所、変更を行う場所を覚えていきたいと思います。
hentaiman

2021/02/06 14:45

そこで設定するならphp.iniにリネームしなせえ > ini_setのリンクを確認したのですがこれはphpファイルに記述して行うものなのでしょうか?これを行うとphp.iniの値が変更されるんでしょうか? YES.そのファイルを実行してini_setの処理を実行した後からファイルの実行が終わるまでの間上書きされます。ファイルアップロードする時だけini_setで設定変更すればアップロード処理の時だけ許容量が増えるという良い感じの変更ができます。 ini_setで設定出来ない項目もありますが、その辺のことはphpマニュアル見てください。
hiroki88

2021/02/07 04:00

ini_setの設定をしてみたのですが上手くいかなったのでphp.iniに直接追加したら上手く動作しました。 phpinfoで表示させた時も変更された内容が表示されました。 前回に続き今回もご教示いただきましてありがとうございます!! 大変勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問