@vixon

Как настроить 404 в htaccess для ВСЕХ ссылок сайта кроме двух файлов?

Есть домен на котором было ранее проиндексировано огромное количество ссылок вида:
domain.com/?werwer
domain.com/?wer=r
domain.com/?index.php
и т.п.

Апач их распознает как существующие и спокойно выдает главную страницу по любой из ссылок.

На сайте вообще сейчас всего две страницы - index.html и english.html, как сделать чтобы обрабатывались только эти две страницы, а все остальные ссылки шли на 404 :)

Желательно средствами htaccess, если не возможно, то можно и на php. Помогите, а то сейчас сайт из 2ух реальных страниц для поисковиком воспринимается как сайт с 1000 одинаковыми страницами.
  • Вопрос задан
  • 2296 просмотров
Пригласить эксперта
Ответы на вопрос 3
В htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php [L]

Создаем файл index.php в нем
header('HTTP/1.x 404 Not Found');
exit;

Конечно более чем вероятно есть и решение через htaccess, сейчас кто-нибудь подскажет
Ответ написан
Комментировать
HighQuality
@HighQuality
☁ Ниндзя девелопер
Можно попробовать такое:
RedirectMatch 404 ^/[^(?:index|english)]\.html$
Ответ написан
Комментировать
@vixon Автор вопроса
Ребята, не помогло :(

RedirectMatch 404 ^/[^(?:index|english)]\.html$
вставляю в .htaccess

все равно не кидает на 404 ссылки вида domain.com/?asd

Попробовал и так
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php [L]

Тоже не помогло.

Может у меня чтото отключено? В идеале конечно реализация бы через .htaccess подошла.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы