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

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

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

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

PHP

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

Vagrant

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

Q&A

解決済

1回答

1566閲覧

バーチャルホストの設定を反映させたい

planetsman

総合スコア18

Apache

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

PHP

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

Vagrant

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

0グッド

0クリップ

投稿2019/06/18 03:28

バーチャルホストの設定を反映させたい

環境
MacOS Mojave 10.14.5
VirtualBox 6.0.0
Vagrant 2.2.3
CentOS Linux release 7.6.1810 
Apache/2.4.6
PHP 5.4.16
mysql5.7.26

PHPの参考書を見ながら開発環境の構築を行っているのですが、バーチャルホストの設定がうまくいきません。
VirtualBox+VagrantにCentosを構築。
Apache,PHP,Mysqlは上記のバージョンをインストールしました。

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

イメージ説明

試したこと

  • ドキュメントルートを/var/www/study.localhostに設定。
$ sudo mkdir /var/www/study.localhost $ sudo chown apache:apache /var/www/study.localhost
  • /var/www/study.localhost内にindex.htmlファイルを作成し、以下入力。
$ sudo vi /var/www/study.localhost/index.html <h1>Hello, World!</h1>
  • Apacheのバーチャルホストの設定。

/etc/httpd/conf.d/vhosts.confを作成し、設定を記述。

$ cd /etc/httpd/conf.d $ sudo touch vhosts.conf $ sudo vi vhosts.conf NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot /var/www/study.localhost ServerName study.localhost DirectoryIndex index.php index.html <Directory "/var/www/study.localhost"> AllowOverride All Allow from All </Directory> </VirtualHost>
  • hostsにドメインを設定

/etc/hostsを開き、以下の文を追加

127.0.0.1 study.localhost

これでブラウザからhttp://study.localhost/にアクセスできるようになるという手順に沿っていますがうまくいきません。

Vigrantfileで設定している192.168.33.10のIPアドレスをブラウザに入力すると/var/www/study.localhost内のindex.htmlの内容が表示されます。

補足情報(その他試したこと)

  • SELINUX無効の設定。

  • /etc/httpd/conf/httpd.confの変更

/etc/httpd/conf/httpd.confに名前ベースのバーチャルホストの待受けをすることを宣言。
全ての80番ポートへのアクセスに対して有効になるように、Listen 80 の記述の後に追記。

Listen 80 NameVirtualHost *:80 //追加

その他にもServerName example.jp:80部分をサーバーのホスト名を指定する変更を加えたりなど試しましたが特別変化は無し

  • vagrant-hostupdaterのインストールとVagrantfileの編集

vagrant-hostupdaterのインストール
vagrantfileへの記述を追加。

config.vm.network :private_network, ip: "192.168.33.10" config.vm.hostname = "study.localhost" config.hostsupdater.aliases = ["study.localhost"]

vagrantの再起動後、/private/etc/hostsをみると設定が追加されているが、ブラウゼへのアクセスはできませんでした。

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

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

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

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

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

guest

回答1

0

ベストアンサー

ブラウザからhttp://study.localhost/にアクセス

はMacでのオペレーションでしょうか。
その場合、study.localhostの名前解決はMacで行いたいので、hostsファイルの設定はMacのものが対象となります。(CentOSではない)

投稿2019/06/18 04:10

yukky1201

総合スコア2751

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

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

planetsman

2019/06/18 05:18

ご回答頂きありがとうございます。 Mac側のオペレーションだと思います。 その場合ですとMacのhostsファイルに設定を行えば反映されるということなのでしょうか?
yukky1201

2019/06/18 05:55

はい。試してみてください。
planetsman

2019/06/19 00:44

ご助言頂いた通り、Mac側のhostsファイルを編集し解決致しました。 ※ホスト名をstudy.localhostではなくstudy.comとしたところ上手く反映がされました ご回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問