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

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

ただいまの
回答率

90.51%

  • PHP

    24024questions

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

  • XAMPP

    620questions

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

XAMPPの開発環境について

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 371

uuum_um

score 7

下記のサイトを参考にHello world!を表示させようとしたのですができませんでした。
https://blanche-toile.com/web/mac-xampp

何が違うのかさっぱりわかりません。。
詳しい方いましたらよろしくお願いいたします。
※XAMP最新版をインストールしています。

<? 
echo "Hello World!";
?>

【URL】
http://localhost:8080/test/index.php

【結果】

Object not found!

要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、綴りを確認して再度お試し下さい。

サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。
Error 404
localhost

イメージ説明

【追記】
18:00頃に404問題は解決ずみです。

18:10頃、Hello World!と<? echo "Hello World!"; ?>をindex.phpに記述するもただのテキスト扱いで表示される状態に、、(※参考画像2)

【参考画像2】
イメージ説明

18:40頃、http://localhost:8080/test/index.phpにアクセスすると下記のエラーログが。。
(サーバーの設定がダメっぽいです、、)
Bad request!

Your browser (or proxy) sent a request that this server could not understand.

If you think this is a server error, please contact the webmaster.

Error 400

www.example.com
Apache/2.4.38 (Unix) OpenSSL/1.0.2q PHP/7.3.2 mod_perl/2.0.8-dev Perl/v5.16.3

【追記2】
イメージ説明

【追記3】
イメージ説明

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

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

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

    クリップを取り消します

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

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

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

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

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

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

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

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

    質問の評価を下げる

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

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

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

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

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

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

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

    詳細な説明はこちら

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

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

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

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

  • miyabi_takatsuk

    2019/02/21 16:19

    macでもxampp使えたのか・・・。
    状況としては、動いているローカルサーバーに正しくアクセスできていない状況とお見受けしますが、
    アクセスしているURL、
    hostsファイルにてドメインを指定している行の内容、
    ヴァーチャルホストを使っているのならば、ヴァーチャルホストの中身も記載していただかないと、回答を得られないと思います。

    キャンセル

回答 3

+1

要求された URL は本サーバでは見つかりませんでした。 

ということは、PHPファイル自体が見つからない状態です(PHPの実行中にエラーが起きれば、その旨のメッセージを出すか、500を返します)。

置いた場所がサーバルート以下のtest/index.phpで間違いないか、再確認してみてください。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2019/02/21 16:21

    お世話になっております。


    「置いた場所がサーバルート以下のtest/index.phpで間違いないか、再確認してみてください。」
    こちらどのように確認すればいいのでしょうか。。

    キャンセル

  • 2019/02/21 16:44

    (XAMPPを念のため再インストールしたら下記の内容が表示されました。。)

    Hello World!
    ※<? echo "Hello World!"; ?>形式ではなくただのテキストです。

    よってルートディレクトリ問題は解決したかと思います。

    キャンセル

  • 2019/02/21 16:49

    >uuum_umさん
    それで正常動作ですよ。
    PHPのコードが正しく実行された証拠です。
    PHPは、サーバーサイドスクリプトなので、
    コードが実行された後のものを、ブラウザ(クライアント)に渡していますので、
    echo文は、ブラウザ上では文字列が表示されるで正常動作です。

    キャンセル

  • 2019/02/21 17:58

    お世話になっております。
    説明不足になります。。
    記述したのは下記内容になります。

    Hello World!


    <?echo Hello World!; ?>にすると何も表示されません。。

    キャンセル

  • 2019/02/21 18:17

    (現況を追記しました、、)

    キャンセル

  • 2019/02/22 15:48

    ショートコードはデフォルトあれなためのやつのことかな?

    キャンセル

+1

そういうときはマニュアルです。

PHP はファイルを解析して開始タグと終了タグ (<?php と ?>) を探します

まず第一、開始タグが違う。
<?ではありません。


第二
http://localhost:8080/test/index.phpにアクセスして404エラー
404はNotFound つまり、ページが見つからなかったことを指します。

確認するのはApacheの設定ファイルの「DocumentRoot」です。

Mac使用者ではないのでどこまで同じか分かりませんが、
WindowsのXAMPPであればXAMPPインストールフォルダ配下のapacheフォルダ配下のconf配下にhttpd.confというのがあります。
そのファイル内をDocumentRootで検索してください。

そこに書いてあるパスが
http://localhost:8080/でアクセスしたときに参照するパスです。
どこになっていますか?

ご自身が作成して実行しているPHPはindex.phpでしょうか?
そこでhttp://localhost:8080/test/index.phpで動作させようと思ったら、
DocumentRoot配下のtestフォルダ配下にindex.phpが置いてある必要があります。

他にも確認する点はありますが、すぐ確認できそうな2点あげてみました。

以上、ご参考まで。

※これでもできなかったら教えてください。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2019/02/21 16:30

    404が出てるなら第一と第二が逆でした。
    まあ現状打破だけならどちらも対応する必要があるので、順不同で。

    キャンセル

  • 2019/02/21 16:45

    お世話になっております。
    (XAMPPを念のため再インストールしたら下記の内容が表示されました。。)

    Hello World!
    ※<? echo "Hello World!"; ?>形式ではなくただのテキストに変更しています。
    【URL】
    file:///Applications/XAMPP/xamppfiles/htdocs/test/index.php

    よってルートディレクトリ問題は解決したかと思います。
    今度はPHP(サーバー)の問題でしょうか。。

    キャンセル

  • 2019/02/21 16:53

    何が問題なのでしょうか。「Hello World!」と出る、というのが意図した動作ではないのでしょうか。

    キャンセル

  • 2019/02/21 16:54

    第一をちゃんと見てください。
    <?php echo "Hello World!"; ?>
    と開始を<?phpとするのが正しい形式です。
    ブラウザ画面にHello World!とだけ表示されているならそれは正しいです。

    キャンセル

  • 2019/02/21 17:59

    お世話になっております。
    ご連絡ありがとうございます。

    <?php echo Hello World!; ?>に修正しております。
    ※テキストのみの Hello World!だと表示されますがphpのechoやvar_dumpだと何も表示されません。。

    第二の方でつまづいています、、

    キャンセル

  • 2019/02/21 18:17

    (現況を追記しました、、)

    キャンセル

  • 2019/02/21 20:28

    なかなかhelloWorldだけで400は見ないですね。
    とりあえず下記だけだとどうでしょうか。
    <?php
    phpinfo();

    キャンセル

  • 2019/02/22 13:59

    お世話になっております。

    index.phpに<?php
    phpinfo();書いてもダメでした、、
    よってXAMPP→MAMPに切り替えました。
    (MAMPでは無事ローカル環境構築できました、、お手数おかけいたしました。。)

    キャンセル

  • 2019/02/22 14:02

    だめと言うのは、結局どうなったのでしょうか。
    なるべく具体的に現象を書くようにしてください。質問者さんの画面は質問者さんしか見てません。

    確かにMAMPのほうが確実であることは間違いないですが、XAMPPでも普通に環境構築は出来るはずなので、この質問をどう持って行きたいのか、というところになります。
    (URLを「file:///」と書くところから、まだかなりの初心段階だと思うので、ここで原因おさえておくことは今後のためにもなります)

    キャンセル

  • 2019/02/22 14:47

    お世話になっております。

    ・この質問をどう持って行きたいのか、というところになります。
    >>本来であればXAMPPで(も)環境構築したいです。

    ・URLを「file:///」と書くところから、まだかなりの初心段階だと思う
    >>ご指摘の通りでございます。file:///に関しても全くの無知でございます。

    もし可能でしたらXAMPPでの環境構築に知見をいただきたいです、、
    (仕事でやらなければない事情がありまして、、)
    よろしくお願いいたします。

    キャンセル

  • 2019/02/22 14:50

    なお、index.phpに <?php phpinfo(); のみ記載するとまたObject not found!とError 404がでてしまいます。。htdocs以下にindex.php置いています。

    キャンセル

  • 2019/02/22 14:55

    file:/// はローカルファイルのアクセス。
    ファイルを直接ブラウザにドラッグ&ドロップしたときなどにそうなります。

    PHPは「Webサーバーで動作するプログラム」ですのでWebサーバーとしてアクセスする必要があります。
    それがhttp://(またはhttps://)から始まる、一般的にWebサイトにアクセスするときのものですね。概念は同じです。
    それがローカルPCに立ち上がっているため http://localhost/ のようなURLになります。

    > もし可能でしたらXAMPPでの環境構築に知見をいただきたいです、、
    Macユーザーではないので検証はできないのですが、
    https://webnetarium.com/howto-use-xampp-for-mac/
    上記を見る限り、インストール→Apacheを起動→Document Root配下にファイルを作成→http://localhost/{DocumetRootからのパス} だけで良さそうに思います。Windowsでも同じです。
    一度アンインストールしてやり直してみてはいかがでしょうか?
    同時に別Apacheを立ち上げようとするとポート問題があるので、MAMPのApacheはSTOPにしておいてください。

    キャンセル

  • 2019/02/22 14:56 編集

    ちなみにDocumentRootが/Applications/XAMPP/xamppfiles/htdocs/

    プログラムを
    /Applications/XAMPP/xamppfiles/htdocs/test/index.phpに置いたのでしたら

    http://localhost/test/index.php

    のはずですね。

    キャンセル

  • 2019/02/22 15:15

    あと殆どのケースで index.phpやindex.htmlといった「index」がついたパスは省略可能です。

    キャンセル

  • 2019/02/22 15:18

    お世話になっております。

    ・ 一度アンインストールしてやり直してみてはいかがでしょうか?
    >>こちら再度アンインストールして再インストールし、htdocs以下にindex.phpを置いたところhttp://localhost:8080/dashboard/にリダイレクトしました。
    (MAMPは全て停止しています。)

    まずこの動作自体は問題ないでしょうか。
    よろしくお願いいたします。

    キャンセル

  • 2019/02/22 15:20

    > http://localhost:8080/dashboard/にリダイレクトしました。

    はい。間違いないです。
    XAMPPデフォルトでhtdocs配下にindex.phpがあって、そこにリダイレクトするように書かれています。
    つまり、PHP正常動作していると言えます。
    次はtest/index.phpにphpinfo()ですね。

    キャンセル

  • 2019/02/22 15:24

    htdocs内にtestフォルダ作成→index.php移動→/localhost:8080/test/index.phpだとObject not found! Error 404になってしまいます。。

    キャンセル

  • 2019/02/22 15:35

    > /localhost:8080/test/index.php
    http://localhost:8080/test/index.php では?
    あと、移動ではなく新規でファイル作ってください。
    たぶんhttp://localhost:8080/dashboard/へのリダイレクト処理が入っているもののはずです。
    もしあれならindex.phpではなくてもう少し別の名前で.phpファイルを作られた方が問題の切り分けがしやすくなります。

    キャンセル

  • 2019/02/22 15:40

    お世話になっております。
    新規でtest.phpを作成し、

    <?php
    phpinfo();

    を記述しましたが同じくObject not found! Error 404となってしまいます。。

    キャンセル

  • 2019/02/22 15:43

    そのURLそのまま貼り付けていただいて良いですか?
    あと、フォルダ構成が分かる画面キャプチャをあわせて質問本文に追記してください。

    キャンセル

  • 2019/02/22 15:50

    URL:http://localhost:8080/test/index.phpになります。
    ※フォルダ構成が分かる画面キャプチャも追記しました。index.htmlは気にしないでください。。

    キャンセル

  • 2019/02/22 15:52

    testフォルダの中身もお願いします。

    あと念のためDocumentRootをもう一度確認してください。

    キャンセル

  • 2019/02/22 15:56

    なぜかというとDocumentRootフォルダ配下にはdashboardフォルダがデフォルトで入っているものだからです。
    提示した画面キャプチャを見た感じではそれがありません。
    本来はdashboardフォルダのほかに下記のようなファイルが入っています。
    applications.html
    bitnami.css
    favicon.ico
    index.php

    削除したりしてないのでしたら必ずあるはずです。
    もしないのでしたら今提示いただいた画面キャプチャがXAMPPのDocumentRootでないものと推察されます。

    キャンセル

  • 2019/02/22 16:43

    お世話になっております。
    先ほど画像追加しました。

    ・applications.html
    ・bitnami.css
    ・favicon.ico
    ・index.php
    などがないです。

    (MAMPにはあります。。)
    この場合どうすればいいのでしょうか。。

    キャンセル

  • 2019/02/22 16:48

    何度かお願いしています。
    DocumentRootの設定を確認してください。
    2019/02/22 14:55のコメントの後半

    キャンセル

  • 2019/02/22 16:49

    ちなみに MAMPのSTOP→XAMPPのSTART してますよね?

    キャンセル

  • 2019/02/22 16:52

    お世話になっております。

    ・MAMPのSTOP→XAMPPのSTART してますよね?
    >>現在MAMPはSTOPしています。XAMPPはSTARTしています。。

    ・ DocumentRootの設定を確認してください。
    >>こちらどのように確認するか検索しております。。

    キャンセル

  • 2019/02/22 16:53

    。。。/xamppインストールフォルダ/apache/conf/httpd.conf
    のなかの「DocumentRoot」の項目です。
    (Windowsの場合ですが)

    キャンセル

  • 2019/02/22 18:09

    お世話になっております。
    httpd.confファイルを探しましたがないようです、、

    というか再インストールしたら「xamppfiles」以下の「htdocs」のみしかない状態です。。
    このように「httpd.conf」がない場合はどうすればいいのでしょうか。

    キャンセル

  • 2019/02/22 19:15

    もしかしたらMAMP入れたことでMAMPのほうを見てるのでは…
    dashboard画面はどのような画面ですか?MAMPとか書いてません?

    キャンセル

  • 2019/02/22 19:47

    お世話になっております。
    見ているのは「XAMPP」の画面になります。

    先ほどMAMPも同時進行でやっておりましたが、回答ある度にMAMP(サーバー含む)停止して、XAMPPの確認を行なっております。。

    キャンセル

  • 2019/02/22 19:51

    XAMPP Apache + MariaDB + PHP + Perlと記載があります。。

    キャンセル

  • 2019/02/22 20:16

    うーん。
    ちなみにMAMPの方のhtdocs直下にtest.phpを配置しphpinfo();だけを書き、XAMPPを起動状態で
    http://localhost:8080/test.php
    にアクセスするとどうなります?

    キャンセル

  • 2019/02/23 05:36

    あと気になるのはXAMPPでなければならない理由 ですね。
    いずれにしても同様にPHPによる開発が可能で、機能的な差はほとんどないはず(あとなんだかんだでMacならMAMPのほうが間違いない)なので

    キャンセル

  • 2019/02/23 12:46

    お世話になっております。
    できれば自分もMAMPで行いたいです。

    実はMAMPの方でもPHPが無効な状態となっています。。(昨日の夜からです。)
    こちちらは質問を分けた方がいいのでしょうか。。

    お手数おかけいたします。

    キャンセル

  • 2019/02/23 12:58

    追記になります。
    (先ほど再度MAMPの設定うまくいったようでphp infoの中身もechoもvar_dumpも無事できました、、)
    ※XAMPPではないです。

    キャンセル

check解決した方法

0

MAMPに切り替えたらすぐにPHP動作しました、、MacはMAMP >>> XAMPPみたいです。。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2019/02/23 17:38

    MAMP動作確認済みはずいぶん前に聞いてますが…

    Mac用のXAMPPを利用していたか?
    同居は可能か?

    この辺りが争点かと。
    httpd.confが同じ場所の同じものを見ているような気はしますけどね。XAMPP側のindex.php「上書きした」にも関わらずdashboardに遷移したわけですし。上書きしたならdashboardへのリダイレクトはありえません。

    キャンセル

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

  • PHP

    24024questions

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

  • XAMPP

    620questions

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