Windows7、Apache2.2.5、PHP5を使おうとしていますが、PHPをLoadするときに、SyntaxErrorとなってしまいます。
Windows 7 でApache2.2.25(httpd-2.2.25-win32-x86-openssl-0.9.8y.msi)をC:\serverの下にインストールし、PHPもzipをC:\php の下に展開しました。
httpd.confを更新してphpを使用できるようにしてapacheをstartすると下記のSyntax errorとなります。php5apache2_4.dll、php5ts.dll をc:\server\modulesにコピーして、httpd.confに下記を追加しました。
LoadModule php5_module modules/php5apache2_4.dll
LoadModule php5_module modules/php5ts.dll
AddType application/x-httpd-php.php
PHPIniDir "C:/php"
しかし、下記のようにSytax error on line 131エラーが表示され、ApacheをStartできません。
エラーメッセージもなんだかエンコードされているようで、意味不明です。
httpd.exe: Syntax error on line 131 of C:/server/conf/httpd.conf: Cannot load C:
/server/modules/php5apache2_4.dll into server: \x8ew\x92\xe8\x82\xb3\x82\xea\x82
\xbd\x83v\x83\x8d\x83V\x81[\x83W\x83\x83\x82\xaa\x8c\xa9\x82\xc2\x82\xa9\x82\xe8
\x82\xdc\x82\xb9\x82\xf1\x81B
Note the errors or messages above, and press the <ESC> key to exit. 25...
この種のエラーは昔から出ているようでいろいろな質問がこのサイトにもだいぶ前の質問として掲載されているようですが、なんだか同じような(一見つまらなさそうな)こんなエラーがまだ発生するのか・・・と意外に思ってしまいました。
どうやったらこのエラーを回避できるのでしょうか? どなたかご存知の方はいらっしゃいませんか?教えてください。
No.2ベストアンサー
- 回答日時:
PHP5.5はVC11
5.4はVC9
Apache 2.2.5はおそらくvc9なので5.5は入らない
入れたいのであればapache2.4をインストール。
ApacheLounge
http://www.apachelounge.com/
この回答への補足
補足です。
うまく起動できたバージョンの組み合わせで、PHPのインストーラーは、httpd.conf に下記の4行を書き加えています。
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "C:/php/"
LoadModule php5_module "C:/php/php5apache2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
LoadModule php5_module "C:/php/php5apache2.dll" の1行は、Sytax Errorになったバージョンの組み合わせの場合と、当然のことながら全く同じです。
なので、私は・・・
「何がSytax Errorだ!? The specified load module is not supported くらいの親切なエラーメッセージを出してくれよ。Apacheが世に出て何年経つんだよ!?」
なんて偉そうなことを、Apache協会に向かって、言いたくなってしまいました。
有難うございます。
私も下記のWebページなどを見ていまして、ApacheとPHPのバージョンがマッチしていないのでは? と思いはじめていまして、複数のバージョンの組み合わせで起動を確認していました。
http://www.phppro.jp/qa/1020
今の所、PHPのバージョンを古いものにしてみて、下記の組み合わせでApacheは正常に起動できました。
(ほかのバージョン、例えばPHP 5.2.17などでも動くのだろうと推測します)
PHP 5.2.13 php-5.2.13-win32-installer.msi
Apache 2.0.65 httpd-2.0.65-win32-x86-openssl-0.9.8y.msi
ApacheのWebで、Apache2.4.7のBinariesのWin32版をアクセスすると、2.0.65と2.2.5の2つのバージョンがダウンロードできるようです。
2.2.5であればPHPのもっと最近のバージョンとの組み合わせも可能なのかもしれません。
なお、PHPの動作確認はこれからやりますので。
追伸: こんなクダラナイことに3日も費やしてしまいました(笑い)。
他の初心者? の方の参考になれば幸いです。
No.1
- 回答日時:
\xXX を 16進の文字コードとして変換すれば、内容を読むことができます。
例えば、phpをコマンドラインから使えるおうにしていおいて
php -r 'echo "httpd.exe: Syntax error on line 131 of C:/server/conf/httpd.conf: Cannot load C:/server/modules/php5apache2_4.dll into server: \x8ew\x92\xe8\x82\xb3\x82\xea\x82\xbd\x83v\x83\x8d\x83V\x81[\x83W\x83\x83\x82\xaa\x8c\xa9\x82\xc2\x82\xa9\x82\xe8\x82\xdc\x82\xb9\x82\xf1\x81B";'
を実行する、とか。
で、
httpd.exe: Syntax error on line 131 of C:/server/conf/httpd.conf: Cannot load C:/server/modules/php5apache2_4.dll into server: 指定されたプロシージャが見つかりません。
というメッセージであることがわかります。
で、上にあるようなキーワードで検索すると
http://www.crystal-creation.com/web-appli/techni …
等が見付かります。
> この種のエラーは昔から出ているようでいろいろな質問がこのサイトにもだいぶ前の質問として掲載されているようですが、なんだか同じような(一見つまらなさそうな)こんなエラーがまだ発生するのか・・・と意外に思ってしまいました。
何時になっても「初心者」というのはいます。
初心者にご指導有難うございました。
しかし、何故エラーメッセージが16進で表示されるのでしょうか・・・これはUnicode UTF-16? の漢字コード。。。
ApacheがPCのLocaleでも参照して漢字でエラーメッセージを出しているのでしょうか・・・英語で出せばいいのに・・・と思ってしまいました。
また、よろしくご指導お願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- PHP php エラー 2 2022/10/23 16:43
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
- PHP PHP & MySQL: Server-side Web Development ペーパ 1 2022/04/19 19:23
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- MySQL #1062 - '0' は索引 'PRIMARY' で重複しています。とでています。 1 2023/01/01 06:13
- PHP eclipse pleiades phpのインストールについて 1 2023/02/03 17:15
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
php5のrename()は日本語をリネ...
-
ImageCreate関数が undefined f...
-
PHPMailerのサンプルコードのエ...
-
Amazost v2.0からエラーが出ます。
-
【初歩】 極単純なFOR文がなぜ...
-
PHPのif文でその処理を途中で抜...
-
FTPコマンドでディレクトリごと...
-
onedrive にexcelファイルをア...
-
トランザクションが原因?DBに...
-
PHP8を使うと、大量のWarningが...
-
.phpと.incファイルの違いはな...
-
社内イントラネットのHPにアク...
-
VBSの「MsgBox」について
-
PHPでFilename cannot be empty...
-
【file_exists】ファイルが存在...
-
PHP MySql ページング
-
別PHPファイルに変数を渡す
-
これの対応OSを教えて下さい。p...
-
Subversionのリポジトリの削除
-
MySQLの配置が変わったため、db...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPMailerのサンプルコードのエ...
-
ImageCreate関数が undefined f...
-
pdflib /pdi の拡張関数が有効...
-
mb_language("Japanese");でエ...
-
ブラウザからPHPをアクセスした...
-
php5のrename()は日本語をリネ...
-
インクルードパスの設定
-
PHP認証がProxy越しだと通らな...
-
soapclient
-
PHPでテンポラリフォルダに書き...
-
さくらインターネットにてsmart...
-
POSTした値を、別ページにもPOS...
-
php.exeが強制終了されてしまう
-
変数内でファイル名を変数の値...
-
marty3のvariableFilter
-
MAMPでsqlをインポートできない
-
XAMPPを導入した所、Warning: i...
-
Pear::QuickFormの代わりにな...
-
CodeIgniter/index.phpにアクセ...
-
PHPでredeclareのエラーがでる...
おすすめ情報