После обновлений до 3.5.0 перестала работать 404 и менеджер перенаправлений

  • 11 Ответов
  • 673 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

Оффлайн Stasweb

После обновлений до 3.5.0 перестала работать 404 и менеджер перенаправлений
в /templates/lik-astana/error.php такой код
Спойлер
[свернуть]
Менеджер перенаправлений то же пишет
Плагин перенаправлений включен. Функция 'Сохранять ссылки' включена.
При переходе на страницу ошибки _https://lik-astana.kz/404.html_ она открывается и в htaccess указана ErrorDocument 404 https://lik-astana.kz/404.html
  
« Последнее редактирование: 26.01.2017, 09:35:46 от Stasweb »

*

Оффлайн Stasweb

Вот с таким кодом
if ($this->_error->get('code') == '404') {
header("HTTP/1.0 404 Not Found");
header("HTTP/1.1 404 Not Found");
header("Status: 404 Not Found");
header('Location: /404.html');
exit;
 }
получаю ошибку
Fatal error: Call to undefined method Exception::get() in /var/www/vhosts/lik-astana.kz/httpdocs/templates/lik-astana/error.php on line 23
23 строка у меня идет if ($this->_error->get('code') == '404') { и при этом 200 ответ сервера
Комментирую строки
//if ($this->_error->get('code') == '404') {
header("HTTP/1.0 404 Not Found");
header("HTTP/1.1 404 Not Found");
header("Status: 404 Not Found");
header('Location: /404.html');
exit;
// }

получаю пустую страницу но уже ответ 404


*

Оффлайн Stasweb

if ($this->_error->getCode() == '404') {
header("HTTP/1.1 404 Not Found");
header("Status: 404 Not Found");
header('Location: /404.html');
exit;
 }
Также пустая страница с ответом сервера 404
Спойлер
[свернуть]

*

Оффлайн Stasweb

Убираю header("Status: 404 Not Found"); получаю свою 404 страницу /404.html но уже с ответом
Спойлер
[свернуть]

*

Оффлайн Stasweb

Вот этот код работал нормально и проблем не было
Спойлер
[свернуть]
Может что то еще мешает отображению странице ошибок.
 

*

Оффлайн Stasweb

Если в коде меняю что то
Спойлер
[свернуть]
Допустим пишу if ($this->_error->geCode() == '404') { то выдает ошибку на пустой странице а если пишу правильно if ($this->_error->getCode() == '404') { то просто пустая страница.
Получается что файл подключается на срабатывание 404 ошибки но не отображает страницу.
в htaccess пробовал убирать ErrorDocument 404 https://lik-astana.kz/404.html и пробовал ErrorDocument 404 /404.html все ровно результат нулевой.
 

*

Оффлайн Skaneris

На самом деле белая страница - это тоже ошибка, просто она не выводится в целях безопасности, а вместо ошибки отображается пустой HTML файл.
У вас просто какая-то ошибка на сервере. Это избитая тема. Вам нужно просто отобразить эту ошибку и всё станет ясно как божий день.
Это можно сделать при помощи настроек php. Один из вариантов - прописать в .htaccess строку:

php_value display_errors 1

Все варианты описаны вот тут - http://joomlarulit.com/blog/4-belaya-stranitsa-joomla-prichiny-i-metody-ustraneniya.html

А вообще для страницы ошибок я бы порекомендовал прописать шаблон в файле error.php , а не перенаправлять из него. Так будет правильнее.

*

Оффлайн Stasweb

php_value display_errors 1 в .htaccess прописано.
Ошибки в админке стоят по максимуму.
И все равно пустая страница

*

Оффлайн Taatshi

Дело у Вас похоже не в самой странице ошибки, Вы для начала сделайте так, чтоб она открывалась. Я никакими усилиями ее вызвать не смогла.

А вообще сравните свой файл с файлом 404 в обновленной версии Joomla - может, они там что-то поменяли. Смотрите как все это вызывается и правьте у себя соответственно.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

*

Оффлайн Stasweb

выключил код
//if (($this->error->getCode()) == '404') {
//header("HTTP/1.0 404 Not Found");
//header("Status:404 Not Found");
//header('Location:/404.html');
//header('Location:/media/pages/404.html');
//exit;
//}

и прописал простой HTML
<div style="text-align:center;font-weight: bold; color: #777777; font-size: 80px;">ERROR</div>
<div style="text-align:center;font-weight: bold; color: #777777; font-size: 40px;">Документ не найден</div>
и теперь если набрать ссылку _https://lik-astana.kz/oformlenie-v-baget-ramki.htm_ то страница вызывается
« Последнее редактирование: 26.01.2017, 09:34:50 от Stasweb »

*

Оффлайн Stasweb

На сервере
Отображение ошибок  Вкл
в htaccess
php_value display_errors 1
В панели администратора для разработчиков все ошибки php.

но если набрать кривую ссылку то 404 все ровно не отображается и ошибок нет не каких