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

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

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

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

AWS(Amazon Web Services)

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

Q&A

解決済

3回答

1064閲覧

Apacheが正常に動かない。

hero111111

総合スコア13

Apache

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

AWS(Amazon Web Services)

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

0グッド

0クリップ

投稿2019/06/18 06:26

編集2019/06/19 03:17

現在はAWSを使ってインスタンスをコマンドコロンプトに接続し、httpdをインストール、起動、
PHPをブラウザに表示することが昨日まではできましたが、
現在機能せず、どうすればいいか分かりません。
Linux Amazon OSを使っています。

行ったコマンドは
sudo service httpd start
Starting httpd:

sudo service httpd status
httpd (pid ***) is running...

sudo service httpd stop
Stopping httpd: [ OK ]

sudo service httpd start
Starting httpd: [ OK ]

しかしブラウザ上では、

エラー!: SQLSTATE[HY000] [2002] Connection timed out

念のために、再起動もしました。

sudo service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]

しかしブラウザの表示は変わらず。
ちなみにhttpdの状態は

sudo service httpd status
httpd (pid ***) is running...

です。

ちなみDBに繋げているphpのコードは

<?php try { $dbh = new PDO('myaql:host=RDSのエンドポイント ;dbname=simple_blog', "ユーザー名", "パスワード"); //myaqlが原因かもしれない// $sth = $dbh->prepare("SELECT * from posts"); $sth->execute(); $posts = $sth->fetchAll(); $dbh = null; } catch (PDOException $e) { print "エラー!: " . $e->getMessage() . "<br/>"; die(); } とエンドポイントの部分は変えましたが、接続はできていません。 別のサブネットもありますがインスタンスが違いますので、Apacheの接続には影響ないと思います。 何か解決法があるのであれば教えてください。

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

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

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

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

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

yukky1201

2019/06/19 01:40

PHP内でDBへ接続する処理がNGになっているようですので、DB接続箇所のコードを質問に追記してください。
hero111111

2019/06/19 02:53

分かりました! 接続部分だけ載せます。
yukky1201

2019/06/19 03:57

追記いただいたコードは、コピペしてますか? 「myaql」と誤記ありますが、実際はどうでしょうか。 $dbh = new PDO('myaql:host=RDSのエンドポイント ;dbname=simple_blog', "ユーザー名", "パスワード");
hero111111

2019/06/19 04:37

コピペしているときに気づきました。 コードを直しましたが、そのあとは再起動か何かしたほうが良いですか?
guest

回答3

0

改善前)
$dbh = new PDO('myaql:host=RDSのエンドポイント ;dbname=simple_blog', "ユーザー名", "パスワード");

改善後)
$dbh = new PDO('mysql:host=RDSのエンドポイント;dbname=simple_blog', "ユーザー名", "パスワード");

・mysqlがmyaqlになっていたこと
・エンドポイントの後にスペースがあったこと

投稿2019/06/19 06:07

hero111111

総合スコア13

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

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

0

mysqlを使っているようでしたら、そことの接続が巧くいっていないようです。
接続の定義をご確認ください。

投稿2019/06/18 06:49

nagaetty

総合スコア1106

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

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

hero111111

2019/06/18 09:30 編集

返信ありがとうございます! 細かく聞いて申し訳ありませんがRDSのインスタンスは起動していまして、 セキュリティグループもwebサーバと繋いであります。 実際にコマンドからも繋ぎましたが、Apacheが接続されず。 操作は間違っていませんか? よろしくお願いします。
nagaetty

2019/06/18 12:36

mysql -h エンドポイント -u root -p でつながらない場合は、どんなエラーが表示されたのか? 具体的に書くと、色々とわかるかと思います。より詳しい情報を提示するとよいかと思いますよ!
hero111111

2019/06/19 01:10

webサーバからmysql -h エンドポイント -u  root  -pで繋がりますので、 セキュリティグループの接続は合っていると思います。 あとはRDSのスナップショットからインスタンスを立てたときにエンドポイントが変わってますので、多分どこかで設定してあるエンドポイントも変えなければいけないと思います(どこかは分かっていませんが)
guest

0

ベストアンサー

MySQL等のRDBMSに接続出来ていないというエラーです。

使用しているRDBMSを起動してみてください。

投稿2019/06/18 06:44

tanat

総合スコア18709

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

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

hero111111

2019/06/18 09:32 編集

返信ありがとうございます! 細かく聞いて申し訳ありませんがRDSのインスタンスは起動していまして、 セキュリティグループもwebサーバと繋いであります。 コマンドからもmysql -h エンドポイント -u root -p という形で繋ぎました。 しかしつながらないのですが、操作方法間違っていませんか? よろしくお願いします。
tanat

2019/06/18 09:44

コマンドから mysql -h エンドポイント -u root -p とする確認方法は正しいです。 ですので セキュリティグループの設定が間違っている(以前とインスタンスやネットワークの状況が変わっている等) エンドポイントが間違っている(RDSを一旦削除して作り直してエンドポイントが変わった等) あたりが怪しいところかなと思われます。
hero111111

2019/06/19 01:43

IPアドレスが違うケースやエンドポイントが変わったのでどこかで設定してあるエンドポイントも変えなければならないですよね。(どこの設定を変えなければならないのかは分かりませんが) ちょっとそこら辺を探ってみます。
tanat

2019/06/19 02:43

> IPアドレスが違うケースやエンドポイントが変わったのでどこかで設定してあるエンドポイントも変えなければならないですよね。 そうですね。コマンドラインから接続が出来てるのであれば、アプリケーション側で設定されているであろうエンドポイントを変更することになりますね。
hero111111

2019/06/19 02:51

ちなみにですが、sudoを抜いてservice httpd startさせたところ、 Starting httpd: (13)Permission denied: AH00058: Error retrieving pid file /var/run/httpd/httpd.pid AH00059: Remove it before continuing if it is corrupted.となりました。 この原因は結局、DBとの接続が悪いからこうなるものですが? 聞いてばかりですいません。
tanat

2019/06/19 05:10

> ちなみにですが、sudoを抜いてservice httpd startさせたところ、 それはDBとは関係無いです。 エラーメッセージにある通り、権限の問題です。 sudoを抜いてservice httpd start は普通出来ないのが正しいので、sudoしてください。
hero111111

2019/06/19 05:56

ありがとうございます! 変なところで悩んでいました。 やっと解決することができました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問