Pozorne przekierowanie 404

0

Mam stronę, powiedzmy, że to katalog filmów. Standardowy link do filmu wygląda tak:
http://strona.pl/filmy/10/tytul-filmu

Jeżeli na stronie pojawi się link z id filmu, którego nie ma (np. film został usunięty z bazy) to po jego kliknięciu wuświetlał się po prostu komunikat 'brak takiego filmu'. Problem w tym, że googlom niepodobały się dziesiątki takich samych stron. Wpadłem na pomysł, żeby w funkcji, która odpala podstronę filmu zrobić tak, że jeśli filmu nie znaleziono w bazie to:

header("HTTP/1.0 404 Not Found");
header("Location: notfound.html");
header("Connection: close");

No i niby cacy, ale google takie rozwiązanie traktuje jako pozorny błąd 404. Jeśli podstronę z nieistniejącym filmem w google webmaster tools pobierzemy jako google to zwróci komunikat 302 Found, czyli jakby header("HTTP/1.0 404 Not Found"); w ogóle nie zadziałało.

Jak to zrobić w PHP, ewentualnie .htaccess?

1

Dżizas. Po prostu na stronie 'brak takiego filmu' zrób ten header 404 - i tyle. Strona może zwrócić dowolną treść oraz nagłówek 404. Location zawsze wymusi nagłówek 3xx, a robienie redirecta do strony typu nie znaleziono (u Ciebie html - zapewne zwraca więc i tak 200 OK) jest kiepskie ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1