- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Я скриптом определяю, что была запрошена несуществующая страница.
В этом случае делаю
header("HTTP/1.1 404 Not Found");
и прекращаю работу скрипта.
А если я добавлю после этой строки
header("Location: http://moidomen/index404.php");
чтобы юзер увидел сообщение об ошибке в таком виде, как я этого хочу.
Как отнесуться к этому ПС, нормально?
Да нормально отнесутся. хедер же с ошибкой 404 они получают.
Я б еще после редиректа приписал бы exit(); для надежности.
header("HTTP/1.1 404 Not Found");
для поисковика
header("Location: http://moidomen/index404.php");
для юзера
чтобы юзер увидел сообщение об ошибке в таком виде, как я этого хочу.
юзер будет счастлив
Как отнесуться к этому ПС, нормально?
поисковик тоже будет счастлив :)
А точно на выходе будет 404 заголовок? я сколько не пробовал, но как только добавляешь Location то выдает 302
Павел Зотов, ну у меня получилось.
Попробуй - http://www.icasinoclub.com/blablabla
чтобы юзер увидел сообщение об ошибке в таком виде, как я этого хочу.
Для этого существует директива ErrorDocument .
А слово "редирект" вместе с 404 выглядит совершенно неуместно, потому что так не бывает по определению.
header("HTTP/1.1 404 Not Found");
и прекращаю работу скрипта.
А если я добавлю после этой строки
header("Location: http://moidomen/index404.php");
А зачем редирект, когда можно после того как вернули 404 Not Found, послать клиенту HTML, а только затем прекратить работу скрипта?
Kost, то серверная директива апачу как я понял, а тут фишка немного в другом. Допустим есть новости. Вот я новость удалил и ее какбы больше нет. Что ее нет, я могу узнать только прогнав скрипт. Т.е. я уже на этом этапе перехватил обработку URI апачем и сам все делаю. И вот я разобрал строку, параметры, выяснил, что данной страницы как бы нет, и хочу поведать об этом пользователю (блога с ним проблем нет, ему об этом как угодно можно расскзать), а также хочу чтобы ПС тоже знала, что искомой страницы более нет, и нефиг ее в индексе деражть.
Lord Maverik добавил 05.12.2008 в 09:51
А зачем редирект, когда можно после того как вернули 404 Not Found, послать клиенту HTML, а только затем прекратить работу скрипта?
Ну это уже технические тонкости. Есть файл index404.php, который вызывается апачем вслучае 404, когда он ее поймал. Самый простой способ в этой ситуации и самому отправлять просто на этот файл юзера и все.
А, понятно. Ну если уже разобрана строка, то какие могут быть проблемы, выдать хедер 404 и нужный контент с сообщением об ошибке. Только слово "редирект" режет слух, оно совсем ни к чему.
Кстати, тут нет никакого Location:
http://www.icasinoclub.com/blablabla
Кстати, тут нет никакого Location:
http://www.icasinoclub.com/blablabla
Тут нет, тут апач сам.
А вот если так:
http://www.icasinoclub.com/blablabla/bla.html
тот тут уже есть, я именно про этот случай и спрашивал.
Как лучше, так как сейчас, или без редиректа просто прочитать содержимое index404.php и отобразить его?
Lord Maverik добавил 06.12.2008 в 05:12
Попутно еще вопрос, как в .htaccess прописать таку штуку:
У меня идет на нем перехват всех index.html и дальше разбор и вывод строки. Соответсвенно в корне лежит путой index.html. Все как бы нормально. Но тут обнаружил, что есть много ссылок на index.htm (старая версия сайта). Сейчас по этой странице апач отдает 404-ю. Мне кажеться это не очень хорошо, у меня беки идут на 404-ю, т.е. по сути теряются. Думаю логично сделать 302-ю, moved permanently или как там его.
Я написал так:
Но получил такую траблу, при открытии http://www.icasinoclub.com/ первым запрашивается index.htm и всегда работает этот редирект, это глюк.
Как сделать так, чтобы этот редирект страбатывал именно при явном запросе index.htm , а не просто главное страницы.
Тут нет, тут апач сам.
А вот если так:
http://www.icasinoclub.com/blablabla/bla.html
тот тут уже есть, я именно про этот случай и спрашивал.
зато тут уже нету 404. я про то и писал, что если пишете Location, то 404 уже не будет.