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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

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

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

HTML

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

Q&A

0回答

1370閲覧

AWS Elastic Beanstalk 404 Not Found について PHP

kotaue

総合スコア14

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

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

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

HTML

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

0グッド

0クリップ

投稿2020/06/17 04:48

前提・実現したいこと

AWS Elastic Beanstalkでwebアプリケーションを作成しています。

表題の通り、404 Not Found に悩まされています。

FWはBEAR.sundayを使用しており、
以下の公式HPでは

ルーターの設定やスクリプトは必要なく
/done のリクエストは {Vendor名}{Project名}\Resource\Page\done クラスを呼び出すとのことですが、
(Page下にDone.phpがある)

ローカル環境では、クラスが呼び出されるが、
EC2上だと 404 not foundになってしまう。
(ドキュメントルート下にdoneなんて無いというエラー)

ローカル環境の
http://localhost:8080/done?id=1
では正しくクラスが動いて処理されるが

AWSでの
http://環境名.elasticbeanstalk.com/done?id=1
では動いてくれません。

**__http://環境名.elasticbeanstalk.com/__** での初期表示自体はできており、
doneボタンを押した時の処理になります。

アプリは以下の記事を参考にローカルで作り、
CodePipelineでElastic Beanstalkでデプロイしています。
デプロイする際に.ebextensionsフォルダにconfigファイルを置いてドキュメントルートを設定していますが
なにか他に設定するべきでしょうか。

https://polidog.jp/2016/04/29/bear/

BEAR.sunday(公式)
http://bearsunday.github.io/manuals/1.0/ja/router.html

この方法で動かせるのがベストでは有りますが、
とりあえずは何かしら別の方法で動かならば、そちらもご教授して頂けたらありがたいです。

発生している問題・エラーメッセージ

2020/06/17 13:03:09 [error] 15112#0: *2027 open() "/var/www/html/プロジェクト/delete" failed (2: No such file or directory), client: 172.32.13.253, server: , request: "GET /delete?id=1 HTTP/1.1", host: "環境"

該当のソースコード

twig

1{% extends 'layout/base.html.twig' %} 2 3{% block content %} 4 <h1 class="page-header">タスク</h1> 5 <div class="row"> 6 <div class="col-sm-8"> 7 <div class="panel panel-default"> 8 <div class="panel-heading">タスク一覧</div> 9 <div class="panel-body"> 10 {% if todos %} 11 <table class="table"> 12 <thead> 13 <tr> 14 <th>Id</th> 15 <th>Title</th> 16 <th>CreatedAt</th> 17 <th> </th> 18 </tr> 19 </thead> 20 <tbody> 21 {% for todo in todos %} 22 <tr> 23 <td>{{ todo.id }}</td> 24 <td>{{ todo.title }}</td> 25 <td>{{ todo.createdAt|date("Y/m/d H:i:s") }}</td> 26 <td> 27 {% if todo.status == 1 %} 28 <a class="btn btn-success" href="/done?id={{ todo.id }}">Done</a> 29 <a class="btn btn-danger" href="/delete?id={{ todo.id }}">del</a> 30 {% endif %} 31 </td> 32 </tr> 33 {% endfor %} 34 </tbody> 35 </table> 36 37 {% else %} 38 <div class="panel-body"> 39 <p>タスクがありません</p> 40 </div> 41 {% endif %} 42 </div> 43 </div> 44 45 </div> 46 <div class="col-sm-4"> 47 <div class="panel panel-default"> 48 <div class="panel-heading">新規作成</div> 49 <div class="panel-body"> 50 {{ todo_form|raw }} 51 </div> 52 </div> 53 </div> 54 </div> 55{% endblock %} 56 57

試したこと

href="/done"をして時に、
対象のクラスを動かすというBEARの処理がおかしいのかという点で
SSH接続でEC2に入り、その中でBEARのプロジェクトを作成
それを一度ローカルに持って行き、対象のソースを修正して再度EC2にデプロイしましたが、変わりませんでした。
composer create-project -n bear/skeleton MyVendor.MyProject

補足情報(FW/ツールのバージョンなど)

プラットフォーム
PHP 7.4
FW BEAR.sunday

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問