Проблема с Apache и PHP (с использованием PEAR) - PullRequest
0 голосов
/ 06 января 2010

У меня проблема с Apache, который перезапускается, когда я хочу открыть код PHP в браузере. Код:

require_once 'DB.php';
PEAR::setErrorHandling(PEAR_ERROR_DIE);

$db_host = 'localhost';
$db_user = 'root';
$db_pass = 'marylover';
$db_name = 'test';
$dsn = "mysql://$db_user:$db_pass@unix+$db_host/$db_name";
$db = DB::connect($dsn);

В последней строке происходит сбой -> я не могу подключиться к MySQL, я думаю. Я хочу использовать PEAR и Apache, но, похоже, они не любят друг друга. Помоги мне, пожалуйста! Спасибо.

1 Ответ

0 голосов
/ 06 января 2010

Когда вы говорите:

В последней строке происходит сбой -> я не могу подключиться к MySQL, я думаю. Я хочу использовать PEAR и Apache, но, похоже, они не любят друг друга. Помоги мне, пожалуйста! Спасибо.

Я предполагаю, что вы имеете в виду на уровне PHP (т. Е. Ваш скрипт завершается, на уровне веб-сервера "крах" отсутствует)?

Сборка PHP, используемая с Apache, скорее всего, будет отличаться от той, что вы используете с IDE (phpDesigner). Расширение mysql в сборке PHP, используемой с Apache, может пытаться подключиться к MySQL по-другому (например, через файл сокета, который не существует).

Если я не понял неправильно, может показаться, что скрипт завершается, поскольку не может подключиться к серверу базы данных.

Эта строка выглядит так, как будто это может произойти:

PEAR::setErrorHandling(PEAR_ERROR_DIE);

Вы должны попробовать запустить пример кода, чтобы увидеть, связана ли ошибка с установлением соединения с MySQL:

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$conn = mysql_connect('localhost', 'root', 'marylover');
mysql_select_db('test', $conn);

Также проверьте команду configure с помощью phpinfo () и посмотрите, скомпилирована ли одна из ваших сборок PHP с опцией - with-mysql-sock

...