Разное отображение шаблона на разных хостингах

Тема в разделе "Верстка", создана пользователем max-sparker, 1 окт 2012.

Информация :
Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с Правилами раздела и Правилами форума
Для быстрого поиска ответов на ваши вопросы воспользуйтесь Картой раздела и/или Поиском по разделу
Модераторы: ultra
  1. max-sparker

    max-sparker

    Регистр.:
    9 мар 2008
    Сообщения:
    166
    Симпатии:
    39
    Доброго времени уважаемые формучане. Прошу помощи в следующей проблеме...

    Имеется шаблон, который натянут на CMS NetCat.
    На Windows хостинге сайт отображается во всех браузерах нормально, когда его перенес на Linux сервер (CentOS) в IE стал отображаться коряво, не так как на Windows.

    Копия полная, все перепроверил - стили все подключены. Подскажите пожалуйста в связи с чем может быть такая проблема - куда копать ?
     
  2. Dmitry_Che

    Dmitry_Che Постоялец

    Регистр.:
    9 мар 2010
    Сообщения:
    63
    Симпатии:
    11
    Проверьте соответствие версий PHP на сервере и на хостинге.
     
  3. max-sparker

    max-sparker

    Регистр.:
    9 мар 2008
    Сообщения:
    166
    Симпатии:
    39
    на win php 5.4.3, на centos 5.3.3 - думаете обновить надо (не хотелось бы) ?
     
  4. Dmitry_Che

    Dmitry_Che Постоялец

    Регистр.:
    9 мар 2010
    Сообщения:
    63
    Симпатии:
    11
    Это единственное, что могу посоветовать исходя из того, что сообщили. Когда делал перенос клиентского сайта, правда на CMS Joomla, на другой хостинг - тоже в этом была проблема. Поэтому советую исходя из своего опыта - мне помогло обновление.
     
  5. Delfi

    Delfi Создатель

    Регистр.:
    16 июн 2011
    Сообщения:
    44
    Симпатии:
    11
    При чем тут может быть PHP?
    Возможно при выводе некоторых переменных и функций выводятся предупреждения, что ломает верстку.

    Советую для начала заглянуть в исходный код сайта на windows и linux серверах и сравнить. На 90% уверен, что верстка ломается, а IE просто не смог проигнорировать недочеты.

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

    Кстати, с joomla 1.5 тоже проблемка при переходе на 5.4 php, т.к. там много нарушений в плане структуры кода и выводится куча ошибок. Помогает только отключение в php.ini вывода всех ошибок. Что удивительно, некоторые сайты на 1.5 жумле перенеслись нормально, а некоторые вываливают кучу ошибок.
     
  6. zek24

    zek24

    Moderator
    Регистр.:
    14 ноя 2009
    Сообщения:
    776
    Симпатии:
    230
    Вы умеете более детально объясняться? Может стоит дать ссылку?
    В след. раз подобные темы будут перенаправляться во флуд, вплоть до появления первых телепатов на форуме.
     
  7. max-sparker

    max-sparker

    Регистр.:
    9 мар 2008
    Сообщения:
    166
    Симпатии:
    39
    Вот ссылка


    Во всех браузерах отображается нормально, кроме IE - в нем съезжает влево.
    На windoiws хостинге все нормально.
    PHP обновил, проблема осталась.
     
  8. Delfi

    Delfi Создатель

    Регистр.:
    16 июн 2011
    Сообщения:
    44
    Симпатии:
    11
    Проблема в неправильном коде

    Вот как парсит страницу браузер
    http://clip2net.com/s/2lVSV

    И так парсит не только IE, но и хром. Думаю проблему стоит искать в этом. Т.е. хром видит ошибку, но все равно выстраивает все верно, а ослик не может этого сделать.

    Советы
    1. Убрать стили в прикрепляемый файл.
    2. Не использовать тег "<center>", он в html5 отсутствует и может неверно интерпретироваться.

    Пока все, что заметил. Ищу дальше причину. Но явно структура где-то неверная, так как парсит он все наоборот.
    Хотя ide, в которую запихнул код - серьезных ошибок в структуре не выявила.

    Продолжаем

    3. "<meta http-equiv='content-type' content='text/html; charset=utf-8' />" меняем на <meta charset="utf-8" />, раз уж используем <!doctype html>
    4. <link rel="stylesheet" type="text/css" href="/images/kopeysk-city/css/style.css">
    должен закрываться, а именно
    <link rel="stylesheet" type="text/css" href="/images/kopeysk-city/css/style.css" />
    и так для всех
    5. <meta name='Keywords' content='Копейск'>
    аналогично
    <meta name='Keywords' content='Копейск' />
    6. <body><br> - зачем такая конструкция в теле документа?
    7. Убрать пробелы перед <!doctype html>. Так, чтобы было)

    Скорей всего закрытие тегов meta и link приведет все в порядок, т.к. именно с них начинается перескакивание всего кода в тег body
     
    max-sparker нравится это.
  9. max-sparker

    max-sparker

    Регистр.:
    9 мар 2008
    Сообщения:
    166
    Симпатии:
    39
    Спасибо за рекомендации, все сделал как Вы сказали - но пока ничего не вышло.
     
    Delfi нравится это.
  10. Delfi

    Delfi Создатель

    Регистр.:
    16 июн 2011
    Сообщения:
    44
    Симпатии:
    11
    Сейчас на локальной машине создал html, скопировав исходный код с Вашего сайта.
    У Вас перед доктайпом, вначале документа генерируется какой-то пробел.

    http://clip2net.com/s/2m0bW

    Если его убираю, то код парсится нормально браузером. Пробел может появится не только из шаблона. Может и на этапе генерации страницы.
    Советую проверить шаблон, есть ли там этот пробел. Если нету, то проверить кодировку документа и сохранить его в utf8 без BOM. Это можно сделать в notepad++. BOM - это вроде некий символ, который по сути представляет собой пустоту, но частенько создает не мало геммороя.

    Если не поможет, то тут надо более глубоко рыться в самой CMS. Начать следует с index.php в корне сайта. Проверить, нет ли лишних пробелов до "<? ?>" или после. Так же проверить, чтобы кодировка тоже была в utf без bom
    Кстати, чтобы таких пробелов не появлялось, к некоторым cms рекомендуют вообще не закрывать php код "?>", парсер делает это сам, а такой подход позволяет избавиться от проблемы вывода нечитаемых символов.

    Это всего лишь предположение, где искать причину. Но я на 99% уверен, что это как раз из-за этих пробелов.

    P.S. в хроме этот пробел тоже видится, только он его парсит в другом месте. И прошу заметить, что структура тоже не такая, какая должна быть. Но хром все таки воссоздает картину того, что должно в итоге быть.
    http://clip2net.com/s/2m0hr
     
    max-sparker нравится это.