Починаючи з версії 4.0.1 TYPO3 має серйозний обробник помилок. У Цьому заслуга Дмитра Дулепова - разробника, і Мартіна Кучера, котрий підтримує цей функціонал. Хоча новина на TYPO3.org тільки згадує про це як "Виправлені деякі коди HTTP статусів" насправді це величезний крок вперед. Чи маємо ми турбуватись? Не зовсім. Я покажу вам, як зробити його використання оптимальним та запропонувати своїм відвідувачам корисну інформацію, а для технарів Дмитро покаже, як це робиться. Ця стаття призначена для адміністраторів та редакторів TYPO3, котрі хочуть забезпечити відвідувачам своїх сайтів змістовну сторінку помилки.
Старі добрі часи
Так, а що тепер? Приємно знати, що сторінка не існує. Якщо в install tool налаштування вірні, сервер буде віддавати правильні заголовки (HTTP/1.x 404 Not Found) клієнту (вашому браузеру чи Google), що дозволяють сповістити їх про відсутність сторінки. Я вважаю Google достатньо розумний, щоб використати цю інформацію і не виводити цей URL в своїй пошуковій видачі.
Крок в майбутнє
TYPO3 4.0 надає "приховану / недокументовану" особливість, котра дозволяє визначити власну сторінку 404 у вигляді файлу чи URL-адреси за допомогою конфігураційних параметрів ([FE] [pageNotFound_handling] = /404/). Одним з варіантів є створення "статичного" HTML файлу, вказавши шлях до нього в конфігурації, додаючи перед ним "READFILE:", і TYPO3 покаже його як 404 сторінку. Однак статичні файлы не є хорошим рішенням. Ви не можете відображати, наприклад, автоматично оновлену карту сайта з цим файлом. Це можна вирішити за допомогою URL-адрес. Якщо ви встановите URL (відносний чи абсолютний) в pageNotFound_handling, TYPO3 буде відображати його як 404 сторінку. Проблема в цьому рішенні в тому, що TYPO3 (3.x и 4.0) перенаправляє нас на цю 404 сторінку. Технічно це значить, що пошукова система Google, не може визнати це як 404 помилку. Так що ніколи не видаляйте цю сторінку з бази Google. Крім того в розділі помилок HTTP в вашій програмі статистики (такої як AWStats), ви не побачите відсутніх сторінок на сайті.
Нарешті не знайдено

З версії TYPO3 4.0.1 справжня 404 сторінка показується клієнту. Тепер Google знає що відбувається та прибирає сторінку зі своєї бази даних. Цікаво, що можливо під час розробки, баг, що спричиняє виклик обробника помилок, що починає цикл в спробі знайти 404 сторінку котрої нема, і ведуть тестовий сервер (як і виробничий) до перенавантажень. Тепер цю проблему усунуто і 404 сторінка показується.

Нажаль, повідомлення про помилку не готово ще, але дає прекрасне розуміння що відбувається. Звичайно ви хочете вашу сторінку 404 з корисною інформацією і я далі покажу як це зробити.
Моя програма статистики також дає мені деякий правильний зворотній зв'язок.
В такому випадку ви також можете натиснути на 404 и подивитись, які сторінки намагалися її відвідати.
Як зробити 404 сторінку для вашого сайту
Для налаштування 404 сторінки для вашого сайту, йдіть в install tool та знайдіть налаштування з назвою [pageNotFound_handling]. Впишіть URL за яким живе ваша 404 сторінка. Якщо сторінка в тому ж домені, це мусить бути URL без доменного імені (на пр. /404/). якщо вона на іншому сервері, він має бути з абсолютним шляхом.
Створіть приховану сторінку з заголовком 404 в корені вашого сайту. Підтримується декілька доменів на одному встановлені? Ви можете створити 404 сторінку для кожного домена окремо. Тепер забезпечте ваших відвідувачів корисною інформацією. Можливо, ви недавно перенесли цілі частини вашого сайту. Можливо, ви видалили деякі сторінки випадково. Розкажіть своїм відвідувачам, нехай ваш клієнт знає, що відбувається. Надайте посилання на пошукову систему вашого сайту та, можливо, надайте карту сайту.
Під капотом
Коли TYPO3 визначає, що сторінки не існує, то запускає спеціальні функції, щоб визначити як в цій ситуації вчинити. Найбільш часто відбувається отримання динамічної сторінки. З тих пір як сторінка помилки може бути на іншому домені, TYPO3 ставить належний тег <base /> на сторінці для того, щоб зображення та посилання відображались належним чином.
Одна проблема котра виникає при отриманні сторінки помилки це журналювання. Якщо ви використовуєте Webalizer, ви можете вказати - ігноруровати цю сторінку. Однак якщо ваша програма аналізу журналів не дозволяє виключити якусь сторінку, ви можете зробити це використовуючи умовне журналювання, як описано на сайті Apache (http://httpd.apache.org/docs/2.0/logs.html#conditional)
Для AWStats ви можете використати наступний запис в вашому файлі конфігурації для включення сторінки 404:
SkipFiles="/404/ REGEX[^\/typo3]"