- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Неверный адрес сайта уже выдает страницу 404.html. Но сервер при этом отправляет ответ 200, а не 404. Вопрос - как сделать так, чтобы при неверном запросе поисковику приходил ответ 404 а не 200?
Страница 404.html выдается скриптом или она статичная?
Если выдается скриптом, то в заголовке скрипта нужно указать статус "Status: 404".
Если статичная, то с сервером нужно ковыряться.
Страница 404.html статичная.
Перед выдачей страницы 404 послать заголовок: header("HTTP/1.0 404 Not Found");
В .htaccess должно быть прописано ErrorDocument 404 404.html
Если отдается код 200, видимо неверно настроен сервер.
Куда именно нужно поместить эту строку?
Если отдается код 200, видимо неверно настроен сервер.
В .htaccess уже все прописано. Как настроить сервер (Apache), чтобы он отдавал правильный код?
В .htaccess уже все прописано.
В студию! :)
Там путь к 404.html как прописан? Полный или относительный?
Как настроить сервер (Apache), чтобы он отдавал правильный код?
Указать ему эту страницу в директиве ErrorDocument. Судя по всему, сейчас он просто перенаправляет пользователя на 404.html, а должен брать содержимое этого файла и выдавать в ответ на запрос к любому несуществующему файлу. Перевожу: в браузере http://example.com/404.html не должно никогда показываться. Должно показываться содержимое файла 404.html, а адрес в адресной строке - тот, который запросили.
Прописано в .htaccess:
ErrorDocument 404 /404.html
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /404.html [L,QSA]
Ответ сервера на неправильный запрос:
HTTP/1.1 200 OKDate: Thu, 07 Jun 2007 04:59:35 GMTServer: Apache/1.3.37 (Unix) mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 FrontPage/5.0.2.2635.SR1.2 mod_ssl/2.8.28 OpenSSL/0.9.7a PHP-CGI/0.1b
В вашем случае реврайт мод нужно убрать, т.к. он просто перенаправляет на 404 страницу при не существующем файле или директории. Нужно оставить только ErrorDocument 404 /404.html
Без рерайта на 404 почему-то отправлял только с неверного адреса такого типа www.*.com/*/ А так на 404 отправляется все, включая такие адреса www.*.com/*.html
micronoid, freak написал правильно. Не надо неизвестную еще ошибку исправлять, добавляя еще одну. Уберите рерайт и покажите URL сайта.