0

PHP 5.2.10 で単純な CentOS 5.5 サーバーを実行しています。PHP Simple HTML Dom パーサーを使用しようとしていますが、500 サーバー エラーが発生します。スクリプトは次のとおりです。

<?php
include_once('simple_html_dom.php');
$html = file_get_html('http://www.google.com/');

ご覧のとおり、URL を開こうとしている以外は、まだパーサーで何もしていません。そのfile_get_html結果、500 サーバー エラーが発生します。

httpd エラー ログにエラーが表示されません。そのため、問題を解決するためにどこを見ればよいかわかりません。Simple HTML Dom パーサーの唯一の PHP 要件は、PHP 5+ (チェック) と php allow_url_fopen = On(チェック) のようです。

4

4 に答える 4

4

バージョン 5.2 以降、致命的なエラーが発生し、display_errors がオフの場合、PHP は HTTP 500 応答を生成します。オンにすると、スクリプトの実行が停止するエラーが表示されます。ファイルが含まれていない (許可、パスが間違っている) 可能性があり、file_get_html() が定義されていないか、file_get_html() が致命的なエラーを生成する可能性があります。

于 2011-09-01T08:16:38.973 に答える
2

このfile_get_contentsを試してください

于 2011-08-31T17:42:22.367 に答える
2

「php-mbstring」モジュールがインストールされていないためでしょうか?あなたはini_set('display_errors', 'On');これをチェックアウトするために使用することができます.

于 2012-02-07T06:59:53.490 に答える
1

Vitor の提案に従って、file_get_html を file_get_contents に変更することでこの問題を解決しました。simple_html_dom で「検索」機能を使用したかったので、文字列をオブジェクトに変換する必要がありました。

$string = file_get_contents(http://thedeadfallproject.com/)
$object = new simple_html_dom();
$object->load($string); // Load HTML from a string
于 2012-08-11T19:32:18.210 に答える