teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

追記

2021/08/04 07:37

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -41,8 +41,10 @@
41
41
  echo json_encode($result);
42
42
  //実際には例外の種類で先にハンドリングする
43
43
  }catch (Exception $e){
44
- header('HTTP/1.1 500 Internal Server Error');
44
+ header('HTTP/1.1 500 Internal Server Error');//500なり503なり404なり状況に合わせて出力
45
45
  $err = [];//JavaScriptに見せたい範囲でエラーを記述したり、例外から判定して生成する
46
46
  echo json_encode();
47
47
  }
48
- ```
48
+ ```
49
+
50
+ ただ、前述の通り、SQLシンタックスエラーを出したりするのは攻撃者に不要なヒントを与えることになるので少なくとも本番環境では表示するべきでは無いと思います。

1

追記

2021/08/04 07:37

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  JavaScriptに渡される=エンドユーザーが見ようと思ったら見れちゃうわけなので、
5
5
  開発に必要な詳細情報(例えばSQLのシンタックスエラーが出ています!みたいなエラーメッセージ)を表示するのが正しいかと言うとそうでは無く、
6
- まだ現状のデフォルトのエラーメッセージが出てる方がマシだと言えます。
6
+ まだ現状のデフォルトのエラーメッセージが出て(質問内容からはそのように見える)方がマシだと言えます。
7
7
 
8
8
  エラーやNotice,Warningはサーバ側でログに記録しておいて、開発する時はサーバ側でtail -f しながら開発するのが良いかと思いますよ。
9
9