Si le Tableau/Table contient xyz, que de rediriger vers sa valeur (en PHP? JS? htaccess?)

0

La question

Je me suis déplacé d'environ 100 articles de mon ancien site web pour un nouveau. Je veux créer une redirection de l'ancien site de l'en-tête, de sorte que si l'ancienne URL d'un article pourrait être visité, le visiteur doit être redirigé vers la nouvelle URL de cet article.

Cependant, tout en remplaçant le domaine ne suffit pas, comme j'ai changé le permalien de l'article. Donc j'aurais besoin d'une "base de données" (avec des tableaux?) qui décidera si l'URL a une redirection dans la base de données, comme:

// "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";

Ainsi, par exemple, si un visiteur visite "http://OldWebsite.com/article-cars", il devrait être redirigé vers "http://NewWebsite.com/new-cars-article" parce que c'est la façon dont la base de données/tableau dit.

Et si je pouvais quelque chose comme ceci:

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

Bien sûr, ce code est totalement faux, mais je n'ai presque aucune idée à propos de PHP, donc, pourriez-vous svp m'aider à résoudre ce problème? (un JavaScript-solution est bien aussi, ou htaccess, ou quoi que ce soit :) )

Merci beaucoup!

1

La meilleure réponse

0

Je pense que j'ai résolu ce problème maintenant avec htaccess (je n'ai aucune idée à propos de htaccess soit, juste googlé même plus).

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

Est-ce correct de cette façon?

2021-11-21 20:05:20

Eh bien, ça ne marche pas? Ensuite, il est "d'accord", à droite?
arkascha

@arkascha Une solution de travail peut encore être une mauvaise solution :) Il pourrait causer des problèmes plus tard, ou un problème en matière de sécurité, etc.
Imre

Bien sûr, aucune déclaration n'est absolument vrai et connu. Mais comment voulez-vous attendre que les autres à répondre à cela? Nous ne savons presque rien au sujet de votre situation particulière ou de l'avenir. Donc, nous ne pouvons répondre qu'en termes généraux. En redirigeant les requêtes est possible, une chose normale à faire et n'a pas par lui-même soudainement ouvert évidentes questions de sécurité.
arkascha

Dans d'autres langues

Cette page est dans d'autres langues

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