Всем привет. На досуге переделал сайт на современный то есть с ЧПУ. Вроде бы всё нормально функционирует. Но вдруг оказалось что-то не так. Вот я вызвал одну из страниц и смотрю в браузере F12 начало и вижу HTML: <html lang="ru"> <head>...<head> Здесь всё хорошо и проблем Вроде нет. Теперь я попросил Bing проиндексировать эту страницу. И он мне сообщает, что есть ошибки. Изначально не определён язык. И он мне показывает HTML текст этой страницы, и там вместо кода языка (ru, en,de) стоит пусто. HTML: <html lang=""> <head>...<head> Соответственно выдаётся пара предупреждений о том что переменная, в которой содержится значение языка является неопределённой. Почему и как это происходит я пока совершенно не понимаю. Проверил ещё на двух других страницах - тот же самый результат. Вот адрес этой страницы сайта. https://www.ockham.xyz/ockham/health-psych/ru Подскажите пожалуйста где здесь собака зарыта. Спасибо.
Если смотреть не через браузер Код (Text): Warning: Undefined variable $lan in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 139 Warning: include_once(globalincluds/text_menu__w.php): Failed to open stream: No such file or directory in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/GLOBAL_INCLUDS_w.php on line 15 Warning: include_once(): Failed opening 'globalincluds/text_menu__w.php' for inclusion (include_path='.:/opt/RZphp80/includes') in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/GLOBAL_INCLUDS_w.php on line 15 <!DOCTYPE html> <html lang=""> <head> <meta charset="UTF-8"> <meta name="keywords" content="Ockham, Logic, Logik, Логика" /> <meta name="description" content=" Ockham and Wissen" /> <meta name="yandex-verification" content="239f784d5c37394c" /> <title>Ockham</title> <link href="/assets/pictures/f_Favicon.jpg" rel="icon" type="image/jpg"> <link href="/CSS/main_menu.css" rel="stylesheet" media="screen"> <link href="/CSS/layout_text.css" rel="stylesheet" media="screen"> <link href="/CSS/popup.css?v=1250" rel="stylesheet" media="screen"> <link href="/CSS/media.css?v=1446466tfftttgg95" rel="stylesheet" media="screen"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1"> </head> <body> <!DOCTYPE html> <!--<a class="skip" href="#main" tabindex="-1"></a> --> <!--<header>--> <header style='background: url("/assets/pictures/img_head/img_head_health-psych/India_P_2019_03_09_083.jpg") 0 0 no-repeat black;'> <a id="logo" tabindex="-1" href="./">Ockha<span>m</span></a> <div id ="logo_text"> Warning: Undefined array key "lan" in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/header.php on line 9 </div> </header> <nav class="disp"> <!-- <input type="checkbox" id="toggle_button"> <label for="toggle_button" class="toggle_button"> <span class="bar"></span> <span class="bar"></span> <span class="bar"></span> </label> </input>--> <ul class="disp"> Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 12 Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 12 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 12 <li><a href="/ockham/main/" target="_self"></a></li> Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 13 Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 13 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 13 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 175 <li><a href="#">+</a> Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 178 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 179 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 180 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 181 <ul class ="submenu"> <li> <a href="/ockham/ockham-razor/" target="_self"></a></li> <li> <a href="/ockham/moon/" target="_self"></a></li> <li> <a href="/ockham/probability/" target="_self"></a></li> <li> <a href="/ockham/media-example/" target="_self"></a></li> </ul></li> Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 14 Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 14 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 14 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 189 <li><a href="#">+</a> Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 192 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 193 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 194 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 195 <ul class ="submenu"> <li> <a href="/ockham/belief/" target="_self"></a></li> <li> <a href="/ockham/god/" target="_self"></a> </li> <li> <a href="/ockham/conscious/" target="_self"></a> </li> <li> <a href="/ockham/delusion/" target="_self"></a> </li></ul></li> Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 15 Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 15 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 15 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 160 <li><a href="#"<span class="current_site">+</span></a> Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 165 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 166 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 167 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 168 <ul class ="submenu"> <li> <a href="/ockham/yoga/" target="_self"></a></li> <li> <a href="/ockham/health-body/" target="_self"></a></li> <li> <a href="/ockham/health-psych/" target="_self"></a></li> <li> <a href="/ockham/health-recipe/" target="_self"></a> </li> </ul></li> Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 16 Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 16 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 16 <li><a href="/ockham/illation/" target="_self"></a></li> Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 214 <li> <a href="https://eu.zonerama.com/Ockham/" target="_blank"></a></li> </ul> <ul> <li><a href="#"> Warning: Undefined variable $text_menu in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 21 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/menu.php on line 21 +</a> <ul class ="submenu"> <li> <a href="/ockham/health-psych/ru"> RU </a></li> <li> <a href="/ockham/health-psych/de"> DE </a></li> <li> <a href="/ockham/health-psych/en"> EN </a></li> </ul> </li> </ul> </nav> <section> Warning: Undefined array key "lan" in /mnt/web409/d1/35/59635935/htdocs/ockham/www/pages/health-psych.php on line 2 Warning: Undefined array key "lan" in /mnt/web409/d1/35/59635935/htdocs/ockham/www/pages/health-psych.php on line 158 Warning: Undefined array key "lan" in /mnt/web409/d1/35/59635935/htdocs/ockham/www/pages/health-psych.php on line 308 Warning: Undefined variable $info in /mnt/web409/d1/35/59635935/htdocs/ockham/www/pages/health-psych.php on line 458 Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 83 <br> <button class="sendMessage"><a href = https://www.ockham.xyz/ockham/message/ target="_blank"><b></a></button>  Warning: Trying to access array offset on value of type null in /mnt/web409/d1/35/59635935/htdocs/ockham/globalincluds/FUNCTIONS_w.php on line 102 <br>.<br> </section> Warning: Undefined array key "lan" in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/aside_health-psych.php on line 4 Warning: Undefined array key "lan" in /mnt/web409/d1/35/59635935/htdocs/ockham/inc/aside_health-psych.php on line 307 </body> </html>
Помоему там что-то другое зарыто и в множественном числе. Предлагаю газонокосилкой пройтись по всем ошибкам для начала.
Хм..... Спасибо всем. Все сообщения из-за того, что не подключен файл $text_menu, где соответствующие слова в еужном языке. Язык определяется в функции, в начале скрипта, затем происходит дальнейшая обработка, нужные вызовы и т.д. ОК, могут быть где-то ошибки. Но - 1. Не понятно почему на уровек браузера, потребителя все показывает корректно. 2. У меня дома на локальном сервере при установке PHP: declare ( strict_types=1 ); ini_set('display_errors', '1'); ini_set('display_startup_errors', '1'); error_reporting(E_ALL); не показывает этих предупреждений и ошибок. Как такое может быть? Никаких идей нет, к сожалению. Хотелось бы подсказки, если можно.
Aleksandr.B, а как посмотреть без браузера? Оказывается, я не знаю. Спасибо. Еще. дублируется <!DOCTYPE html> Может я с ума сошел, но у меня не показывает, что дублируется..... А... sorry, увидел, исправил.
Еще раз всем СПАСИБО, но все же в упор не понимаю. Итак, проблема была в функции, которая определяет, какой язык должен быть выбран. В зависимости от содержимого $_SESSION['lan'], значения языка в адресной строке и был ли это вообще первый вызов. После добавления в первой строке $lan=$_SESSION["lan"]='ru'; все предупреждения и ошибки ушли. Вопрос. Почему по F12 выдает, что все отработало хорошо в смысле определения языка и в тексте стоит, например HTML: <html lang="ru"> <head>...<head> и далее никаких проблем. НО , действительно, когда получаешь страницу с wget, то там стоит HTML: <html lang=""> <head>...<head> . язык не определен и соответсвенно дальше, где нужен, жуткая ругань. Что, есть две версии сгенерированной сервером HTML страницы???. Или как это происходит ??? Это функция для определения языка PHP: function sprache(array $url_ar) { if (!isset($_SESSION["lan"])) { if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"])) { $lang = $_SERVER["HTTP_ACCEPT_LANGUAGE"]; $lan = str_replace(strstr($lang, ','), '', $lang); $lan = substr($lan, 0, 2); // echo '<br>ACCEPT_LANG_2 = ' . $lan; $_SESSION["lan"] = $lan; // echo'<br><h2>SESS1=</h2>' . $_SESSION['lan']; } } if (isset($_SESSION["lan"])) { $lan = ''; if (isset($url_ar[2]) AND in_array($url_ar[2], LANG)) { $lan = $url_ar[2]; // echo '<br>ACCEPT_LANG_2 = '.$lan.'<br>'; } if (($lan == '') AND isset($_SESSION['lan'])) { $lan = $_SESSION["lan"]; } $_SESSION["lan"] = $lan; } return $lan; }
$_SERVER["HTTP_ACCEPT_LANGUAGE"] - формирует сервер основываясь на заголовках, которые приходят от браузера, поэтому ошибок не возникает. wget как и bing, по всей видимости, таких заголовков не отправляет. В связи с эти возникают исключительные ситуации, которые необходимо учитывать при формировании перменной "lan".