Помогите с 404 ошибкой

yolabiz
На сайте с 14.01.2009
Offline
63
846

Был сайт на самописном движке, данные выдавались по принципу index.php?idsub12,13 и тд

Перенес сайт на вордперс, но в индексе остались все страницы старого сайта.

сейчас стоит вордпрес и там тоже есть index.php

как мне указать что index.php?idsub не существует и чтоб кидало на 404 страницу, в .htaccess прописано ErrorDocument 404 и все несуществующие файлы кидает на 404 страницу. А вот index.php?idsub перекидывает на морду домена.

Помогите пожалуйста.

Спасибо

надежный vps (https://bill2fast.com/aff.php?aff=475) - рекомендую fastvps
KeTal
На сайте с 25.08.2005
Offline
54
#1

Можно в самом начале index.php написать

<?

if (strstr($_SERVER['QUERY_STRING'],"idsub")) {

header("HTTP/1.0 404 Not Found");

exit;

}

?>

Можно через mod_rewrite сделать.

yolabiz
На сайте с 14.01.2009
Offline
63
#2

а как сделать через .htaccess ?

если нельзя уточните пожалуйста в каком index.php мне надо это прописать а то в админке вордпресса много индекс.пхп файлов.

Огромное человеческое спасибо, мучаюсь 15 часов. Так как в кодинге полный нуб

KeTal
На сайте с 25.08.2005
Offline
54
#3

yolabiz, лучше сделать через index.php — я не очень разбираюсь в modrewrite, чтобы сейчас правило придумывать, да и еще потом смотреть надо — работает, нет.

Этот код надо вставить в самом начале index.php, который лежит в корне сайта (в самйо главной папке с WP). Если совсем туго, можете скинуть логин пароль на фтп ketal@ketal.ru. Делать быстрее чем рассказывать :)

yolabiz
На сайте с 14.01.2009
Offline
63
#4

К сожалению логин дать не могу, но ваш метод только что попробовал.

Морда домена грузится нормально

idsub просто белая страница без содержания, мне надо чтоб перекидывало на 404 страницу хостинга.

<?

if (strstr($_SERVER['QUERY_STRING'],"idsub")) {

header("HTTP/1.0 404 Not Found");

exit;

}

?>

<?php

/**

* Front to the WordPress application. This file doesn't do anything, but loads

* wp-blog-header.php which does and tells WordPress to load the theme.

*

* @package WordPress

*/

/**

* Tells WordPress to load the WordPress theme and output it.

*

* @var bool

*/

define('WP_USE_THEMES', true);

/** Loads the WordPress Environment and Template */

require('./wp-blog-header.php');

?>

вот такой индекс.пхп

Suvo
На сайте с 15.01.2008
Offline
119
#5
yolabiz:
а как сделать через .htaccess ?

Ну если хочеться через .htaccess, то тогда так:

ErrorDocument 404 http://www.site.ru

yolabiz
На сайте с 14.01.2009
Offline
63
#6
Suvo:
Ну если хочеться через .htaccess, то тогда так:
ErrorDocument 404 http://www.site.ru

так не работает, пробовал так как и тогда был index.php и счас index.php

yolabiz добавил 03.02.2009 в 22:46

yolabiz:
так не работает, пробовал так как и тогда был index.php и счас index.php

http://www.*****.ru/index.php?idsub=14 вот такого рода странички должно кидать на 404

RAS
На сайте с 27.11.2005
Offline
126
RAS
#7

Отредактировать по вкусу 😂


Options +FollowSymLinks
RewriteEngine on
RewriteBase /
Rewritecond %{QUERY_STRING} ^idsub
RewriteRule ^(.+)$ /404_page.php [L]
Администрируем сервера, впс, вдс. Ускоряем загрузку сайтов - DLE, Word Press, Joomla, Modx... Настраиваем безопасность. Ручная чистка rootkit/malware/вирусов. (/ru/forum/867860) Разработка - shell/bash/sh/python/perl.
yolabiz
На сайте с 14.01.2009
Offline
63
#8
RAS:
Отредактировать по вкусу 😂


Options +FollowSymLinks
RewriteEngine on
RewriteBase /
Rewritecond %{QUERY_STRING} ^idsub
RewriteRule ^(.+)$ /404_page.php [L]

404_page.php если я правильно понимаю, что должно перекидывать на эту страницу, но у меня ее нету, наверноее поэтому вылетает код 500

ErrorDocument 404 http://404.hqhost.net/

Options +FollowSymLinks

RewriteEngine on

RewriteBase /

Rewritecond %{QUERY_STRING} ^idsub

RewriteRule ^(.+)$ /404_page.php [L]

вот так я записал

KeTal
На сайте с 25.08.2005
Offline
54
#9
yolabiz:
idsub просто белая страница без содержания, мне надо чтоб перекидывало на 404 страницу хостинга.

Ну так не могу сказать — у меня это работает. Только если посмотреть.

yolabiz:
наверноее поэтому вылетает код 500

код 500 говорит об ошибке в .htaccess (например).

yolabiz
На сайте с 14.01.2009
Offline
63
#10

Ладно если ничего не трогать? новые страницы должны пойти в индекс? как долго старые вылетать будут?в роботс.тхт я их запретил это поможет?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий