为drupal安装 Php + Apache 的参考文章

1. http://hi.baidu.com/madoking/blog/item/8175f98291349999f603a6c6.html

 把解压安装包,把drupal-6.13文件夹名改为drupal6(主要是为了输入路径的时候简单一点。)
把文件夹COPY到apache安装目录下htdocs文件加下。重启一下apache.
打开浏览器,输入地址。如我的是:http://127.0.0.1:8000/drupal6/index.php(会直接进入安装界面)

2.  http://pocketstudio.jp/log2/2007/01/windows_apache_224_php_520.html

/01/10)最新版の Apache 2.2.4 + PHP 5.2.0 導入(インストール)記録です。Windows 上でのウェブサーバ&PHP動作環境構築テストのためのメモです。単にメモ代わりに Wiki をローカル上で動作させたい為です。

Apache のダウンロード

 ダウンロードは公式サイト(http://httpd.apache.org/)から行えます。ダウンロードするファイルは、インストーラー付きの『 Win32 Binary (MSI Installer) 』です。

- Win32 Binary (MSI Installer): apache_2.2.4-win32-x86-no_ssl.msi
(国内ミラー1,国内ミラー2)

apache_2.2.4-win32-x86-no_ssl.msi

Apache のインストール

ダウンロードしたファイルを開きます。

アイコン

もし古いバージョンが入っていると以下のようにエラーが出ますので、指示通り Apache を一旦アンインストールする必要があります。なお、アンインストールを行っても conf および logs ディレクトリは残ったままです。心配であれば、この機会にバックアップを取っておかれるのも良いかと思います。(確認したのは Apache 2.2.3 からのバージョンアップです)

アイコン

インストーラーが正常に起動すると、次のような画面が表示されるので【 Next > 】を押しします。

インストーラー

ライセンス同意画面が表示されます。【 I accept the term in the license agreement 】(ライセンス利用規約に同意します)を選び、【 Next > 】を押します。

インストーラー

Apache に関する情報が表示されます。【 Next > 】を押します。

インストーラー

次はホスト名の設定です。http://localhost/ としてアクセス出来れば良いので localhost とそれぞれ入力します。DNS を使ったサーバ運用をされている場合は、適切な名前を入れておけば良いでしょう。たとえば、Windows マシンであればホスト名でのアクセスも可能なので、intra-office というホスト名であれば http://intra-office/ としてアクセスできるよう、ホスト名を入れておいた方がいいでしょう。後から httpd.conf を編集することで変更も可能です。

Administrator's Email Address(管理者メールアドレス)は入力が必須です。a@exameple.jp でも何でも良いので、とにかく入れておかないとエラーになって次に進めません。

下のオプションは、通常『 for All Users, on Port 80, as a Service -- Recommended.』(全てのユーザにインストールして、ポート 80 番でサービスとして動作します - 推奨)を選べば良いと思います。下の『 only for the Currenet User, on Port 8080, when started Manually.』は現在のユーザのみインストールし、ポートは 8080 で、起動は手動で行わなくてはいけませんよ、という点です。たまにしか動かさないのであれば、こちらを選んで、後で動作ポートを httpd.conf を編集して Port 80 で稼働させるようにし、必要なときだけ Apache を起動させるという事もできます。

インストーラー

次はインストール方式の選択です。ここでは『 Typical 』のまま【 Next > 】を押します。『 Custom 』でも構いませんが、マニュアルを外す程度しか選べませんので、通常は『 Typical 』のままでも差し支えありません。

インストーラー

その次はインストール先のディレクトリの選択です。特に変更の必要はありません。新規インストールであれば、そのまま 【 Next > 】を押します。パス(場所)が長すぎるなと思えば、適当に変更することもできます。

インストーラー

インストールの最終確認画面です。【 Install > 】を押すとインストールが開始されます。

インストーラー

あとはインストールが自動で行われますので、完了するまで待ちます。終わったら【 Finish > 】を押してインストーラーを閉じます。これでインストール完了です。

インストーラー

これで自動的に Apache が起動された状態になります(Port 80 で動作するよう設定した場合)。http://localhost/ にアクセスすると"It Works!"(動いてるよ!)と表示されます。既に過去のバージョンの Apache 2 がインストールされていれば、過去の httpd.conf の設定がそのまま適用されます。

Apache の初期設定

Apache は、ある程度の初期設定が必要になります。ディレクトリ(フォルダ、の事)は標準であれば C:\Program Files\Apache Software Foundation\Apache2.2\conf に設定ファイル httpd.conf があります。

この段階でいくつか設定を行いますが、PHP5 をインストールする前提で記述を進めていますのでご注意願います。

まず、conf/httpd.conf の設定変更点です。115行目付近に次の項目を追加します。これは PHP5 の Apache2 向けモジュールを読み込む設定です。

PHPIniDir "C:\Program Files\PHP\"
LoadModule php5_module "C:/Program Files/PHP/php5apache2_2.dll"

次は DocumentRoot (ドキュメント・ルート=http://localhost/ として表示されるディレクトリ)の変更を必要に応じて行います。150 行目付近、標準では長いので、私の場合は

DocumentRoot "E:\www\htdocs"

このように書き換えています。

もし、この DocumentRoot を書き換える場合、180 行目付近の次の場所も変更します。

#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "E:\www\htdocs">

次に、ドキュメント・ルート内でディレクトリの一覧表示(Indexes = 特に必要でない場合もありますが、実験環境ではファイル一覧が見えた方が楽なので)と CGI の実行許可(ExecCGI)を追加します。

Options Indexes FollowSymLinks ExecCGI

220行目付近、DirectoryIndex を編集します。

<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>

index.php を追加しておけば http://localhost/example/ に index.php があれば、自動的に表示されます。逆に言えば無いと index.php は表示されません。なお、DirectoryIndex の優先順位は記述順(左側)なので、index.html と index.php は上記の例では両方のファイルがあれば index.html が優先表示されます。index.php を優先表示したい場合は、

<IfModule dir_module>

DirectoryIndex index.php index.html

</IfModule>

このように書き換えておけば問題ありません。

CGI および PHP の実行許可は 400 行目付近で行います。CGI の行はコメントされてる # を消して、PHP の記述を追加します。

AddHandler cgi-script .cgi

AddType application/x-httpd-php .php
PHPIniDir "C:/Program Files/PHP"


ここでは php.ini の場所も指定しています。過去のバージョンでは PHP 関連の DLL を Windows のシステムフォルダに入れる必要がありましたが、今は必要ありません。詳しくは PHP の箇所で後述します。

SSI も使いたい場合には、410 行目付近のコメントを外しておけばよいでしょう。

AddType text/html .shtml .html
AddOutputFilter INCLUDES .shtml .html

私の場合は html ファイル中でも最終更新日を出したりしたいので、 .html を追加しています。昔(10年ほど前)は .html に SSI を追加するとサーバのパフォーマンス(性能)が落ちる、と言われていましたが、今日、Pentium III もしくは K-6 や Cyrix でも CPU クロック 500 MHz 程度や、ある程度のメモリがあれば、ほぼ性能に影響は無いとおもいます。よほどレスポンスに拘りたい場合や SSI が不要であれば .html の記述は不要です。

450 行目付近で関連設定ファイルを読み込むようにコメントを外します。

# Multi-language error messages Include conf/extra/httpd-multilang-errordoc.conf

# Fancy directory listings
Include conf/extra/httpd-autoindex.conf

# Language settings
Include conf/extra/httpd-languages.conf

httpd-multilang-errordoc.conf はエラー出力のため、別に必要ない場合はコメントしたままでも動作上の問題はありません。httpd-autoindex.conf は Indexes が有効にした場合、あまりにも画面が寂しいので、ディレクトリやファイルをアイコンで表示させるようにしています。特に気にしないなら不要でしょう。

httpd-languages.conf については必ずコメントを外します。後々の動作確認や PHP 文字化け対策なども兼ねます。

これで httpd.conf の設定は終わりです。

次に、conf/mime.types ファイルを開きます。末尾に次の2行を追加します。

application/x-httpd-php php
application/x-httpd-php-source phps

(PHP のインストーラーで設定を自動で行う場合には自動追加されます。)

次に、conf/extra/httpd-languages.conf の編集です。

19 行目、コメントされている標準言語を日本語に指定します。行頭の # を消し、言語を ja にします。

DefaultLanguage ja

次に 85 行目付近で、言語の指定をします。私の場合は Shift_JIS (Windows 標準) で運用したいので

AddDefaultCharset shift_jis

と記述しました。サーバを EUC で運用したかったり、仮環境を本番環境の EUC と同じにしたい場合は AddDefaultCharset を EUC-JP にしておきます。このあたりは適当に環境にあわせて書き換えてください。必要に応じて何時でも書き換えることができます。

これで Apache 側の設定準備は完了です。
次、PHP いってみましょう。

PHP のダウンロードとインストール

PHP 本体は PHP 公式サイトからダウンロードできます。『Windows Binaries』の『PHP 5.2.0 installer』を使います。zip でダウンロードして、自分で展開・セットアップなされても構いません。ここではインストーラを使った方法でのセットアップ方法を記述します。

ダウンロード

クリックすると、ミラーサイト一覧が表示されるので、適当な場所(通常日本国内からであればミラー1ミラー2)からダウンロードします。

インストールが終わったら『php-5.2.0-win32-installer.msi』を押してインストーラーを起動します。

アイコン

起動したら【 Next > 】を押します。

インストーラー

利用規約に同意するかどうか表示されます。『 I accept the term in the License Agreement 』を押してから【 Next > 】を押します。

インストーラー

次は PHP を何処にインストールするかです。【 Next > 】を押します。(以前は C:\PHP でしたが、現在では Program Files 以下に配置されます。関連する DLL 群もすべて指定したディレクトリに置かれます。設定ファイル php.ini もここで指定した場所になります。特に必要がない限り、新規インストールであれば標準のままを推奨します)

インストーラー

次にウェブサーバをどれにするか表示されます。設定は既に手動で Apache の httpd.conf などを編集済みなので『 Do not setup a web server 』を選んで【 Next > 】を押します。

インストーラー

インストール時のオプションを設定します。

ここで

+ Web Server Setup - Apache 2.2.x Module をクリックして『 Will be install on local hard disk 』(ハードディスクにインストールする)を選ぶことは必須ですPHP に関する httpd.conf への記述は既に完了しているので、『 Do not setup a web server』 を選びます (2009/07/20 23:09 修正)。

あと、私は wiki を使いたかったのと、今後データベースのテストと PEAR を使う予定なので

+ Extensions(拡張) - "Multi-Byte String"(マルチバイト文字)をクリックして『 Will be install on local hard disk 』(ハードディスクにインストールする)、同様に『 MySQL 』もチェックを入れます。MySQL が不要ならチェック不要ですが、Multi-Byte String(mbstring) のチェックは必須です。PHP で日本語を使ったアプリケーションを使う上で必ず必要になるので、忘れないようにしておく必要があります。

あとは、個人的に
+ Extras(その他) - "PEAR Install" と "PHP Manulal" を入れておきました。

必要な項目を入れた後は【 Next > 】を押します。なお、モジュールは後からでもインストーラーを使って追加・削除することができます。

インストーラー

その次は確認画面なので、そのまま【 Install > 】を押します。

インストール時に【 Do you want the installer to configure Apache? 】(Apache の設定ファイルに記述を追加しますか?)とダイアログが表示されますが、既に設定済みなので【 いいえ(N) 】を押します。

インストーラー

【 Finish > 】を押してインストーラーを終了します。

PHP の設定

PHP の設定ファイルは php.ini です。標準では C:\Program Files\PHP\php.ini です。このファイルを開いて設定を行います。以下主要な変更点ですが、マルチバイト関連はデータベースやアプリケーションの動作条件など必要に応じて書き換えてください。最低限必要な箇所(もしくは推奨箇所)のみ列挙します。

356 行目、エラー内容を画面に表示するようにします。テスト環境でのデバッグを想定しているためです。実際にサービスを行う場合は Off のほうが良いでしょう、というか、そうすべきです(安全上や見た目の問題というのもあります)。

display_errors = On

492 行目、文字コードを指定します。私の場合は Shift_JIS を使いたかったので、Shift_JIS にしました。環境にあわせて書き換えてください。

; PHP's built-in default is text/html
default_mimetype = "text/html"
default_charset = "Shift_JIS"

632 行目、マルチバイト文字関数が有効かどうか確認します。

extension=php_mbstring.dll
extension_dir=C:\Program Files\PHP\ext

1167 行目以降のマルチバイト関連のコメント(;)を削除して、自分の環境にあわせて書き換えます。以下はサンプルです。

[mbstring] ; language for internal character representation. mbstring.language = Japanese

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
mbstring.internal_encoding = EUC-JP

; http input encoding.
mbstring.http_input = auto

; http output encoding. mb_output_handler must be
; registered as output buffer to function
mbstring.http_output = SJIS

; enable automatic encoding translation according to
; mbstring.internal_encoding setting. Input chars are
; converted to internal encoding by setting this to On.
; Note: Do _not_ use automatic encoding translation for
; portable libs/applications.
mbstring.encoding_translation = Off

; automatic encoding detection order.
; auto means
mbstring.detect_order = auto

; substitute_character used when character cannot be converted
; one from another
mbstring.substitute_character = none;

これで基本的な php.ini の設定は終わりです。
必要に応じて何時でも書き換えることが出来ます。ただし、設定が反映されるのは Apache の再起動を行ったときのみです。

Apache 2.2.4 および PHP 5.2.0 動作確認

これまで Apache の httpd.conf を編集してきました。文法に問題がないか確認するためには【 スタート 】→【 プログラム(P) 】→【 Apache HTTP Server 2.2.4 】→【 Configure Apache Server 】→【 Test Configuration 】を選びます。

一瞬画面にコマンドプロンプトが表示されて、そのまま閉じると文法上の問題がない事がわかります。もしエラーがあれば、どのファイルの何行目がおかしいかや、PHP のモジュールが読み込めないなど表示されますので、エラーにあった対処を行います。

Apache の再起動を行い PHP のモジュールを読み込みます。

【 スタート 】→【 プログラム(P) 】→【 Apache HTTP Server 2.2.4 】→【 Control Apache Server 】→【 Restart 】を選びます。

サンプルとして、ドキュメント・ルートに test.php というファイルを新規作成し、ファイの中身は以下のようにします。

<?php phpinfo(); ?>

これでブラウザから http://localhost/test.php へアクセスします。

phpinfo()
このようにバージョン情報などが正常に表示されれば、PHP のセットアップは完了です。

以後は必要に応じて php.ini の編集や Apache の再起動を行い、目的のアプリケーションが動作するよう調整を行わなくてはいけない場合もあります。

以上でセットアップ手順は一通り完了です。
もし記述ミス等ありましたらご指摘ください。

トラックバック (SPAMチェック中)

このエントリーのトラックバックURL:
http://pocketstudio.jp/mt-cgi/mt-tb.cgi/192

この一覧は、次のエントリーを参照しています: Windows 環境への Apache 2.2.4 + PHP 5.2.0 導入(インストール)記録:

» 平成19年1月10日(水) PHP+Apacheにはまりそうになった・・ 送信元 Pocketstudio'z log
 Windows 環境の PHP と Apache のセットアップではまりそうになってしまった。。  久々にさわると、どちらのインストーラーも微妙に設定が... [詳しくはこちら]

» Windows 環境への MySQL 5.0.27 セットアップ方法 送信元 Pocketstudio'z log
 ここでは先日の Windows 環境への Apache 2.2.4 + PHP 5.2.0 のインストールに引き続き、同様に Windows 環境へ M... [詳しくはこちら]

» activeCollabへの道;<1>PHP5導入 送信元 自作汁生活
■03/11■ アシスタント2人がパンツを取り替えに帰宅。その合間に懸案だったactiveCollab導入をしてみることに。 まずサーバ側に必... [詳しくはこちら]

コメント (85)

goma:

前佛様、初めまして。

Apache2.2.4 とPHP5.2のインストレーションが何度トライしてもうまくいかず(前のバージョンではなんとか成功しました)、半ば諦めかけた時にこのサイトを見つけました。そしてついにインストレーション成功しました。本当に有難う御座います!これからがんばってMySQLのインストレーションしたいと思います。また遊びに来ます。ホントにありがとうございました!

goma さん、こんばんは、前佛と申します。コメント頂き恐縮です。こちらこそ、ありがとうございました!

おのっち:

はじめまして。

私もgomaさんと同じようにインストールにてこずっていたところ、こちらのサイトを見つけました。

非常に助かりました。
本当にありがとうございます!!

おのっちさん、おはようございます。
こちらこそ、どうもです。

nost:

はじめまして
xamppを利用していましたが
MySQLよりPostgreを使いたかったので
それぞれ単独でインストールしようと思いましたが
設定がわからず困っているところこちらのサイトを見つけました

自分の環境ではなぜかインストーラーでやると、php.iniが
6行程度で、内容が[PHP]とかだけしかはいってませんでした
何度か見直してフォルダ変えて試してみましたが、変わりませんでしたので
zip版で導入してみました

おかげさまで助かりました
ありがとうございました

pochita:

はじめまして
大阪在住のおっさんです!

みなさま同様本当に助かりました。
最新版を正常に動作させるのは大変で、超イライラ。
今回もあきらめかけていた時に貴殿のこのサイトを
発見しました。
感謝、感謝。
これからも途方に暮れている方々のために頑張ってください!

nost さん、pochita さん、稚拙な記述でしたがお役に立てて幸いです。意味不明な箇所などありましたら、ご指摘いただけると幸いです。
php.ini が 6 行程度に収まうのは、私では分からないです。。

あちこちのページを見ても導入できずくじけかけていたときに、
ここのページにたどりつきました。
おかげさまでPHP導入成功しました!

……ただ、そのあとactiveCollab、phpMyAdminのインストールに失敗しています。
"mysql","gd"extentionがロードできないと……。
どちらもphp/extにあるのに、さっぱり判りません。

匿名:

昨日、2007年2月発刊のPHPの本を買ったのですが、なんと本の中身が古く、セットアップできず困り果ててました。そこでこのサイトを見つけ、手順どうり作業を進めていくと、今までは何?っていうくらい順調にすすみました。本当に初心者に貴重な情報ありがとうございました。

>杏東ぢーなさん

すみません、私は Windows 版ではあまり都合が解らないので、私は原因および対処が解りません・・・日本 MySQL 会メーリングリストの過去ログおよびメーリングリスト上での質問で解決につながるかもしれません。
http://www.mysql.gr.jp/ml.html
お役に立てず、すみません。。

>匿名さん
ご丁寧にありがとうございます。
発刊されたばかりなのに・・・という気持ちは私も持ったことが多々あります(今でもありますが・・・)。

ぴっく:

昨日からApache 2.2.4 + PHP 5.2.0 導入を試みていて、
こちらのサイトにたどり着いた初心者です。
1からこちらの記述にしたがってやっています。


私のPCで見ていると、ソースで見るところの以下の記述が


PHPIniDir "C:\Program Files\PHP\"
LoadModule php5_module "C:/Program Files/PHP/php5apache2_2.dll"

¥の部分が⁄(逆スラッシュ?)のように見えます。

これがちゃんと記述できているか自信のないところですが・・・^^;。
とりあえず普通にコピペで記述すると¥(円マーク)になるので、そのままやってみましたがだめでした;;。

これが原因なのか、それとも他が原因なのかさっぱりわからないのですが・・・。


教えてください><;。

ぴっく:

うっ。

書き込んでみると¥マークが⁄になっているのですね・・・。

PHPIniDir "C:¥Program Files¥PHP¥"

訂正します。

ぴっく:

先ほどの者です。
解決しました^^。
ありがとうございました。

すみません
フォントの関係で「¥」(円マーク)=「/」(バックスラッシュ)で
お願い致します。

T:

2005年に出たPHP用の本を図書館で借りたんですが、最新版と勝手が違ってPHPとapacheの関連付けに困ってました。

このサイトの通りに進めて何とかなりそうです。助かりました~。

2年くらい前の本になるともう全然設定が変わってしまうんですねえ。こういう本は安易に買えないな^^;

Mary:

私のPHPダウンロード・フォルダはU:PHP-Downloed-Folderです。
私のPHPインストール・フォルダはC:\Program Files\PHP
です。
php5apache2_2.dllが"C:/ProgramFiles/PHP/"に入っていなかったのでU:PHP-Downloed-FolderからCopyしました。
これでNO ERRORになりました。
Apache2が動きました。

--------------------------------------
まず、conf/httpd.conf の設定変更点です。115行目付近に次の項目を追加します。これは PHP5 の Apache2 向けモジュールを読み込む設定です。
PHPIniDir "C:\Program Files\PHP\"
LoadModule php5_module "C:/Program Files/PHP/php5apache2_2.dll"
--------------------------------------

『Windows 環境への Apache 2.2.4 + PHP 5.2.0 導入(インストール)記録』の提供者様に感謝申し上げる次第です。

ありがとう御座いました。

Mary

>Tさん
そうですね~、基礎的な部分でなければ(例えば UNIX のオペレーションやネットワーク関連の基礎にあたるコマンド以外)、2年も経つと役に立たない事も多いようです。。
とりわけ PHP のように発展途上が著しいアプリケーションであれば、尚更ですね。アマゾンでも書評への評価が高くても、実は情報が古くて役に立たなかったりという事もありますので、モノによっては要注意です。

>Maryさん
お役に立てることができ、なによりです。
Windows XP というと、デスクトップ用途中心を思い浮かべます。けれども、最近の Apache や PHP、MySQL などのように、サーバ用途の発展が進んで使い勝手が良くなっている事に感激しています(私のように個人の Linux 環境ではデスクトップ用途とサーバ用途が同一機上で併存することはよくありますので・・・いろいろ1つの機械で動けばリソースや電力の有効活用になります)。

bnrn:

ApacheとPHPのセットアップにてこずっている所で
ここを見つけました。
ずっと四苦八苦してたのに一発で動くようになりました!すごく感謝してます!ありがとうございました。

>bnrn さん
どうもです。最近 Windows 界隈でもオープンソースが一般的になってきましたね。一昔前だとサーバ系は Linux だけ、だったのですけど・・・手軽に扱えるようになることは嬉しいです。
関係者の方々に感謝ですね!

yoshi:

はじめまして

ApacheとPHPのセットアップで苦労しておる初心者です。
MySQLもセットアップしたいのですが・・・・

ドキュメント・ルートに test.php を作成しhttp://localhost/test.php へアクセスしましたが、Error 404になってしまいます。
http://localhost/にアクセスするとtest.php.htm とファイル名が表示されます。また、ソースにと記入したファイル自体(PHPの情報自体)も何も表示されません。

初心者で申し訳ありませんが、ご教授いただけますでしょうか?

>yoshi さん

状況からすると、Apache に PHP が読み込まれていないようです。
Apache の再起動はおわっていますでしょうか。error_log の一番下付近にある再起同時のログ(Apache HTTP Server → Review Server Logfiles → Review Error Log)に

[notice] Apache/2.2.3 (Win32) PHP/5.2.0 configured

のような表記がなければ、PHP は読み込まれていません。
一度 Apache を再起動するか、PHP のインストールからやり直したほうがよさそうです。如何でしょう。

yoshi:

前佛殿 早々にありがとうございます。
Review Error Logには
[notice] Apache/2.2.4 (Win32) PHP/5.2.3 configured -- resuming normal operations
と表記されてます。その下に
[notice] Server built: Jan 9 2007 23:17:20
[notice] Parent: Created child process 2032
[notice] Child 2032: Child process is running
[notice] Child 2032: Acquired the start mutex.
[notice] Child 2032: Starting 250 worker threads.
[notice] Child 2032: Starting thread to listen on port 80.
[error] [client 127.0.0.1] script 'C:/website/htdocs/test.php' not found or unable to stat
となっております。

yoshi さんへ

Apache には PHP 関連の DLL が正常に読み込まれているようですね。
そうしたら次に、Apache 設定ファイル httpd.conf に

AddType application/x-httpd-php .php
PHPIniDir "C:/Program Files/PHP"

このような行はありますか?
私の手元のファイルには 400 行目くらいに記述を入れてあります。
もし無ければ記述を追加して、それから Apache の再起動が必要になります。

設定ファイルをスタートメニューから開く場合は【 Apache HTTP Server 2.2.4 】→【 Configure Apache Server 】→【 Edit the Apache httpd.conf configuration File 】です。

yoshi:

Apache 、PHP を再インストールしてみました。
ドキュメント・ルートの index.htmlはhttp://localhost/index.htmlへアクセスし表示可能となりましたが、test.phpはだめでした。
上記httpd.conf の設定のなかに

PHPIniDir "C:\Program Files\PHP\"
LoadModule php5_module "C:/Program Files/PHP/php5apache2_2.dll"

AddHandler cgi-script .cgi
AddType application/x-httpd-php .php
PHPIniDir "C:/Program Files/PHP"

と2回PHPIniDir "C:/Program Files/PHP"がありますが
どちらかを消さないと再起動できませんでした。
/ ¥はどちらにしても再起動可能でした。
再起動後は
[warn] [client 127.0.0.1] mod_include: Options +Includes (or IncludesNoExec) wasn't set, INCLUDES filter removed
[error] [client 127.0.0.1] script 'C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/test.php' not found or unable to stat
となりました。はまってしまいました。

yoshi:

前佛殿 
お世話になります。
php-5.2.3を断念しphp-5.2.0をインストールしたところ、うまくいきました。
ありがうございました。
次はmysql-5.0.41とPacsOneの設定にとりかかります。

が、php-5.2.3が気になります。

うーん、不思議ですね。。謎です。
とりあえず動いたので良しとしますか・・・。
おそらく、今の httpd.conf を残しておいて、PHP 5.2.3 を入れ直すと、ちゃんと動くかもしれません。未検証で申し訳ありません。。

ところで PacsOne という画像管理ソフトですか、こういうのもあるんですね!知りませんでした。私も入れてみようかなぁ。情報ありがとうございます。

yoshi:

前佛殿 
お世話になります。

おそらく、今の httpd.conf を残しておいて、PHP 5.2.3 を入れ直すと、ちゃんと動くかもしれません。未検証で申し訳ありません。。

動きました。原因はさておきすっきりしました。
が、ImageMagickの設定でPHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Program Files\\PHP\\ext\\php5_imagick.dll' in Unknown on line 0が消えません。
Pacsoneのインストールで
MySQL Error: Client dose not supportauthentication protocol requested by server: consider upgrading MySQL client
Please verify the specified MySQL Username and Password are validでつまっます。
RemotEyeにたどり着くにはまだまだです。

yoshi さん、こんばんは、前佛です。

C:\Program Files\PHP\ext ディレクトリには php5_imagick.dll は置いてありますでしょうか。無いとエラーが出そうです。

www.rainbowfishsoftware.com/install.pdf のマニュアルには、PacsOne のインストールしたディレクトリ C:\Program Files\PacsOne\php\ に 「php5_imagick.dll」というファイルがあるようです。これを「C:\Program Files\PHP\ext 」に置かないとダメなようです。
(と、マニュアルには書いてありました。実はまだ試していません・・ごめんなさい)

次に MySQL のエラーは、MySQL サーバに PHP が接続する際のユーザ名とパスワードが不明です、と表示されています。MySQL データベース側で適当なユーザ設定をしなくてはいけないのかもしれません。あるいは、MySQL サーバ側に、何らかの影響で接続できないようです。

yoshi:

前佛殿 おはようございます。

C:\Program Files\PHP\ext ディレクトリには php5_imagick.dll は置きました。pacsoneのインストールはできませんがフォルダーが作成されその中にphp5_imagick.dll がありコピーしましたが・・・。
マニュアルにはphp5.2_imagick.dll なるものが載ってました。http://www.pacsone.net/forum/viewtopic.php?t=836を見てますが、この中にもphp5.2_imagick.dllが出てきます。どこかに差し替えようがあるのだと思います。

mysql> select * from mysql.user \Gでユーザー権限確認してもOK、コマンドで確認してもOKでした。ついでにrootでもやってみましたが、インストールできません。

昔ドラクエにはまったことを思い出しました。
仕事の合間にがんばります。

yoshi:

前佛殿 こんにちは
試しにPremiumバージョンをインストールしてみたところ、うまくいきました。しかし、使用期限があるためbacicに落とさなければなりません。とりあえずphpを4と5を切り替えられるように設定し、RemotEyeやdicomviewerなどのwebviewerの設定をする予定です。データーの移行を試すためにConquestDICOMServerをインストールしsample dataのpacsoneへの取り込みを試しましたがうまくいきません。
フリーソフトがたくさんあるのに驚きました。

yoshi さんへ

うーん、実際に使ってみないと、ちょっとアドバイスできません・・・時間があれば私でも検証してみます。。

yasu:

はじめまして。
このサイトを参考にさせていただいて、apache2.2.4とPHP5.2.3を設定しようとしているんですが、うまくいきません。
PHPをインストールする際に"Error trying access httpd.conf file. You will need to manually configure the web server"とでてしまいます。サイトの手順どおりにしているんですが、なぜこうなるのかお分かりになれば教えていただけませんか?
アパッチは正常に起動しているですが、"http://localhost/"につながりません。お手数ですが、宜しくお願いいたします。

yasu:

はじめまして。
このサイトを参考にさせていただいて、apache2.2.4とPHP5.2.3を設定しようとしているんですが、うまくいきません。
PHPをインストールする際に"Error trying access httpd.conf file. You will need to manually configure the web server"とでてしまいます。サイトの手順どおりにしているんですが、なぜこうなるのかお分かりになれば教えていただけませんか?
アパッチは正常に起動しているですが、"http://localhost/"につながりません。お手数ですが、宜しくお願いいたします。

>yasu さん

はじめまして。
http://localhost/ で接続出来ないばあい、http://localhost:8080/ で接続出来ませんでしょうか。httpd.conf の中で Listen の部分が 8080 になっているかもしれません。

Listen 80

このように書き換えたらいいと思います。

エラー内容は「Apache の httpd.conf の場所が見つかりません。直接 httpd.conf を編集してください」という意味です。httpd.conf の場所を PHP のインストールするソフトが見つけられないようです。

httpd.conf に直接

PHPIniDir "C:\Program Files\PHP\"
LoadModule php5_module "C:/Program Files/PHP/php5apache2_2.dll"

や、

AddType application/x-httpd-php .php
PHPIniDir "C:/Program Files/PHP"

を追加しておけば大丈夫です。

あとは、設定を有効にするために Apache の restart (再起動)ですね。如何でしょう・・

yasu:

早速の回答ありがとうございます!
確認してみたところ、PHPIniDir "C:\Program Files\PHP\"
にいつの間にか#がついていました。これをはずしてPHPを入れ直したところ正常に作動しました!初歩的な問題だったようですね^^;
感謝いたします。ありがとうございました!

>yasu さん

無事動いて何よりです~。がんばってください。

shibu:

起動エラー
「The requested operation has failed!」
と表示される件に関して。
前まで起動していたのに起動しなくなった人、
もしくは起動しない人

原因:80番ポートが使用されている可能性があります。
対策:80番ポートを使用しているアプリケーションを
   起動しない、または設定を変えることをお勧め
   します。

私はskypeで使用されていて起動できなくなっていました。
skypeは設定を変更することが可能です。
ツール→設定→詳細→接続→上記のポートの変わり、ポート80を使用
のチェックをはずす

初心者だけどやるしかない:

windows2003Server+apache2.2.4+tomcat5.5でWebサーバあげたいと思っております。apache2.2.4はそのままでSSL対応と聞いて。HPを参考にセットアップを進めてみましたが、opensslにてserver.key生成後、server.csrを生成しようとしたとき,
openssl.cnfから情報が取れない旨の英語メッセージが出てきました。
openssl.exe,openssl.cnfともに
c:¥program files¥apache software foundation¥apache2.2¥binの配下にこぴーしております。つたない状況報告ですが、何か足りない事由等ありましたらご指摘いただきたいのですが。

>初心者だけどやるしかない さん

こんにちは。server.csr 作成時に、どのようなコマンドを実行されましたか? その時、どのようなエラーメッセージが表示されていたか、貼り付けていただけると、詳しい状況が分かるかもしれません。。

ナギ:

はじめまして。

超ド級の初心者です。
このページの方法どおりにインストール手順を踏んだのですが、
動作確認時の「Test Configuration」を実行すると、
【Apache HTTP Server】ダイアログボックスが表示され、
「問題が発生したため、Apache HTTP Serverを終了します。」
「Microsoftに報告してください。」
などと出て、困っております・・・。
考えられるエラー要因としては、何があるのでしょうか?

情けない質問で申し訳ないのですが、何卒よろしくお願い致します。

>ナギさん

 はじめまして、こんばんは。すみません、確認が遅くなりました。

 "Test Configuration" は、httpd.conf の中身が正しいかどうかの確認をしています。ちょっと原因はよくわかりませんが、Apache の停止・再起動が正常にできるようでしたら、httpd.conf の設定は問題ありません。

 動作確認の方法ですが、"Test Configuration" 自体はコマンドプロンプト上でコマンドを実行しているものです。Windows のメニューから→プログラム→アクセサリ→コマンドプロンプトを選んで

【"C:\Program Files\Apache Software Foundation\Apache2.2\bin\httpd.exe" -w -t -f "C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf" 】
(標準のディレクトリの場合です。前後の"" も入力します。)

を入力してみても問題が出るかどうかが確認点の1つになりそうです。

ここで【 Syntax OK 】と表示されれば、"Test Configuration" のリンクファイルが何かおかしい、という事が分かると思います。

 コマンドプロンプト上でもエラーが出るようでしたら、Apache そのもの(httpd.exe)に何か問題があるのかもしれません。Apache を停止→起動しても問題が起こるようであれば、Apache に関連するファイルが何か壊れているかもしれません。もう一度 Apache 本体をインストールされたほうがよさそうです。
(作業前には conf ディレクトリの httpd.conf 設定ファイルなど、バックアップは必ずおとりください。)

 これで如何でしょう。。

ナギ:

ご回答、ありがとうございます!!

このページの方法をインストール・アンインストールを
繰り返しやってたら起動できました!

ちなみに、停止・再起動さえもままならない状態でした。
httpd.confとやらの設定を間違っていたかもしれません・・・

お手数お掛けしまして申し訳ございません。
初心者の自分に対しても熱心にお答えして頂き、
感動しました。
本当にありがとうございました。

ナギ:

ご回答、ありがとうございます!!

このページの方法をインストール・アンインストールを
繰り返しやってたら起動できました!

ちなみに、停止・再起動さえもままならない状態でした。
httpd.confとやらの設定を間違っていたかもしれません・・・

お手数お掛けしまして申し訳ございません。
初心者の自分に対しても熱心にお答えして頂き、
感動しました。
本当にありがとうございました。

yuki:

お世話になっております。
YUKIと申しますPHP環境初心者です。

今回自宅のパソコンにapatch2.2.4とphp5.2.3の環境を
構築するべくこのサイトを参考にさせていただいています。
apatchの環境はちゃんと動作しているようなのです
(起動もちゃんとしています。)が、http://127.0.0.1/test.phpとアクセスしてもずっと
待ち状態のままでなにも表示されません。

エラーログにも特になにも表示されていませんし、再インストールを何回行っても同じ状況で困っています。
phpをインストールする前でapatchのみで構成ファイルのカスタマイズを行う部分ではI workとはちゃんと表示
されていました。ということはやはり設定のどこかが問題あるのでしょうね。
なにかアドバイスがあればお願いしたいのですが...
よろしくお願いします。

yuki:

お世話になっております。
YUKIと申しますPHP環境初心者です。

何度もすいません。
再度インストールを行っても状況がかわりません。(http://127.0.0.1/test.phpとアクセスしてもずっと
待ち状態のままでなにも表示されず)
ちなみにエラーログの内容は、
[Wed Aug 15 02:02:27 2007] [notice] Parent: Received restart signal -- Restarting the server.
[Wed Aug 15 02:02:27 2007] [notice] Child 3920: Exit event signaled. Child process is ending.
[Wed Aug 15 02:02:27 2007] [notice] Apache/2.2.4 (Win32) PHP/5.2.3 configured -- resuming normal operations
[Wed Aug 15 02:02:27 2007] [notice] Server built: Jan 9 2007 23:17:20
[Wed Aug 15 02:02:27 2007] [notice] Parent: Created child process 380
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\PHP\\ext\\php_mssql.dll' - \x...
[Wed Aug 15 02:02:27 2007] [notice] Child 380: Child process is running
[Wed Aug 15 02:02:28 2007] [notice] Child 380: Acquired the start mutex.
[Wed Aug 15 02:02:28 2007] [notice] Child 380: Starting 250 worker threads.
[Wed Aug 15 02:02:28 2007] [notice] Child 3920: Released the start mutex
[Wed Aug 15 02:02:29 2007] [notice] Child 3920: Waiting for 250 worker threads to exit.
[Wed Aug 15 02:02:29 2007] [notice] Child 3920: All worker threads have exited.
[Wed Aug 15 02:02:29 2007] [notice] Child 3920: Child process is exiting
[Wed Aug 15 02:02:29 2007] [notice] Child 380: Starting thread to listen on port 80.
です。途中のWarningは、インストールしたPHPからSQL ServerのDBにアクセスしたいのでそのドライバの問題だと思います。これが問題かどうかはわかりませんが、もしこの件が問題だとしたら別問題だと思います。この点も何かお分かりでしたらご教授ください。
お手数をおかけします。よろしくお願いします。
なおPHP のバージョンは5.2.3を使用しております。
やはり5.2.0にしたほうがいいのでしょうか?
このバージョンを探していますがもうないようですね?

yuki:

お世話になっております。
先日質問させていただいたYUKIと申します。

あれ以後ネット上でいろいろ調べていたのですが、PHPのDLLであるphp5ts.dllをC:\Windowにコピーしなさいという記述を見つけ、ためしたらOKでした。
お騒がせしました。
あとMySQLとphpMyAdminです。がんばってインストールしてみます。
ありがとうございました。

はじめまして

あるレンタルサーバに xoops が標榜どおり?簡単にインストールできたので、手元の Windows XP にも装填を試みましたが、前段階の PHP 装填で手こずりましたところ、こちらの情報で無事装填できました。 ありがとうございます。

装填時のメモを以下に簡単に記述します。
なお、今回私が使用したファイル群は下記のとおりです。
apache_2.2.4-win32-x86-no_ssl.msi
mysql-essential-4.1.22-win32.msi
Package_Legacy_2_1_1.zip
php-5.2.4-win32-installer.msi
php5.2-win32-200709190830.zip
----------

・php5apache2_2.dll
 .msi ファイルを展開した中には入っていなかったようですので、別途 snapshot から .zip を取得・展開して該当ディレクトリにコピーしました。

・conf/mine.types 末尾に記述する2行は、そのまま追記しました。

・PHP インストール時、以下の2件が見あたりませんでした。 いずれもネグってそのまま進行しています。
 1. +Web Server Setup - Apache 2.2.x Module ボタン
2. Multi-Byte String 選択後の Do you want 以下略…ダイアログ
-------------

・追加でMySQL インストール時のメモは以下のとおりです。
 1. セットアップタイプは Typical を選択
 2. インストールフォルダは、デフォルトのまま Program Files
3. Standard Configuration を選択
4. Install As Windows Service を選択
5. root パスワードは、インストーラ上で設定
  (あとで当該ファイルを編集したりは不要でした)

・文字化けの不具合は、今のところ下記の内容で対応しています。 ただし、xoops インストール直後の見た目が修復されているだけで、たとえば MySQL データベースの内容等が、この対応により不具合を起こしていないか等は私にはわかりません…

 私の場合の文字化けは、インストール直後にトップページを表示したときに、メインメニュー・ログインなどの文字が????????? 化けるという症状です。

 1. AddDefaultCharset Off にしました。
   ただ、次の対応の方が結果に対しては支配的のような気がします。 再度 shift_jis に変えての試行はしていません。

 2. my.ini の以下の部分2箇所を編集します。
  ※ 以下の作業はデータベースを作成する前に行います。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[mysql]
default-character-set = ujis ← latin1 から書き換え
[mysqld]
default-character-set = ujis ← latin1 から書き換え

  変数表示で下記のようになっていれば良いようです。ナにもしなければ、ujis が latin1 になっていると思います。(スクロールアウトしてしまうので、適宜ファイルにリダイレクトします)本来変更が必要な箇所は、_database だけのようですが、全部変わってしまいました。 これにより不具合がおこるかもしれません…

| character_set_client | ujis
| character_set_connection | ujis
| character_set_database | ujis
| character_set_results | ujis
| character_set_server | ujis
| character_set_system | utf8

Cypressさん、貴重な検証情報ありがとうございますm(_ _)m

前佛さん、こんにちは。

今回は若干の追加情報と、xoops の Windows Vista への装填メモを記述します。前回書き忘れていましたが、私が装填したのは xoops cube の方でした。

今回の装填に使用したファイル群は下記のとおりです。
apache_2.2.4-win32-x86-no_ssl.msi
mysql-essential-4.1.22-win32.msi
Package_Legacy_2_1_1.zip
php5.2-win32-200709190830.zip

Vista への装填は、前佛さんの記述に沿っていけば OK ですので差分事象を記述したいと思います。

----------
なお、今回の作業中に生じた不具合事象をあらかじめことわっておきますが、本メモをもとに作業をされていかなる不具合が生じましても責任は持てません。

 ・Apache 装填後あたりから Windows Installer が起動できなくなったので調べてみたところ、system32 ディレクトリ内に拡張子なしのファイル msiexec ができていました。当該ファイルを削除して回復。
 ・この Windows Installer が不具合となると、Windows Update や他のソフトウェアの install/reinstall もできなくなりますのでじゅうぶんご理解願います。
----------
1. Apache の装填
 ・コマンドプロンプトを右クリックして管理者で実行を選択する。
 ・↓コマンドラインから Windows Installer を起動する。
 C:\Windows\system32\msiexec /i C:\tmp\apache_2.2.4-win32-x86-no_ssl.msi
 ※↑の方法で実行しなかった場合、コマンドプロンプト内に多量のエラーらしきメッセージが出て正常に装填されなかった。 どうやらパーミッション拒否された旨のメッセージだった模様。
 ・スタートアップに登録される Monitor Apache Servers は 起動に失敗する。 「この操作を正しく終了しました。」のメッセージボックスが表示されて望ましくないので、スタートアップから削除しました。 頻繁に Apache サービスの起動・停止を行わないのであれば、特段不便はないかと思いますが…

2. PHP の装填
 ・ファイルを解凍後、そのまま c:\PHP へコピーします。なお、インストーラと違って不要なファイルも丸ごとコピーとなりますので、気になる方は手作業で適宜削除されてもよいでしょう。
 ※↑今回手作業を行った理由は冒頭に書いた事象によりインストーラが起動しなかったからですが、もしかすると前項と同様の管理者権限で実行する方法で装填できるかもしれません。
 ・環境変数 PATH に PHP の位置を追記します。 これにより、ありがちな php.ini を c:\windows にコピー…をする必要はなくなります。
 ・php.ini-dist を php.ini にリネーム後、編集します。 php.ini 内で、extension=云々がたくさん並んでいるところがありますが、インストーラを使わない場合は、↑この中のうち php_mysql.dll のコメントを忘れずに外します。 これを忘れると、xoops インストール時にデータベースアクセス設定画面が真っ白になって何もできなくなります。
  各サイトを巡ってみると↑意外と多いようですので注意しましょう。
 ・文字化け対策
  前回、メニュー画面の一部文字が化ける事象に対応しましたが、実は装填時の画面や遷移画面(ログイン後やページを移るときに、わずかな時間表示される待ちください…のような画面)の文字は化けたままでした。 今回、下記の設定により遷移画面等も含めて文字化けはほぼ解消された模様ですので、ご紹介したいと思います。これは XP および Vista で同じ設定で解消できている模様です。
  ※私が装填したのは xoops cube であることにご注意ください。

  output_buffering = Off
  default_charset = EUC-JP
  mbstring.language = Japanese
  mbstring.encoding_translation = On
  mbstring.http_input = auto
  mbstring.http_output = EUC-JP
  mbstring.internal_encoding = EUC-JP
  mbstring.detect_order = auto
  mbstring.substitute_character = none

3. MySQL の装填
 ・実は、mysql-essential-5.0.45-win32.msi で最初装填作業をしていましたが、冒頭の不具合事象に気づくのが遅れ、せっかく装填したものをいったん外す等により、結局 mysql-essential-4.1.22-win32.msi での実装となっています。 なお、外すときは、C:\Program Files\MySQL のディレクトリは手作業で消しておいた方が望ましいでしょう。 不具合事象としては、デフォルトのサービス名(←管理画面で一覧表示されるもの)が消えずに残ってしまい、再装填時に「消すか違う名前を選べ」のダイアログが出ましたので、しかたなく MySQL41 の名前で続行しています。 これで特段動作には支障ありませんでした。
※サービス一覧からの消し方を教えてください。
 ・XP では MySQL インストール後、Configuration もチェックボタンにデフォルトチェックで連続して行えましたが、Vista ではウィンドウが落ちて続行できません。 スタートメニューからたどって Wizard を起動します。 起動後は特筆すべき箇所はありませんでした。
 ・データベースを作る前に、忘れずに my.ini 内の latin1 2箇所を ujis に書き換えます。 なお、mysql-essential-5.0.45-win32.msi で装填して変数を表示させてみると、ファイルシステムの項目が増えていました。 私は結局 MySQL 5 を外してしまいましたが、おそらくは支障ないものと想像されます。
| character_set_client | ujis  
| character_set_connection | ujis  
| character_set_database | ujis  
| character_set_filesystem | binary 
| character_set_results | ujis
| character_set_server | ujis
| character_set_system | utf8

>Cypress さん
またまた貴重な情報ありがとうございます!
私はまだVista環境に本格移行できていないのですが、
(ようやく職場で Vista 環境にありつけました)
時間を見て検証させていただきます。

ayu:

はじめまして。

初環境作りで参考にさせて頂きました。
無事にテスト画面が表示されて喜び勇んでいます。
本当にありがとうございました。

チヒロ:

はじめまして。
昨日から解決できていなかったApache2.2の初期設定が非常に分かりやすく解説されていて、やっと成功することができました!!
本当にありがとうございました!!

naotaka:

始めまして、

『 Windows環境へのApache2.2.4+PHP5.2.0導入(インストール)記録 』のなかの
「PHPの設定」の「632行目 マルチバイト文字関数が有効か確認します。」のところですが、
私のパソコンにインストールしたphp.iniには633行目にセミコロンがついた状態の   ;extension=php_mbstring.dll
があるのですが…、このセミコロンを削除すればいいのでしょうか?。
 さらに、632行目に
 extension.dir=C:\Program Files\PHP\ext
を追加すると、632行目と633行目の並び方が逆になってしまってもよいのでしょうか?、
 ぜひ、お教えください。
よろしくおねがいします。

naotaka:

判りました!!
632行目と633行目を並び替えて無事PHPのWebサイトに接続できました。お騒がせしました。

>naotakaさん、
すみません、投稿に気がついていませんでした・・・申し訳ありません。
解決されてなによりです。

シィリル:

ほんまにほんまに、ありがとうございます!

こちらの情報を見て何とかphpinfoの画面を拝めました。

何が原因で表示できなかったのかは、よくわかってませんが、とりあえず良しです^^

一応参考までに、バージョン情報

apache2.2.8
php5.2.5インストーラー版
postgreSQL8.3.0-1

SQLは動作確認とってないんですが、とにかく先に進めます。ありがとう!

シィリルさん、ご丁寧にありがとうございます。
お役に立ててなによりですヽ(・∀・)ノ

そろそろ新しいバージョンに対応したページを作成したほうがよさそうですね・・

sjk-e351:

はじめまして。
Apache 2.2.8 + php 5.2.5 のインストールをしようと四苦八苦して、このページの設定でようやくphpinfoの画面を見ることができました。
本当にありがとうございます!

phpもApacheもバージョンによって設定に大きな違いがあるのが難しいところですね…

sjk-e351さん、はじめまして。
なんとかお役に立てて幸いです。
楽しんでくださいねヽ(・∀・)ノ

PHP4→PHP5で結構苦労されてる方がいらっしゃるようですねぇ・・
(業界的な意味で)

佐藤鎌一:

現在、ローカルマシーンにテストサーバーを作っております。
iMacにBootcampでWindowsXP Home Editionをインストールしております。
こちらのサイトや本を参考に作業を進めたのですが、ブラウザから http://localhost/test.php へアクセスするとファイルのダウンロードのダイアログが現れます。
たぶん初歩的なミスだとは思うのですが解決方法をお教えいただけると幸いです。
どうぞよろしくお願いいたします。

佐藤さん、こんにちは。
確認点は2つあります。

1つめは、Apache に PHP のモジュールが正しく読み込まれているかどうかという点です。

Apache の再起動(restart) をかけてみて、Apache の error_log に「[notice] Apache/2.2.4 (Win32) PHP/5.2.0」というような記述があれば PHP が Apache に組み込まれています。表示されていなければ、httpd.conf に

LoadModule php5_module "C:/Program Files/PHP/php5apache2_2.dll"

このような記述が無いか、何らかの理由によってモジュールが読み込まれていませんので、確認が必要になります。

もう1つは、.php の拡張子が PHP のファイルである、といった関連づけが Apache 側でない事も考えられます。httpd.conf に

AddType application/x-httpd-php .php

この記述があるかどうか、確認をされたほうがいいと思います。いかがでしょう。

micotaro:

はじめまして。
Apache2.2.4+PHP5.2.6をインストールしてみましたが、なぜだかうまくいきません。

ApacheのTest configurationをすると、httpd.confの「PHPIniDir "C:/Program Files/PHP"」のところで以下のようなエラーがでてきます。
Only first PHPINIDir directive honored per configuration tree - subsequent ones ignored

これまでのみなさんのコメントなどを見たかんじでは、Apacheの再起動をしてないのが原因かと思いますが、Apache HTTP Server 2.2-Control Apache Serverには、Start Apache in consolしかなくて、Restartというのはありません。

PHP5.2.0だと、みなさんうまくいっているようですが、現在はもう提供されていないようなんですが・・・。

すみませんがご指導いただけないでしょうか。
どうぞよろしくお願いいたします。

>micotaroさんへ

こんばんは。すみません、しばらく離れていて、全然気がついていませんでした。

「Only first PHPINIDir directive」と書いてある事から、httpd.conf の中に、【PHPIniDir】の記述が2行以上あったりしていませんか? Apacheの起動しようとするとエラーが出るようであれば、その表示される行の前後だけでなく、既に別の場所に同じ記述が無いかどうか、確認をされることをおすすめします(・∀・)

demitomo:

前佛様 
はじめまして。
PHP環境初心者のdemitomoと申します。
MySQLを勉強しようと思い、vista環境にApache2.2.11とphp5.2.8の導入をまず試みたのですが、どうしてもApacheにphpが組み込まれません。error.logには以下のように出ています。

[Sun Feb 01 13:34:06 2009] [notice] Parent: Received restart signal -- Restarting the server.
[Sun Feb 01 13:34:06 2009] [notice] Child 3236: Exit event signaled. Child process is ending.
httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.0.2 for ServerName
[Sun Feb 01 13:34:06 2009] [notice] Apache/2.2.11 (Win32) configured -- resuming normal operations
[Sun Feb 01 13:34:06 2009] [notice] Server built: Dec 10 2008 00:10:06
[Sun Feb 01 13:34:06 2009] [notice] Parent: Created child process 2568
httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.0.2 for ServerName
httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.0.2 for ServerName
[Sun Feb 01 13:34:06 2009] [notice] Child 2568: Child process is running
[Sun Feb 01 13:34:07 2009] [notice] Child 3236: Released the start mutex
[Sun Feb 01 13:34:07 2009] [notice] Child 2568: Acquired the start mutex.
[Sun Feb 01 13:34:07 2009] [notice] Child 2568: Starting 64 worker threads.
[Sun Feb 01 13:34:07 2009] [notice] Child 2568: Starting thread to listen on port 80.
[Sun Feb 01 13:34:08 2009] [notice] Child 3236: All worker threads have exited.
[Sun Feb 01 13:34:08 2009] [notice] Child 3236: Child process is exiting

上記でコメントされているように
LoadModule php5_module "C:/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
の追記は確認いたしました。

Test Configurationでは問題はないようです。Restartも行っております。しかし私もtest.php へアクセスするとファイルのダウンロードのダイアログが現れます。

PATH に PHP の位置を追記しPHPIniDir "C:/PHP/"も追記してありますが、他に読み込めない原因は何か考えられますでしょうか?

ちなみに導入に用いたファイルは
apache_2.2.11-win32-x86-no_ssl.msi
php-5.2.8-Win32.zip
です。

本を見ても内容が古く使えず、他の方々の導入記録も参考にさせて頂いておりますが、なかなか上手くいきません。申し訳ございませんが、ご教授頂けると幸いです。よろしくお願いいたします。

>demitomoさん
こんばんは、すみません、ずいぶんとページのチェックが遅れてしまいました。

いただいたログの情報からしますと、PHP が Apache に組み込まれていないように見えます。httpd.conf の文法的には問題ないようですが、おそらく PHP の記述が有効になっていないので、test.php がPHPとしては処理されず、ブラウザからするとダウンロードがはじまって見えるように思います。

うーん、ちょっとこのページの記述も古くなってきているので、外しているかもしれません。Vista 環境ということで、自分が気がつかない何かポイントがある可能性も高いです。。時間があるときに最新のものに更新したいと思います。

jack:

はじめまして。
PHP初心者です。

早速質問です。
上記のとおりに設定させていただきましたがerrorがでて動作していないようです。

XPpro環境にApache2.2.11とphp5.2.9をインストールしています。

errorとしては、

can't local API module structure `php5_module’ in file "C:/Program Files/PHP/php5apache2_2.dll": No error

と表示されます。

当然ながらhttp://localhost/ではページを表示できませんという状況です。
いろいろいじる前には出ていた I WORK! みたいな表示もなくなりました。

説明が不明瞭かも知れませんが、ご教授いただけると幸いです。
よろしくお願いします。

> jackさん

こんにちは、前佛と申します。
今会社なので XP 環境が無いため、詳細は確認できないのですが、、

> 当然ながらhttp://localhost/ではページを表示できませんという状況です。
> いろいろいじる前には出ていた I WORK! みたいな表示もなくなりました。

メモ帳や、その他のエディタなどで Apache の設定ファイル httpd,conf を探して編集することで、ウェブは見えるようになります。

httpd.conf から、以下のような行があると思います。

LoadModule php5_module C:/Program Files/PHP/php5apache2_2.dll

PHP を Apache (ウェブサーバの本体で It Works! を表示するところ) が読み込めていないため、Apache が起動できていないみたいです。

・・・続きは、ちょっと帰ってから見てみますね。

>jackさん

こんばんは、前佛です。
「Can't locate API module structure」と PHP のエラーが出ている件ですが、その後いかがでしょう。。

直接の現象を確認していないので何ともいえませんが、PHP のモジュールを読み込む際のエラーのようです。

しん:

大変丁寧なつくりの解説で... それだけに自己嫌悪状態ですが ヽ(__ __ヽ)
もう、インストール・アンインストールを7回繰り返して
どうしても上手くいかず、お手上げです。

It works!は出ますが、そこまで。
syntaxerrorの行表示によれば
DocumentRoot "E:\www\htdocs"の記述のところなのですが、コピペして使っても結果は同じままで。

test.phpも蹴られますが、それ以前の状態のようです...

>しんさん

こんばんは、前佛と申します。

> syntaxerrorの行表示によれば
> DocumentRoot "E:\www\htdocs"の記述のところなのですが、コピペして使っても結果は同じままで。

なるほど、まず、おそらくは DocumentRoot にあたるフォルダが実際に存在していないため、エラーが出ているのではないかと思います。

「E:\www」というのは私の環境なので、試しに「c:\www」などと変更してみてはいかがでしょう。あらかじめ「c:\www」というフォルダは作成しておく必要があります。

> test.phpも蹴られますが、それ以前の状態のようです...

確認点としては2つあります。
まず、PHP のモジュールが読み込まれているかどうかです。Apache の error_log を確認します。

Apache の restart (再起動)を行うと、Apache のバージョンにあわせて、PHP のバージョンが表示されると思います。もし、PHP のバージョンが表示されなければ、PHP の読み込みには失敗している状況と思います。いかがでしょう。

しん:

ありがとうございます^^;
本当にお恥ずかしい限りのありさまですが...
さっそくご指摘の通りに。
今度はUserDir(インクルードファイルの)の5行目とでまして ヽ(__ __ヽ)
バージョンのこともありますし、
皆さんの書き込みから該当するところを抜き出してみたり、apache配布元のサイトを参照したりと、色々やってはいるのですが、一つ直すとまた一つでして( TωT)

phpは全く認識されていないようです。
apacheそのもの起動出来ない("The requested operation has failed!")ので、もう一度インストールしなおしてからチャレンジします。

できるまで頑張ります(。-`ω´-)ψ

しん:

度々恐れ入りますm(_ _"m)
やっと、進展しました♪

最後の手順、test.phpで
Object not found!となってしまいますが、
その下にError 404
localhost
06/18/09 10:53:39
Apache/2.2.11 (Win32) PHP/5.2.9-2
と、表示が続きます。

初めて見る状態なので、いくらかでも前に進んだかと気持ちが楽になりました^^;
httpdファイルのバックアップを取りながら色々と試してみます。

しん:

本当に度々恐れ入ります^^;

成功しました~(///∇///)
やっと、phpinfo() を見ることができました♪

8回目のインストールで自分でも呆れていますが...
もぅ”何がどう”というのもよく分らずでして、参考にしていただけそうな情報も何一つ寄せられないのが申し訳ないのですが。
きちんと一つ一つ、まっさらの状態から丁寧に確実に、でちゃんといけました♪
本当にありがとうございます^^
勉強に励みます~♪

yuki:

女みたいな名前ですが、男です^^;
ご了承下さい。


色々なサイトを観覧し、かれこれインストールにどれだけ
時間を費やしたことでしょうか・・・

本当にこのサイトに出会えて良かったです。

無事に今日インストール(接続動作確認)が出来ました。


ありがとうございます。

>しんさん&yukiさん

ご丁寧にお知らせありがとうございます。
無事に動いてなによりです。

keisuke:

こんにちは。

Vista環境の Apache 2.2.11 + PHP 5.3.0 で
ご紹介の導入方法を試みておりまして
一通り設定は完了しましたが
最後に http://localhost/test.php へアクセスしてPHPのバージョン情報を表示するところで
添付画像のようなバージョン情報が正常に表示されません。

具体的には
ドキュメント・ルートに test.php というファイルを新規作成し
ファイの中身を にした
のみ表示される状況です。

主観的には
Apache の再起動を行った際のコマンドプロンプトに

httpd.exe: Synatax error on line 128 of C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf: Cannot load C:/Program Files/PHP/php5apache2_2.dll

のように
php5apache2_2.dll の読み込みの失敗が原因かと思っておりまして
実際に確認しましたところ
PHPフォルダ内に php5apache2_2.dll のファイルがありませんでした。

このDLLファイルはそもそもソフト同伴されていないということでしょうか?

また他に原因を解決できることがあれば
お知らせ頂きたく思います。

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

>keisuke さんへ。

こんばんは、前佛と申します。

すみません、今手許に Vista 環境が無いため、すぐに確認ができないのですが、もしかして管理者権限で PHP の最新インストーラー(php-5.2.10-win32-installer.msi)を実行されていない可能性は無いでしょうか。

たしか C:\Program Files 以下を書き込む場合、管理者(Administrator)権限でないと、書き込みが出来なかったような気がしますので、念のためです。

今こちらの XP の環境では、既に動作している PHP を、インストーラーを使って、最新の 5.2.10 にバージョンアップすることができました。

作業はインストーラーからのみで、ファイルの移動や設定ファイルの変更は行っていません。
C:\Program Files\PHP の中に、php5apache2_2.dll というファイルが設置されていました。

また、httpd.conf には、

#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "C:/Program Files/PHP/"
LoadModule php5_module "C:/Program Files/PHP/php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL

このように従来と同じような PHPIniDir と LoadModule の下が、ファイルの末尾に追加されていました。

keisuke さんの状況としましては、おそらくインストール時のトラブルではないかと思いますので、そのあたりを中心に、再度ご確認をなさってみてはいかがでしょう。

Vista については、明日ちょっとみてみますね。

>keisuke さんへ

今こちらでも確認しているのですが、Vista だとインストーラーを使ってのインストールはうまくいかないかもしれません。

ちなみに、今試されている PHP のバージョンはいくつでしょう。インストールを試みられている .msi ファイル名とあわせてお知らせ頂くことは可能でしょうか?

keisuke:

ご回答ありがとうございます。

php-5.3.0-nts-Win32-VC9-x86.msi で進めておりまして
一旦全てをアンインストールし
ご指摘頂いた php-5.2.10-win32-installer.msi でインストールしましたところ
php5apache2_2.dll の設置が確認できまして
Vista環境でも無事にバージョン情報が表示されるようになりました。

ですので
インストールするバージョンが原因だったようです。

PHPのインストール途中で警告が1回促されたのですが
一瞬のことだったのでそちらのご報告ができないのが残念です。

最後に2つ質問があります。

1.
>次にウェブサーバをどれにするか表示されます。設定は既に手動で Apache の httpd.conf などを編集済みなので『 Do not setup a web server 』を選んで【 Next > 】を押します。

この工程のあとに

>+ Web Server Setup - Apache 2.2.x Module をクリックして『 Will be install on local hard disk 』(ハードディスクにインストールする)を選ぶことは必須です。

のように編集済みでもウェブサーバの選択が必須なので
結局前述の工程の意味が無いように思うのですが
何か意図があるのでしょうか?


2.
wiki のページを読み込む場合は
DocumentRoot を wiki ディレクトリに差し替える以外に
重要な変更点はありますでしょうか?

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

>keisukeさんへ
無事動作できてなによりです。

1.については、ご指摘の通り、確かに既に前行程で記述を直接行っているので、選ぶ必要はありません。『 Do not setup a web server』が正解ですね。修正しておきます。

2.の wiki の場合、お使いの wiki のマニュアルに従って設定しておけば、特に問題なく動作すると思います。パスの記述方式が、もしかしたら Windows だと違うなどといった事はあるかもしれません。

なお、5.2.10 の動作ですが、さっき色々試していたところ、同様の現象ではないかと思われるダイアログが表示されました。

「PHP 5.2.10 Setup
There is a problem with this Windows Installer package. A script required for this install to complete could not be run. Contact your support personnel or package vendor.」
やりたかった事は、httpd.conf への PHP の記述を自動化(手動で行っていた .php の関連づけやモジュールのパスの記述の部分)したかったのですが、なぜかインストーラーの影響か正常に実行できなかった、というエラーが出ていました。

たぶん、何らかの問題があるとは思うのですが、今のところ原因はわかっていません。このあたり、もしまた分かれば、後日こちらに記載します。

keisuke:

質問の2件につきまして
ご対応ありがとうございます。

wiki の方は別途マニュアルに従って設定していきます。

エラーの現象は不安に残る部分ですので
定期的にこちらをチェック致したく思います。

>keisuke さん
エラーにについては、こちらでも情報をあつめてみます。
このページも少し古いバージョンに対する記述なので、時間を取って Vista 向けにとりまとめてみようと思っています。

keisuke:

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

ところでウェブサーバの件で今一度インストールする機会があったのですが
『Do not setup a web server』だと php5apache2_2.dll が設置されず
Apache 2.2.x Module で設定すると設置されるようです。

この場合ですと
conf に関するディレクトリを指定する画面になりますが
取りあえずデフォルトのままで進めますとPHP記述自動化のエラーが促されます。

以上報告とお願いでした。

mayu:

初歩的な質問で申し訳ありませんが
"test.php"は、どこのフォルダに置けばよろしいのでしょうか?
localhostで設定しているのですが、\:c の直下でよろしいのでしょうか。
”Not Found”と出ているので、ファイルの置く場所が違っていると思うのですが…。

http://localhost/にアクセスすると、きちんと動いているという表示がでます。

どうぞよろしくお願い致します。

>keisukeさん

すみません、ご指摘ありがとうございました。

メッセージを頂いていたのに今日という今日まで気がついていませんでした。もしかすると、このページの情報が古いかも知れませんので、ちょっと、はやめになおすようにはしたいと思います。。

>mayuさん

"test.php"は『DocumentRoot』(ドキュメント・ルート)で指定した場所におけば大丈夫です。

もし、"DocumentRoot c:\www" というディレクトリを指定されているのであれば、

http://localhost/

と表示されるパソコン内の場所(フォルダ)が

c:\www

になります。

ですので、

http://localhost/test.php

をブラウザから確認したい場合は、

c*\www\test.php

を設置すると大丈夫です。
いかがでしょう。

コメントを投稿 (サインインは必須ではありません、誰でもコメント出来ます/SPAMチェック中)

TypeKey IDを使って サインイン してください。

2007年01月10日 23:57に投稿されたエントリーのページです。

ひとつ前の投稿は「[update] Apache 2.2.4 リリース」です。

次の投稿は「平成19年1月10日(水) PHP+Apacheにはまりそうになった・・」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

原文地址:https://www.cnblogs.com/cy163/p/1587776.html