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

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

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

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

PHP

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

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Q&A

解決済

2回答

9072閲覧

ブラウザからlocalhostに接続できない(ERR_INVALID_HTTP_RESPONSE)

mango

総合スコア33

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

PHP

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

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

0グッド

1クリップ

投稿2018/10/07 12:40

編集2018/10/07 13:32

現状

localhostでは、PHPのサーバーが立ち上がっているのに、ブラウザからアクセスできない。
具体的にはページ(http://127.0.0.1:2222)が動作していない。
chromeで下記のエラーが表示される。

このページは動作していません localhost からデータが送信されませんでした。 ERR_EMPTY_RESPONSE

目標

ブラウザからlocalhostにアクセスできる。

一連の流れ

仮想マシンの立ち上げ。
OSを最新状態にアップデート。
スクリプトを入手するためのgitをインストール。
gitを使ってアプリケーション設定用のスクリプトをダウンロード、実行。
仮想マシンにアクセス。
webサーバー立ち上げ。

###やってみたこと
・ファイアウォール解除
・IPアドレス変更

###補足
使用しているツール
Mac
vagrant
virtual box
CentOS
Cyberduck

###ローカル環境状況

[vagrant@localhost mango]$ php -S 127.0.0.1:2222 PHP 7.1.22 Development Server started at Sun Oct 7 21:13:39 2018 Listening on http://127.0.0.1:2222 Document root is /home/vagrant/genevs Press Ctrl-C to quit.

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

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

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

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

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

wwbQzhMkhhgEmhU

2018/10/07 12:48

localhostは自身のホストを表す代名詞みたいなもので、普通の名前ではありません。
mango

2018/10/07 13:02

つまり、どこが間違っているのでしょうか?
wwbQzhMkhhgEmhU

2018/10/07 13:06

質問したいことが伝わってない可能性があるので。ブラウザがMacとCentOSのどちらで開かれているかがlocalhostだと分からないのです。
wwbQzhMkhhgEmhU

2018/10/07 13:07

ちなみにMac(ホスト)/CentOS(ゲスト)です。
mango

2018/10/07 13:12

変更しました
wwbQzhMkhhgEmhU

2018/10/07 13:17

すみませんが、127.0.0.1はlocalhostです。これも自身を表すIPv4になります。とりあえずブラウザがMacとCentOSのどちらで動いているのか書いてください。
mango

2018/10/07 13:25

初心者なんで詳しくは分からないですが、どうやって確認できますか?
wwbQzhMkhhgEmhU

2018/10/07 13:28

すみません。私にはこれ以上説明できません。
m.ts10806

2018/10/07 20:43

ブラウザをどちらで立ち上げているかという話かと。エラーコード「ERR_EMPTY_RESPONSE」や「ERR_INVALID_HTTP_RESPONSE」で検索すると様々な解決方法が出てきます。つまり原因は多岐にわたるということです。解決したいのであれば1つ1つ試して潰すか、他人の力を得たい場合、より詳細に自身の状況を伝えてもらわないといけません。この手の問題はよほどの熟練者であっても「これだ」と一発解決できるような人は中々いなくて、1つ1つ確かめながら問題を切り分けて潰していくしかありません。つまり「初心者でなくても難しいもの」です。そのようなものに手を出しているのですから、簡単にはいかないと思って肝に銘じて対応してください。
euledge

2018/10/08 12:19

仮想マシンを立ち上げたときのVagrantfileを提示してもらえますか?
guest

回答2

0

PHPの簡易webサーバが動いているのはvirtual boxの上で動いているVM、
chromeを開いているのはMac、という状況でしょうか。

(0) phpのWebサーバと通信できさえすれば応答は返ることがまだ確かではなければ、まずはそこを確認してみてください。php -S 127.0.0.1:2222 を動かしているのとは別のターミナルを開いて、vagrant sshでVMに接続し、MacではなくCentOSの上でcurl http://127.0.0.1:2222を実行します。(curlが入っていないならば、sudo yum install curlで入ると思います)
⇒ webサーバにアクセスできれば、HTMLソースにあたるテキストか、何らかのHTTPエラーのいずれかが返るはずです。その通りになり、かつ、Macからだとwebサーバが応答しないのであれば、ご質問における問題は、ホストOS(Mac)からゲストOS(VM上のCentOS)への通信ができていないことです。

(1) ホストOSからゲストOSへの通信は、vagrant(Vagrantfileの記載)で設定できます。
いくつか方法が考えられますが、単純なのは、Vagrantfileで
config.vm.network "private_network", ip: "192.168.33.10"
のように設定して、PHPのwebサーバはphp -S 192.168.33.10:2222で起動し、ブラウザからはhttp://192.168.33.10:2222にアクセスする方法です。
Cyberduckをお使いということは、Mac→VMにSFTPかなにかでファイルを配置していますか?だとすると、この設定が既にできているのではないでしょうか。その場合は、127.0.0.1ではなくCyberduckでVMへアクセスするのに使っているIPでアクセスができると思います。

※127.0.0.1で呼び出すことに必要(こだわり)があるならば、forwarded_portの設定で可能だと思います。

投稿2018/10/10 10:51

nasutter

総合スコア23

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

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

0

自己解決

再起動することで解決されました。

投稿2018/11/27 01:54

mango

総合スコア33

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問