Перенаправление на другую страницу при падении базы данных

Главные вкладки

Аватар пользователя moonman moonman 19 февраля 2007 в 16:07

Как сделать чтобы когда база данных падает (демонстрируется таблица о падении база) срабатывало перенаправление на html-страницу?
Где это можно написать и что нужно изменить?

То есть мне нужно, чтобы когда сайт падает со скриптом - показывались действующе html-страницы.
Подоскажите плиз.

Комментарии

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 20 февраля 2007 в 11:26

Вероятно, где-то здесь \includes\database*.inc. Но лучше, имхо, не менять ядро, а попытаться сделать это штатными средствами.

Например, в Drupal 5.х есть возможность выдавать свои страницы об ошибках (см. админский интефрейс).


Я ставлю строчку "php_value error_reporting 7" в файл .htaccess, а вы? Smile Полный русский перевод Drupal 5.x и еще некоторых модулей.

Аватар пользователя B.X B.X 23 февраля 2007 в 2:14

"Вероятно, где-то здесь \includes\database*.inc. Но лучше, имхо, не менять ядро, а попытаться сделать это штатными средствами."

Нет, это находится в database.mysql.inc на 55 строчке:
<?php
// - TRUE makes mysql_connect() always open a new link, even if
// mysql_connect() was called before with the same parameters.
// This is important if you are using two databases on the same
// server.
// - 2 means CLIENT_FOUND_ROWS: return the number of found
// (matched) rows, not the number of affected rows.
$connection = mysql_connect($url['host'], $url['user'], $url['pass'], TRUE, 2);
if (!$connection) {
drupal_maintenance_theme();
drupal_set_title('Unable to connect to database server');
print theme('maintenance_page', 'This either means that the username and password information in your settings.php file is incorrect or we can\'t contact the MySQL database server. This could mean your hosting provider\'s database server is down.
The MySQL error was: '. theme('placeholder', mysql_error()) .'.
Currently, the username is '. theme('placeholder', $url['user']) .' and the database server is '. theme('placeholder', $url['host']) .'.

  • Are you sure you have the correct username and password?
  • Are you sure that you have typed the correct hostname?
  • Are you sure that the database server is running?

For more help, see the Installation and upgrading handbook. If you are unsure what these terms mean you should probably contact your hosting provider.');
exit;
}
?>

Только какими штатными средствами это сделать? Проще поменять ядро...

Аватар пользователя B.X B.X 24 февраля 2007 в 4:02

я имел ввиду, что если не изменять эти строки в ядре, то что можно сделать?
именно автоматически чтобы работало... в теме что-то изменить или что? и интересно, в пятом Друпале точно такая же ситуация?