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

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

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

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

XAMPP

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

Q&A

解決済

2回答

3462閲覧

XAMPP php.iniの設定内容とエラー

user122

総合スコア13

PHP

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

XAMPP

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

0グッド

0クリップ

投稿2021/07/11 14:51

編集2021/07/12 03:00

前提・実現したいこと

PHPを触ろうと思い、サイト(http://www.php-labo.net/tutorial/)を参考に環境構築をしていたところ、
XAMPPのphp.iniにおける下記の設定内容によって、サーバーとデータベースは起動するがアクセスできないという状況になったので教えてください。

mbstring.internal_encoding = UTF-8 mbstring.http_input = pass mbstring.http_output = pass

このように設定を記述するとlocalhostにアクセスできなり、コメントアウトするとアクセスできる状態に戻ります。
因みに、参考サイト(http://www.php-labo.net/tutorial/ready/xampp_setup.html)におけるphp.iniのほかの設定に関しては
試したところ問題なかったです。
どのように設定すればいいか教えてください。

あと、

mbstring.func_overload = 0

という設定項目がphp.ini内に見当たらないのですが、これは無くなったという認識で良いのでしょうか。

このようなサイトに質問を投稿するのは初めてなので失礼な部分があるかもしませんが、よろしくお願いします。

※追記

PHP Deprecated: PHP Startup: Use of mbstring.internal_encoding is deprecated in Unknown on line 0 PHP Deprecated: PHP Startup: Use of mbstring.http_input is deprecated in Unknown on line 0 PHP Deprecated: PHP Startup: Use of mbstring.http_output is deprecated in Unknown on line 0

このようにerror.logに書かれていました。非推奨ということで設定を有効にしないほうが良いということですかね。

また、環境については、OS:windows10 64bit, XAMPP:ver8.0.8 です。
localhostにアクセスしたときに表示されるエラーはERR_CONNECTION_REFUSEDというもので、
このサイトにアクセスできません localhostで接続が拒否されました と出ます。

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2021/07/12 00:50

そのサイトの情報、しっかり今日(コンニチ)の情報にアップデートされているでしょうか。パソコンもOSもソフトウェアも日進月歩の中で、古い情報に振り回されると良くないです。特に画面キャプチャーがWindows 7の時代のものなので、すでに古びている状態です。そこの情報だけ見て取り組むのは危険かと。
user122

2021/07/12 03:12

やはり古い情報で学習するのはよくないですよね。 なかなかphpで開発環境を自分で用意して簡単なwebアプリケーションを作るまで書かれているサイトが見つからなかったのでこのサイトを参考にしていました。 自分のレベルにあった書籍を見つけてそれをもとに学習していこうかなと思います。
退会済みユーザー

退会済みユーザー

2021/07/12 04:02

PHP7や8に言及しているものであることを事前に調べたらいいと思います。(ブログや個人サイトで都合のいいものって案外なかったりするので。)
user122

2021/07/12 04:10

書籍をいろいろ見ていてphp8に対応しているいい感じのものがあまり見つからなかったのですが、php7に対応しているものでもいいと思いますか。
退会済みユーザー

退会済みユーザー

2021/07/12 04:34

書籍だとPHP7でしょうね、8対応のは聞き及んでいないので。ネットで調べるときは、例えば過去1年間以内のコンテンツでまず絞り込むといいかもしれません。
user122

2021/07/12 04:41

1冊だけphp8対応のものが見つかったので、とりあえずそれをもとに進めていきたいと思います。 因みにですが、php7のものを使うとなるとphp7に自分の環境を合わせるのか、それともphp8で実行してエラーが出るたびに調べていくかどちらがよいか教えていただけませんか。
退会済みユーザー

退会済みユーザー

2021/07/12 04:48 編集

XAMPPなら、PHPのバージョン例えば7.4.xとか7.3.xのものもあるので、気になるのであれば書籍に合わせてXAMPPを入れ換えてもいいかもしれません。ですが、これからの新規開発は基本的にPHP8以降になるかと思うので、一旦学習のために古いのを入れてもいずれPHP8だけでもあとから追加して切り替えて使うなどする前提でいるといいと思います。
user122

2021/07/12 04:55

わかりました。php7を使う機会が出てきたときにはそのように対応したいと思います。 たくさんの疑問に答えていただいて大変助かりました。
guest

回答2

0

そもそも、その設定はなぜ必要なんでしょうか?
もし「参考サイトで言われてるから必要」というのであれば、私は間違っていると思います。
参考サイトにかかれているのはその時その人のことです。今のあなたにとって最適なことではありません。
もちろん公式ドキュメントが分かりにくいなどで親切にチュートリアルとしてまとめてくれる人もいますが、それもその時のことです。メンテナンスされていなければ徐々にズレていき使い物にならなくなります。

設定は意味があって設定できるようになってます。その意味を考えなくてはいけません。
ただ、全ての設定を理解することは非常に大変なので、まずは削除して動くならそれでいいのではないでしょうか?

質問をするときは自分の環境をなるべく伝えたほうがいいです。
今の質問ではOS(Windows/Max/Linux)さえもわかりませんし、XAMPPのバージョンもわかりません。
それらが書かれていないと、問題を深く調べる時に調べられません。

「localhostにアクセスできなり」とありますが、その時はどのような表示でしょうか?エラーメッセージが出ている場合はエラーメッセージは読みましたか?
またWindowsのXAMPPの場合、XAMPPコントロールパネル→Apacheの行→logsからエラーログを表示できます。そこにエラーログが出力されている場合、その内容を見て解決できるかもしれません。

php.ini の設定についてはPHPのマニュアルをみるとよいでしょう。
なぜ良いのかは比較的メンテナンスされているからです。どのような設定か、非推奨な設定の場合いつ廃止されるかも書かれています。
https://www.php.net/manual/ja/mbstring.configuration.php

投稿2021/07/11 19:23

fukasawah

総合スコア147

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

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

user122

2021/07/12 03:12 編集

phpのマニュアルが大変参考になりました。また、次からは自分の環境やエラー内容などを具体的に書くようにします。ご丁寧にありがとうございます。
guest

0

ベストアンサー

このように設定を記述するとlocalhostにアクセスできなり

というときは、webサーバーのエラーログをチェックします。
特に弄ることなく入れたのなら、C:\XAMPP\Apache\logs というところに error_log というファイルができているはずです。
これを何らかのテキストエディタ(プログラミング向けのものが望ましい)で開く、
やり方としては、先にテキストエディタを開いておいて、そのウィンドウに対して error_log をドラッグ&ドロップすると、
error_log の内容を見ることが出来るはずです。
そのエラー内容がphpに関するものが出ていると思うので、それを質問文中に追記してください。


PHP: 実行時設定 - Manualにmbstring.*の設定の話が出ています。
非推奨になっている、mbstring.http_input、mbstring.http_output、mbstring.internal_encodingの項目をphp.iniに記述せず、
mbstring.func_overloadも削除された項目なのでこれも記述せず、
default_charset が UTF-8 であればおそらく問題ないはず。

投稿2021/07/12 00:58

編集2021/07/12 04:38
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問