Ak Pole/Tabuľka obsahuje xyz, ako presmerovať na jeho hodnotu (PHP? JS? htaccess?)

0

Otázka

Presťahoval som sa cca 100 článkov z mojej starej stránky na novú. Chcem vytvoriť presmerovanie v starých stránok, hlavičky, takže ak starý URL článok by byť navštívili, návštevník by mal byť presmerovaný na novú adresu URL, že článok.

Avšak, len výmena domény nebude stačiť, ako som sa zmenil permalink článkov. Takže, potreboval by som nejaký "databáza" (s ohniskovou?) čo by sa rozhodnúť, či skutočnej URL, má presmerovať v databáze, ako napríklad:

// "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 napríklad, ak návštevník návštevy "http://OldWebsite.com/article-cars" mal by byť presmerovaný do "http://NewWebsite.com/new-cars-article", pretože to je ako databáza/pole hovorí.

A tak by som mohol niečo ako toto:

$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();
    }
}

Samozrejme, tento kód je úplne zle, ale ja som takmer žiadnu predstavu o PHP, tak mohli by ste mi prosím pomôžte mi vyriešiť tento? (a JavaScript-riešenie je taky v pohode, alebo htaccess, alebo čo :) )

Ďakujem vám veľmi pekne!

1

Najlepšiu odpoveď

0

Myslím, že som vyriešil to teraz s htaccess (nemám predstavu o htaccess buď, len googled aj viac).

<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>

Je to v poriadku týmto spôsobom?

2021-11-21 20:05:20

Dobre, to funguje? Potom je "v poriadku", vpravo?
arkascha

@arkascha pracovný roztok môže byť zlé riešenie :) mohlo by To spôsobiť problémy neskôr, alebo byť problém v oblasti bezpečnosti, atď.
Imre

Iste, nie tvrdenie je absolútne pravdivé a známych. Ale ako očakávate, že iní na odpoveď na to? Vieme, vedľa nič o vašej konkrétnej situácii alebo budúcnosti. Takže môžeme len odpovedať vo všeobecnosti, a širšom zmysle. Presmerovanie požiadavky je možné, normálne, čo robiť, a nie je sám o sebe náhle otvorené zrejmé, bezpečnostné otázky.
arkascha

V iných jazykoch

Táto stránka je v iných jazykoch

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