Jeśli tablica/tabela zawiera xyz, niż przekierować na jego wartość (w PHP? J. C.? htaccess?)

0

Pytanie

Przeniosłem około 100 artykułów ze starego serwisu na nowy. Chcę utworzyć przekierowanie w nagłówku starego serwisu, więc jeśli będzie odwiedzana stary adres URL artykułu, użytkownik musi być przekierowany na nowy adres URL tego artykułu.

Jednak prosta wymiana domeny nie pomoże, tak jak wymienilem odnośnika do artykułu. Dlatego mogę potrzebować "baza danych" (z tablicami?) który określi, czy faktycznego adresu URL przekierowania w bazie danych, na przykład:

// "the old permalink" = "the new permalink"
$urlpermalink["article-cars"] = "http://NewWebsite.com/new-cars-article";
$urlpermalink["an-article-dogs"] = "http://NewWebsite.com/new-dogs-text";
$urlpermalink["old-text-trees"] = "http://NewWebsite.com/new-blogcontent-about-trees";

Tak więc, na przykład, jeśli użytkownik odwiedza "http://OldWebsite.com/article-cars" należy przekierować na "http://NewWebsite.com/new-cars-article" bo tak mówi baza danych/tablica.

I tak bym mógł zrobić coś takiego:

$visitingurl = $_SERVER[REQUEST_URI]; // Getting the URL the visitor is on now

foreach( $urlpermalink as $value ) { // For every entry in the database/array...
    if (strpos($visitingurl, $urlpermalink) !== false) { // check if the visitingurl contains that (like "article-cars")
        // The visitor is indeed on an old URL which is in the database/array, so let's redirect him to the new URL
        header("HTTP/1.1 301 Moved Permanently");
        header(url . $_SERVER['QUERY_STRING']);
        exit();
    }
}

Oczywiście, ten kod jest całkowicie błędne, ale ja prawie nic nie wiem o PHP, więc proszę, nie możesz mi pomóc rozwiązać ten problem? (JavaScript-rozwiązanie też będzie pasować, lub htaccess, lub coś jeszcze :) )

Dziękuję bardzo!

1

Najlepsza odpowiedź

0

Myślę, że teraz już rozwiązał ten problem za pomocą htaccess (ja też nie mam pojęcia o htaccess, po prostu sprawdziłem to jeszcze więcej).

<IfModule mod_rewrite.c>
RewriteEngine On
RedirectMatch 301 ^/article-cars/ http://NewWebsite.com/new-cars-article
RedirectMatch 301 ^/an-article-dogs/ http://NewWebsite.com/new-dogs-text
RedirectMatch 301 ^/old-text-trees/ http://NewWebsite.com/new-blogcontent-about-trees
</IfModule>

Tak, to jest normalne?

2021-11-21 20:05:20

No, ale to działa? Wtedy to "dobrze", prawda?
arkascha

@arkascha Robocze rozwiązanie nadal może być złym rozwiązaniem :) może To spowodować problemy później lub stać się problemem w zakresie bezpieczeństwa, itp.
Imre

Oczywiście, żadne twierdzenie nie jest absolutnie prawdziwe i znane. Ale jak można się spodziewać, że inni odpowiedzą na to? Prawie nic nie wiemy o danej sytuacji lub w przyszłości. Dlatego możemy odpowiedzieć tylko w ogólnych zarysach. Przekierowanie zapytań być może, jest to normalna rzecz, i samo w sobie nie powoduje nagłych problemów z bezpieczeństwem.
arkascha

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................