We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 40911
    • 6 Posts
    Здравствуйте!
    Недавно сайт выпал из индекса, из-за того сервер отдавал код 500 поисковикам. Я написал в ТП хостинга, но мне сказали что разбирайся со своей CMS самостоятельно в гробу мы тебя видали у белых тапках. У тебя какой то косяк. Я внезапно! решил посмотреть протокол событий и внезапно! опять же обнаружил 68 страниц системных сообщений=). Почти все сообщения связаны с SEO Strict URLs - Plugin и там написано:
    syntax error, unexpected $end
     Parse error: syntax error, unexpected $end in ../public_html/manager/includes/document.parser.class.inc.php(790) : eval()'d code on line 100


    Я очень удивился и заглянул в parser.class.inc.php . В строке номер сто есть вот это:
    if ($count_attempts == 1) {
                    // append the redirect count string to the url
                    $currentNumberOfRedirects= isset ($_REQUEST['err']) ? $_REQUEST['err'] : 0;
                    if ($currentNumberOfRedirects > 3) {
                        $this->messageQuit('Redirection attempt failed - please ensure the document you\'re trying to redirect to exists. <p>Redirection URL: <i>' . $url . '</i></p>');
                    } else {
                        $currentNumberOfRedirects += 1;
                        if (strpos($url, "?") > 0) {
                            $url .= "&err=$currentNumberOfRedirects";
                        } else {
                            $url .= "?err=$currentNumberOfRedirects";
                        }
                    }
                }

    Я слабо шарю в php но даже моих скудных познаний хватает чтобы понять, что ЭТО ЧТО ТО связанное с редиректом.

    Подскажите, пожалуйста, как исправить данную ошибку, а то сайт уже из индекса выпал напрочь.=((
      • 785
      • 2,113 Posts
      Не туда смотрите - document.parser.class.inc.php(790) : eval()'d code on line 100 означает, что в строке 790 document.parser.class.inc.php выполняется eval(), то есть вызывается сниппет или что-то аналогичное, и уже в строке 100 этого сниппета возникает ошибка.
        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации
        • 40911
        • 6 Posts
        Спасибо за ответ. Хех да мне хоть куда смотри=)) Я в PHP не бум-бум. Вот она ловушка MODx=))Натянуть шаблон сможет даже школьник, а если что случится с PHP можно сайт выбрасывать=).
        В общем я отключил плагин этот. (он убирал дубли ссылок). Плагин написал какой то умник из сети, а я установил. Сайт сразу после отключения начал индексироваться. (отдал код 200). Но осталась ошибка парсера. Если вам не сильно сложно подскажите что делать, пожалуйста. Парсер ведь отключать не будешь=)) Вот такую ошибку он выдает.
        « MODx Parse Error »
        MODx encountered the following error while attempting to parse the requested resource:
        « Execution of a query to the database failed - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 3' at line 1 »
              SQL: SELECT `id`,`pagetitle`,`introtext`,`createdon` FROM `name_10`.`modx_site_content` WHERE `parent`='2' and `published` = 1 and `deleted` = 0 ORDER BY `publishedon` DESC LIMIT LIMIT 3
              
        
          • 40911
          • 6 Posts
          Ох..ещё забыл. Сниппет мне тоже какой то фрилансер писал (по выводу статей с картинками возле аннотации, так как готового я не нашел), может он глючит? И вообще может вы ошибки исправите за немного денег да и всё? Если конечно вам не сложно.
            • 785
            • 2,113 Posts
            В принципе надо читать внимательнее сообщения, в них многое написано.
            Например, syntax to use near 'LIMIT 3' – что-то не так рядом с командой 'LIMIT 3, смотрим – там написано LIMIT LIMIT 3 – один LIMIT лишний. Если есть прямо такая строка надо просто его убрать, а если там что-то обрабатывается, надо изменить эту обработку.
            А исправлять ошибки мне неохота…
              Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
              Статьи о MODx, регулярно новые публикации
              • 40911
              • 6 Posts
              Ну я же говорю, в PHP не шарю.
              Может он не лишний а просто регистр не тот?

              $limit = (isset($limit) && $limit > 0)?' LIMIT ' . (int)$limit:'';
                • 40911
                • 6 Posts
                Ладно как и ожидалось хрен тут поддержку найдешь. Пойде к фрилансерам. Давно уже пора было с этой CMS завязывать.