siv1987

siv1987
Рейтинг
427
Регистрация
02.04.2009
SVatlin:
ТС ещё в первом посте себе дубль засветил.

То что он показывал и так было в индексе.

SVatlin:
Роутинг на php

Зачем если там голый html?

Pioneer:
Где решение тогда?

да перед вами. Возьмите наконец уже и прочитайте топик.

SVatlin:
Ничего не делать

Ага, а зачем тогда вообще что-то делать? Вы уже засветили ТСу один дубль.

Pioneer:
поставил 404.html, попробовал 404.php, ни так ни так не работает

Ну тогда добавьте в самом начале файла

<?php

header("HTTP/".$_SERVER['SERVER_PROTOCOL']." 404 Not Found");

?>

Pioneer:
ДА ёшкин попуас... что делать то?

Юзать второй вариант.

R=404 удалите.

SVatlin:
Ну теперь ещё под такой вариант сделайте

И под такой вариант есть решение выше.

Pioneer:
404.php

поставьте 404.html, как у вас там на сервере называется файл?

Pioneer:
Сработало с таким:

Но ваша страничка по прежнему отдает код 200. попробуйте [L] заменить на [L,R=404]

А вообще если сайт на голом html и там вообще не используются параметры

RewriteEngine On

RewriteCond %{QUERY_STRING} .

RewriteRule ^ 404.html [L,R=404]

Pioneer:
Сделал, тоже самое

Pioneer, вы читать умеете? Вам же говорят, что не будет работать, потому что параметры не являются "несуществующей страницы", их нужно обрабатывать отдельно.

phpBB уже советовали?

Pioneer:
/%{REQUEST_FILENAME}

%{REQUEST_FILENAME}

Update

И конечно не будет идти, там же выполняется реально существующий файл index.php, а за параметры mod_rewrite не отвечает. Кроме всего прочего, ваша "несуществующая страница" отдает код 200.

Update2

судя по всему что страницы с "page_id" вообще не существуют, можно написать реврайт для них (добавить после RewriteEngine On)

RewriteCond %{QUERY_STRING} ^page_id=

RewriteCond %{ENV:REDIRECT_STATUS} ^$

RewriteRule ^$ 404.php [L]

404.html переименовать в 404.php и добавить header 404.

Всего: 6568