Ошибка после миграции на новый сервер

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

Аватар пользователя kae8 kae8 18 января 2017 в 1:55

Здравствуйте,

Пытаюсь переместить Drupal сайт с хостинга на новую VPS. На хостинге установлена старая версия Drupal 7.31, сделал дамп SQL, копию папки sites, и все это переместил на новую VPS на Ubuntu 16.04, PHP5.6, Apache 2.4, MariaDB. На VPS создал чистую базу, восстановил в нее дамп старой базы, развернул новый Drupal 7.53 и положил старую папку sites в него. При попытке сделать обновление по адресу: http://site.com/update.php, вываливается гора ошибок не могу понять что с ними делать:

$mitem ) { if ( isset ($mitem ['link']['in_below']) ) { //$kill_neigh = true; } if ( count ( $mitem ['below'] ) ) { if ( $mitem ['link']['in_active_trail'] ) { menu_block_active_trail_kill_unused ( $tree[$key]['below'] ); } else { $tree[$key]['below'] = array (); } } } if ( $kill_neigh ) { foreach ( $tree as $key => $mitem ) { if ( $mitem ['link']['plid'] != 0 && !$mitem ['link']['in_active_trail'] ) { unset ( $tree[$key] ); } } } } function menu_block_active_trail_form_alter ( &$form, &$form_state, $form_id) { if ( $form_id == 'block_admin_configure' ) { if ( $form ['module']['#value'] == 'menu_block' ){ $hu = array(); $hu['#type'] = 'checkbox'; $hu['#title'] = t('Hide unactive links of this tree.'); $hu['#default_value'] = variable_get ( "menu_block_".$form['delta']['#value']."_del_unused", false ); $hu['#states']['visible'][':input[name=display_options]']['value'] = 'advanced'; $key = 'sort'; $keys = array_keys($form['settings']); $vals = array_values($form['settings']); $insertAfter = array_search($key, $keys); $keys2 = array_splice($keys, $insertAfter); $vals2 = array_splice($vals, $insertAfter); $keys[] = 'del_unused'; $vals[] = $hu; $s = array_merge(array_combine($keys, $vals), array_combine($keys2, $vals2)); $form ['settings'] = $s; $form['#submit'][] = 'menu_block_active_trail_block_configure_submit'; //dsm ( $form ); } } } function menu_block_active_trail_block_configure_submit ( $form, &$form_state ) { //dsm ( $form_state ); variable_set ( "menu_block_".$form_state['values']['delta']."_del_unused", $form_state['values']['del_unused'] ); } function menu_block_active_trail_get_node_tids ( $nid, $vid = 0 ) { $query = db_select ( 'taxonomy_index', 'ti' ); $query -> join ( 'node', 'n', 'n.nid = ti.nid' ); $query -> fields ( 'ti', array ( 'tid' )); if ( $vid ) { $query -> join ( 'taxonomy_term_data', 'ttd', 'ttd.tid = ti.tid' ); if ( !is_numeric ( $vid )) { $query -> join ( 'taxonomy_vocabulary', 'tv', 'tv.vid = ttd.vid' ); $query -> condition ( 'tv.machine_name', $vid, '=' ); } else { $query -> condition ( 'ttd.vid', $vid, '=' ); } } $query -> condition ( 'n.nid', $nid, '=' ); $ret = array (); $ans = $query -> execute (); while ( $tid = $ans -> fetchAssoc () ) { $ret [] = $tid['tid']; } return $ret; } function menu_block_active_trail_get_node_type ( $nid ) { if ( !is_numeric ( $nid )) { return FALSE; } $type = db_select ( 'node', 'n' ) -> fields('n', array('type')) -> condition ( 'nid', $nid, '=' ) -> execute () -> fetchAssoc(); return $type['type']; } function menu_block_active_trail_find_active ( &$menu, $active_links ) { $has_active = false; foreach ( $menu as $key => $mitem ) { $is_active = false; foreach ( $active_links as $link ){ if ( $link == $mitem['link']['link_path'] ) { $is_active = true; } } $bel = false; if ( count ( $mitem ['below'] )) { $bel = menu_block_active_trail_find_active ( $menu[$key]['below'], $active_links ); } if ( $is_active || $bel ) { $has_active = true; $menu [$key]['link']['in_active_trail'] = true; if ( $bel && !$is_active ) { $menu [$key]['link']['in_below'] = true; } } } return $has_active; } function menu_block_active_trail_get_bytid () { $tids = array (); if ( arg(0) == 'node' && is_numeric ( arg(1))) { $tids = menu_block_active_trail_get_node_tids ( arg(1)); } foreach ( $tids as $i => $tid ) { $tids [$i] = 'taxonomy/term/'.$tid; } return $tids; } function menu_block_active_trail_display_has_type_filter ( $display, $type ) { //print_r ( $display ); $has_type_filter = 0; if ( isset ( $display -> display_options ['filters'] )) { foreach ( $display -> display_options ['filters'] as $key => $filter ) { //echo "
".$key; //print_r ( $filter ); if ( $key == 'type' ) { $has_type_filter = 1; if ( $filter ['table'] == 'node' && $filter ['field'] == 'type' ) { foreach ( $filter ['value'] as $value ) { //echo "
VAL = ".$value." TYPE = ".$type; if ( $type == $value ) { return true; } } } } } } return $has_type_filter; } function menu_block_active_trail_get_byviews () { $links = array (); if ( arg(0) == 'node' && is_numeric ( arg(1))) { $type = menu_block_active_trail_get_node_type ( arg(1)); $all_views = views_get_all_views (); foreach ( $all_views as $view ) { if ( !isset ( $view->disabled )) { $def_has_type_filt = 0; $def = NULL; foreach ( $view->display as $display ) { //echo "
".$display -> display_plugin; if ( $display -> display_plugin == 'default' ) { $def = $display; $def_has_type_filt = menu_block_active_trail_display_has_type_filter ( $display, $type ); if ( $def_has_type_filt === 0 ) { break; } } //echo "ASD"; if ( $display -> display_plugin == 'page') { //print_r ( $display ); //echo "1 = ".var_dump(display_has_type_filter ( $display, $node['type'] )). "2 = ".var_dump($def_has_type_filt); if ( menu_block_active_trail_display_has_type_filter ( $display, $type ) === true || $def_has_type_filt === true && menu_block_active_trail_display_has_type_filter ( $display, $type ) === 0 ) { if ( isset ( $display -> display_options ['path'] )) { $links [] = $display -> display_options ['path']; } else { $links [] = $def -> display_options ['path']; } } } } } } } return $links; } function menu_block_active_trail_get_byfront () { if ( drupal_is_front_page () ) { return array(''); } else { return array (); } } ?>

Что уже пытался сделать:
Восстанавливал более ранний дамп SQL из бэкапа.
Разворачивал ранние версии Drupal
Установил PHP 5.6, вместо 7 версии

Помогите пожалуйста решить данную проблему

Комментарии

Аватар пользователя bumble bumble 18 января 2017 в 2:36

Попробуйте залить "родные" файлы сайта. Запустить сайт, отработать крон и кеш.
Если будет все нормально - пробуйте обновлять.

Аватар пользователя kae8 kae8 18 января 2017 в 10:09

Спасибо за ответ. С родными файлами такая же песня, попробовал запустить cron.php из директории, получил следующую ошибуку:

Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Notice: Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Notice: Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Notice: Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Notice: Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Notice: Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Notice: Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Notice: Undefined index: REMOTE_ADDR in /var/www/drupal/includes/bootstrap.inc on line 2901
PHP Parse error: syntax error, unexpected end of file in /var/www/drupal/sites/all/themes/mytheme/views-view-table--sli_page.tpl.php on line 49

Аватар пользователя bsyomov bsyomov 18 января 2017 в 10:23

Судя по ошибкам вы запускаете этот скрипт из shell, что конечно, не правильно - он рассчитан на запуск в контексте веб сервера.
Если вам надо запустить крон из cli, можно использовать drush.

Аватар пользователя voviko voviko 18 января 2017 в 10:57

drush должен быть новее или php старее.
тк версия сайта старая, то не факт что заработает сайт
ругается на /var/www/drupal/sites/all/themes/mytheme/views-view-table--sli_page.tpl.php
скорее всего битый архив.

Аватар пользователя kae8 kae8 18 января 2017 в 11:35

Поставил новый drush 8.1.9 с ним команды drush cc all и drush cron отработали успешно, далее также через drush сделал обновление сайта с 7.31 до 7.53 тоже успешно. В итоге на главное странице получаю следующее Sad Что делать, какие еще могут быть решения?

Аватар пользователя kae8 kae8 18 января 2017 в 14:28

Выдает вот так:
http:// drupal/user/reset/11484734016/S_vTCWtl7_N6hXTXfUOmj2h8RoMKe1IU7o_qYWhzEZw/login
но если вместо drupal, вставить адрес сайта то получается вот так:

Аватар пользователя voviko voviko 18 января 2017 в 13:31

ищите файл или ноду, или блок в котором выводится код. это скорее всего блок. поэксперементируйте, отключая блоки.
можете поочередно отключать самописные модули чтобы найти где ошибка. обновите menu_trial drush dl
menu_trial
сначала запустите обновления БД..

Аватар пользователя kae8 kae8 18 января 2017 в 13:58

Единственное не могу понять логику, почему не работает сайт даже если полностью переносишь все файлы включая старую версию Drupal и базу в новое место?

Аватар пользователя kae8 kae8 18 января 2017 в 14:24

В логах apache есть:

[Wed Jan 18 13:59:44.521391 2017] [:error] [pid 15446] [client 111.111.111.111:53826] PHP Parse error: syntax error, unexpected end of file in /var/www/drupal/sites/all/themes/mytheme/views-view-table--sli_page.tpl.php on line 49, referer: http://site.ru/
[Wed Jan 18 14:14:59.691129 2017] [:error] [pid 14920] [client 111.111.111.111:54035] PHP Parse error: syntax error, unexpected end of file in /var/www/drupal/sites/all/themes/mytheme/views-view-table--sli_page.tpl.php on line 49

Код самого файла:


<?php
/**
 * @file views-view-table.tpl.php
 * Template to display a view as a table.
 *
 * - $title : The title of this group of rows.  May be empty.
 * - $header: An array of header labels keyed by field id.
 * - $header_classes: An array of header classes keyed by field id.
 * - $fields: An array of CSS IDs to use for each field id.
 * - $classes: A class or classes to apply to the table, based on settings.
 * - $row_classes: An array of classes to apply to each row, indexed by row
 *   number. This matches the index in $rows.
 * - $rows: An array of row items. Each row is an array of content.
 *   $rows are keyed by row number, fields within rows are keyed by field ID.
 * - $field_classes: An array of classes to apply to each field, indexed by
 *   field id, then row number. This matches the index in $rows.
 * @ingroup views_templates
 */
if($rows[0]['field_sl_img_1'] || $rows[0]['field_sl_img'] || $rows[0]['field_sl_ico']) {
?>
<div class="slider">
    <div class="s-cont">
        <div class="midder-left"><div class="midder-right">
            <div class="s-cont-in">
                <?php foreach ($rows as $row_count => $row): ?>
                    <div class="s-cont-b s-cont-b-<?=$row_count?>">
                        <div>
                            <div><?=$row['field_sl_img_1']?></div>
                            <div><?=$row['field_sl_ico']?></div>
                        </div>
                    </div>
                <?php endforeach; ?>
            </div>
        </div></div>
    </div>
    <div class="s-imgs">
        <div class="s-imgs-in">
            <?php foreach ($rows as $row_count => $row): ?>
                <div class="s-slide s-slide-<?=$row_count?>">
                    <div><?=$row['field_sl_img']?></div>
                </div>
            <?php endforeach; ?>
        </div>
    </div>
    <div class="s-prev"></div>
    <div class="s-next"></div>

</div>
<? } ?>

Аватар пользователя kae8 kae8 18 января 2017 в 15:36

Ответить к сожалению не могу на ваш вопрос, т.к. не разрабатываю сайты. По поводу тега, подскажите пожалуйста как должны быть правильно? По синтаксису проверил данный код, ошибок нет.

Аватар пользователя kae8 kae8 18 января 2017 в 16:01

Убрал, но ошибка не исчезла:
PHP Parse error: syntax error, unexpected end of file in /var/www/drupal/sites/all/themes/mytheme/views-view-table--sli_page.tpl.php on line 49

Аватар пользователя gun_dose gun_dose 18 января 2017 в 16:05

В шаблоне тэг пхп можно закрывать. А вот на безымянные тэги в пхп7 нежелательны, поэтому вместе "меньше вопрос" надо ставить "меньше вопрос пхп"

Аватар пользователя kae8 kae8 18 января 2017 в 16:27

спасибо,
<?php } так сработало, но теперь другая ошибка вылезла:
PHP Notice: Undefined variable: rows in /var/www/drupal/sites/all/themes/mytheme/views-view-table--sli_page.tpl.php on line 19