Ошибка в редиректе из-за php

Петр14 років у сервісі
Дані замовника будуть вам доступні після подання заявки
29.01.2014

Есть код в скриптах сайта

//Редирект, если есть

if ($this->PageData['redirect'] != -1 && !$this->elem_id) {

header('Location: http://'.$_SERVER['HTTP_HOST'].$thi s->MenuList[$this->PageData['redirect' ]]['alldir']);

exit;

}

else header('Location: /404/');

При добавлении в htaccess Redirect 301, выдает 404 страницу(т.е. не срабатывает редирект)

Если убрать else header('Location: /404/'); из скрипта, то выдает редирект, но добавляет адрес старой страницы.

Надо поправить код, чтобы редирект работал, либо не добавлял ненужную часть старой страницы, либо чтобы при работе редиректа не выпадал 404 страница.

Пишите ваши цены за выполнение такой задачи.

Есть другие, похожие доработки.