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

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

ただいまの
回答率

90.48%

  • Linux

    4514questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • Apache

    2133questions

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

  • HTTP

    654questions

    HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

  • XAMPP

    628questions

    XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

  • FuelPHP

    554questions

    FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。

Xamppにおいて、Apacheのバーチャルホストの設定でBad Requestが出る

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 3,809

tama2015

score 51

LinuxXampp
http://hoge_hoge/ へのアクセスが
/opt/lampp/hoge_hoge/fuelphp/public/index.php
へのアクセスとなるように設定したいです。

Apacheバーチャルホストの設定を以下のように
行いましたが、ブラウザでアクセスすると、
Bad Requestが表示されてしまいます。

何か、足りない設定など、わかる方がいらっしゃい
ましたら、ご回答頂ければ幸いです。

よろしくお願い致します。

【修正ファイル】
/opt/lampp/hoge_hoge/fuelphp/public/index.php

【修正内容】
・テスト表示用に以下の内容だけのファイルを追加

<?php
echo "Hello world!";
?>

【修正ファイル】
/opt/lampp/etc/httpd.conf

【修正内容】
・以下のコメントアウトを外した。

# Virtual hosts
Include etc/extra/httpd-vhosts.conf

【修正ファイル】
/etc/hosts

【修正内容】
・以下のようにhogehogeを追加

127.0.0.1    localhost hoge_hoge

【修正ファイル】
/opt/lampp/etc/extra/httpd-vhosts.conf

【修正内容】
以下を追加

<VirtualHost *:80>
    DocumentRoot "/opt/lampp/hoge_hoge/fuelphp/public"
    ServerName hoge_hoge
    <Directory "/opt/lampp/hoge_hoge/fuelphp/public">
        Order Allow,Deny
        Allow from All
        Options from All
        AllowOverride All
        DirectoryIndex index.php index.html
    </Directory>
</VirtualHost>


<VirtualHost *:80>
DocumentRoot "/opt/lampp/htdocs"
ServerName localhost
ServerAlias www.localhost
</VirtualHost>

【アクセス結果】
http://hoge_hoge/ にブラウザでアクセス

【表示】

Bad Request

Your browser sent a request that this server could not understand.

Additionally, a 400 Bad Request error was encountered while trying to use an ErrorDocument to handle the request.

追記

【サーバーのログ】
sudo /opt/lampp/lampp stop時にApache
がストップしなかったことがありましたので
*** Error in /opt/lampp/bin/httpd':`に 関してはそれが原因かと思われます。

/opt/lampp/logs/error_log

*** Error in `/opt/lampp/bin/httpd': free(): invalid pointer: 0x0000000000a59cf0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f15275897e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x7fe0a)[0x7f1527591e0a]

--省略--

[Sun Jun 18 17:58:03.147083 2017] [core:notice] [pid 3310] AH00052: child pid 3510 exit signal Segmentation fault (11)
[Sun Jun 18 17:58:03.147131 2017] [core:notice] [pid 3310] AH00052: child pid 3511 exit signal Aborted (6)
[Sun Jun 18 17:58:03.163736 2017] [core:notice] [pid 3310] AH00052: child pid 3509 exit signal Segmentation fault (11)
[Sun Jun 18 17:58:03.163807 2017] [mpm_prefork:notice] [pid 3310] AH00169: caught SIGTERM, shutting down
[Sun Jun 18 17:58:53.003412 2017] [ssl:warn] [pid 3360] AH01906: www.example.com:443:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Sun Jun 18 17:58:53.003688 2017] [ssl:warn] [pid 3360] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Sun Jun 18 17:58:53.003782 2017] [suexec:notice] [pid 3360] AH01232: suEXEC mechanism enabled (wrapper: /opt/lampp/bin/suexec)
[Sun Jun 18 17:58:53.042420 2017] [auth_digest:notice] [pid 3376] AH01757: generating secret for digest authentication ...
[Sun Jun 18 17:58:54.001566 2017] [ssl:warn] [pid 3376] AH01906: www.example.com:443:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Sun Jun 18 17:58:54.001613 2017] [ssl:warn] [pid 3376] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Sun Jun 18 17:58:54.001699 2017] [lbmethod_heartbeat:notice] [pid 3376] AH02282: No slotmem from mod_heartmonitor
[Sun Jun 18 17:58:54.027525 2017] [mpm_prefork:notice] [pid 3376] AH00163: Apache/2.4.25 (Unix) OpenSSL/1.0.2j PHP/7.1.1 mod_perl/2.0.8-dev Perl/v5.16.3 configured -- resuming normal operations
[Sun Jun 18 17:58:54.027554 2017] [core:notice] [pid 3376] AH00094: Command line: '/opt/lampp/bin/httpd -E /opt/lampp/logs/error_log -D SSL -D PHP'

/opt/lampp/logs/access_log

127.0.0.1 - - [18/Jun/2017:17:46:39 +0900] "GET /favicon.ico HTTP/1.1" 400 347
127.0.0.1 - - [18/Jun/2017:17:51:53 +0900] "GET / HTTP/1.1" 400 347
127.0.0.1 - - [18/Jun/2017:17:59:17 +0900] "GET / HTTP/1.1" 400 347
127.0.0.1 - - [18/Jun/2017:17:59:17 +0900] "GET /favicon.ico HTTP/1.1" 400 347
127.0.0.1 - - [18/Jun/2017:17:59:21 +0900] "GET / HTTP/1.1" 400 347
127.0.0.1 - - [18/Jun/2017:18:07:57 +0900] "GET / HTTP/1.1" 400 347
127.0.0.1 - - [18/Jun/2017:18:08:37 +0900] "GET / HTTP/1.1" 400 347
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • shi_ue

    2017/06/18 18:31 編集

    Virtual Host記載前は正常に動いていたんでしょうか? invalid pointerとかSegmentation faultが出ていてまともに動いていないような・・・

    キャンセル

  • tama2015

    2017/06/19 00:32

    `Options from All`のところでアパッチがコケるようなので削除しました。正常に動かなかった理由のようです。本問題とは別のことがらですが。。

    キャンセル

  • tama2015

    2017/06/19 00:34

    質問で、`hogehoge`となっているところを、`hoge_hoge`に変更しました。アンダーバーがBadリクエストの原因でした。最初に記載なくすいません。

    キャンセル

回答 1

check解決した方法

+3

ServerNameに hoge_hogeのようにアンダーバーを利用していることが原因でした。
ハイフンに変更しましたところ、Badリクエスト表記はなくなりました。

ただ、このままですと、今度はAccess forbidden!が発生するので
Require all grantedを追加しました。

Options from Allは、アパッチの起動時にエラーが出るようなので削除しました。
最終的には、以下のようになりました。

<VirtualHost *:80>
    DocumentRoot "/opt/lampp/hoge_hoge/fuelphp/public"
    ServerName hoge-hoge
    <Directory "/opt/lampp/hoge_hoge/fuelphp/public">
        Order Allow,Deny
        Allow from All
        AllowOverride All
        DirectoryIndex index.php
        Require all granted
    </Directory>
</VirtualHost>
127.0.0.1    localhost hoge-hoge

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/06/24 18:51

    mamp等でアパッチのバージョンが古い場合は、逆に
    `Require all granted`は、要らないようです。

    キャンセル

同じタグがついた質問を見る

  • Linux

    4514questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • Apache

    2133questions

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

  • HTTP

    654questions

    HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

  • XAMPP

    628questions

    XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

  • FuelPHP

    554questions

    FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。