HTTP 301 - HTTP 301

HTTP-vastaustilakoodia 301 Siirretty pysyvästi käytetään pysyvään uudelleenohjaukseen, eli nykyiset linkit tai tietueet, jotka käyttävät URL-osoitetta, johon tämä vastaus on vastaanotettu, tulisi päivittää. Uusi URL-osoite tulee antaa vastauksen mukana olevassa Sijainti-kentässä. 301-uudelleenohjausta pidetään parhaana käytäntönä päivitettäessä käyttäjiä HTTP: stä HTTPS: ään.

RFC 2616: n mukaan

  • Jos asiakkaalla on linkkien muokkausominaisuudet, sen tulisi päivittää kaikki viitteet Pyydä URL-osoitteeseen.
  • Vastaus on välimuistissa, ellei toisin mainita.
  • Ellei pyyntötapa ollut HEAD, yksikön tulisi sisältää pieni hypertekstimerkintä, jossa on hyperlinkki uuteen URL-osoitteeseen.
  • Jos 301-tilakoodi vastaanotetaan vastauksena muun tyyppiseen pyyntöön kuin GET tai HEAD, asiakkaan on kysyttävä käyttäjältä ennen uudelleenohjausta.

Esimerkki

Asiakkaan pyyntö:

GET /index.php HTTP/1.1
Host: www.example.org

Palvelimen vastaus:

HTTP/1.1 301 Moved Permanently
Location: https://www.example.org/index.asp

Tässä on esimerkki .htaccess- tiedostosta, jolla uudelleenohjataan ei-suojattu URL-osoite suojattuun osoitteeseen ilman etuliitettä "www":

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [R,L]

Tässä on esimerkki Perl CGI.pm : stä:

print redirect("https://example.com/newpage.html");

Tässä on esimerkki PHP- uudelleenohjauksesta:

<?php
header("Location: https://example.com/newpage.html", true, 301);
exit;

Vastaavan yksinkertainen nginx- kokoonpanolle:

location /old/url/ {
    return 301 /new/url/;
}

Tässä on yksi tapa ohjata uudelleen Express.js : n avulla :

app.all("/old/url", (req, res) => {
    res.redirect(301, "/new/url");
});

Hakukoneet

Sekä Bing että Google suosittelevat 301-uudelleenohjausta sivun URL-osoitteen muuttamiseen, koska se näkyy hakukoneiden tuloksissa, edellyttäen, että URL-osoite muuttuu pysyvästi eikä sitä muuteta enää pian.

Katso myös

Viitteet

Bibliografia

301 HTTPS