
🚀 Uudelleenohjaus www:stä ei-www:hen .htaccessin avulla: täydellinen opas Graville, WordPressille ja muille CMS-järjestelmille
Sivusto aukeaa sekä www-alkuisena että ilman, mutta hakukoneet näkevät kaksi eri osoitetta, joissa on sama sisältö. Sivustokopiot, linkkivoiman hajaantuminen, sekaannusta Search Consolessa. Kuulostaako tutulta?
Grav tai WordPress eivät ratkaise tätä ongelmaa suoraan paketista. .htaccess-tiedosto ja yksi koodinpätkä korjaavat kaiken viidessä minuutissa. Alla on testatut rivit Apache-palvelimille: yleispätevät, ilman kovakoodattuja domaineja, HTTPS:n kanssa ja ilman. Lisäksi tapa varmistaa, että uudelleenohjaus toimii muutenkin kuin selaimessa.
💡 Nopea yleiskatsaus:
- Valitse kanoninen versio (www:llä tai ilman) ja lisää yleispätevä 301-uudelleenohjaus
.htaccess-tiedostoon - Tarkista uudelleenohjausketju
curl -I-komennolla tai verkkotyökalulla: selaimet välimuistittavat 301:t ja voivat valehdella - Yksi koodinpätkä ratkaisee samanaikaisesti www-ongelman ja pakottaa HTTPS:n
Miksi ylipäätään valita www:n ja ei-www:n välillä
Google ei suosi kumpaakaan vaihtoehtoa; virallinen kanta on pysynyt muuttumattomana vuosia. Mutta sinun on valittava yksi ja pysyttävä siinä. Ilman uudelleenohjausta www.site.ru/page ja site.ru/page indeksoituvat eri URL-osoitteina, linkkivoima puolittuu ja analytiikka laskee saman liikenteen kahteen kertaan.
Mikä valita? Suurille projekteille www on kätevämpi: evästeet eivät vuoda alidomaineille kuten cdn. ja api., ja DNS-tietueita on helpompi hallita. Pienemmillä sivustoilla eroa ei juuri ole. Keskity siihen, mikä on jo indeksoitu: kirjoita hakuun site:yourdomain.ru ja katso, kumpi versio näkyy tuloksissa useammin. Tee siitä kanoninen.
Tekninen huomio: Grav ei tuota uudelleenohjauksia itsestään. WordPress tekee sen vain, jos siteurl asetuksissa vastaa täsmälleen haluttua versiota, mutta sekään ei toimi johdonmukaisesti. Ratkaisu on yksi: mod_rewrite Apachessa .htaccess-tiedoston kautta.
Missä.htaccess sijaitsee ja miten sitä ei rikota
.htaccess-tiedosto sijaitsee sivuston juuressa, index.php-tiedoston tai wp-admin-kansion rinnalla. Jos tiedostoa ei ole (Grav ilman valmista pohjaa, uusi hosting), luo tekstitiedosto nimeltä .htaccess, johtava piste on pakollinen.
Ennen muokkauksia lataa nykyinen versio tietokoneellesi. Syntaksivirhe .htaccess-tiedostossa kaataa sivuston 500-virheellä välittömästi. Ehdoton sääntö: yksi varmuuskopio paikallisesti, toinen eri nimellä suoraan palvelimella (.htaccess.backup). Voit palauttaa sen myös ilman hallintapaneelin pääsyä, FTP:n tai hostingin tiedostonhallinnan kautta.
Graville ja WordPressille sääntö on sama: jos tiedostossa on jo RewriteEngine On, älä toista tätä riviä. Lisää uusi uudelleenohjauslohko sen jälkeen. Gravin vakio .htaccess-tiedostossa tämä rivi on oletuksena.
301-Uudelleenohjaus www:stä ei-www:hen: yleispätevä koodi
Alla oleva koodi toimii mille tahansa domainille; sinun ei tarvitse korvata example.com-osoitetta käsin. Kätevää, jos hallinnoit useita sivustoja tai siirrät sääntöjä projektien välillä. Lisää .htaccess-tiedostoon RewriteEngine On-rivin jälkeen:
1 RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 2 RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Rivi riviltä: RewriteCond havaitsee minkä tahansa isännän, joka alkaa www.-alkuliitteellä ja kaappaa domainin sulkeisiin. RewriteRule uudelleenohjaa pyynnön samaan polkuun ilman www-alkua, korvaten kaapatun domainin %1-muuttujalla. Lippu R=301 tarkoittaa pysyvää uudelleenohjausta. L käskee palvelinta "lopeta, älä suorita muita sääntöjä". NC tekee tarkistuksesta kirjainkoosta riippumattoman.
Jos sivusto toimii HTTPS:llä, korvaa http:// muodolla https:// RewriteRule-rivillä. Vielä parempi, käytä yhdistettyä lohkoa, joka ratkaisee sekä www:n että HTTPS:n yhdellä kertaa:
1 RewriteCond %{HTTPS} off [OR] 2 RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 3 RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
Ensimmäinen ehto laukeaa HTTP-pyyntöihin, toinen www-alkuun. Jos kumpi tahansa on tosi ([OR]), pyyntö ohjataan osoitteeseen https://domain-without-www/path. Yksi lohko, kaksi ongelmaa ratkaistu.
Käänteinen skenaario: ei-www:stä www:hen
Jos haluat osoiterivillä näkyvän aina www, käytä peilattua versiota:
1 RewriteCond %{HTTP_HOST} !^www\. [NC] 2 RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Logiikka on sama, vain ehto on käänteinen: jos isäntä ei ala www-alkuliitteellä, lisäämme www. alkuun. %{HTTP_HOST} korvaa nykyisen isännän kokonaisuudessaan, toisin kuin edellisessä lohkossa, jossa poistimme www.-alkuliitteen sulkukaappauksella.
Versio HTTPS:n kanssa:
1 RewriteCond %{HTTPS} off [OR] 2 RewriteCond %{HTTP_HOST} !^www\. [NC] 3 RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
Käytä yhtä neljästä lohkosta sen mukaan, mikä vastaa kanonista domain-versiotasi ja HTTPS:n käyttöä. Kaksi lohkoa peräkkäin on tarpeetonta ja luo ylimääräisen hypyn uudelleenohjausketjuun.
Kuinka varmistaa, että uudelleenohjaus toimii
Älä luota selaimeen; se välimuistittaa 301-uudelleenohjaukset ja näyttää vanhan tilanteen jopa .htaccess-tiedoston muokkauksen jälkeen. Kolme tapaa löytää totuus:
- curl** -I.** Päätteessä:
curl -I http://www.example.com. Oikea vastaus alkaaHTTP/1.1 301 Moved Permanently, jaLocation:-otsake sisältää kohde-URL:n. Tarkista molemmat versiot, www:llä ja ilman. - Verkkotarkistimet. Redirect Checker tai HTTP Status Code Checker: liitä URL, näet koko uudelleenohjausketjun ja lopullisen vastauskoodin.
- Google Search Console. Kanonisen domainin vaihtamisen jälkeen mene kiinteistön asetuksiin ja määritä haluamasi versio. Tämä ei korvaa
.htaccess-tiedostoa, mutta antaa hakukoneelle lisäsignaalin.
Erillinen vinkki Graville: .htaccess-tiedoston muokkauksen jälkeen tyhjennä CMS:n välimuisti kohdasta Admin → Configuration → Performance → Clear Cache. Grav välimuistittaa sivuja aggressiivisesti, ja ilman tyhjennystä uudelleenohjaus ei välttämättä koske jo luotuja kopioita.
⁉️🤔 Usein kysytyt kysymykset
Kumpi versio on parempi SEO:lle, www:llä vai ilman?
Google toteaa virallisesti: eroa ei ole. Valitse jompikumpi ja pysy siinä. Avaintekijä on johdonmukaisuus: sisäisten linkkien, sivukartan ja kanonisten tagien tulee osoittaa yhteen versioon. Ahrefsin kyselyn mukaan noin 55% top-100-sivustoista käyttää ei-www-versiota, mutta molemmat versiot sijoittuvat yhtä hyvin.
Mitä tapahtuu, jos uudelleenohjausta ei määritetä lainkaan?
Hakukoneet näkevät kaksi itsenäistä kopiosivustoa. Linkkivoima jakautuu, sivut alkavat kilpailla keskenään tuloksissa, ja analytiikkaraportit jakavat saman liikenteen kahdelle isännälle. Muutaman kuukauden kuluttua tyypillinen kuva: puolet sivuista indeksoitu www:llä, puolet ilman, sijoitukset epävakaita.
Voiko ilman.htaccess-tiedostoa pärjätä?
Kyllä, mutta vaihtoehdot ovat joko monimutkaisempia tai hitaampia. WordPress-lisäosat kuten Redirection ja Rank Math toimivat PHP-tasolla; jokainen pyyntö kulkee WordPress-ytimen läpi, mikä luo kuormaa. Paljon liikennettä saavilla sivustoilla
.htaccessApache-tasolla on huomattavasti nopeampi. Graville uudelleenohjauslisäosia ei käytännössä ole, joten.htaccesson ensisijainen reitti. NGINX-palvelimilla vastaava onreturn 301-direktiivitserver {}-lohkossa.
Tarvitseeko uudelleenohjaus määrittää jokaiselle sivulle erikseen?
Ei, annetut säännöt ovat yleispäteviä; ne koskevat automaattisesti kaikkia sivuston URL-osoitteita. Yksi lohko kattaa etusivun, sisäsivut, kuvat ja CSS-tiedostot. Erilliset uudelleenohjaukset vanhoilta URL-osoitteilta uusille määritetään lisäksi
Redirect 301 /old-page /new-page-riveillä, mutta niillä ei ole mitään tekemistä www-ongelman kanssa.
500-virhe.htaccess-muokkauksen jälkeen, mitä tehdä?
Kopioi
.htaccess.backuptakaisin FTP:n tai hostingin tiedostonhallinnan kautta; sivusto palautuu välittömästi. Tarkista koodista kirjoitusvirheet: puuttuva välilyönti, ylimääräinen kauttaviiva, sulkeet jotka eivät täsmää. Lisää sääntöjä yksi kerrallaan ja testaa jokaisen muutoksen jälkeen. Äläkä koskaan muokkaa.htaccess-tiedostoa tuotannossa ilman ajantasaista varmuuskopiota käsillä.
Uudelleenohjaus toimii, mutta Google näyttää edelleen vanhaa versiota tuloksissa. Miksi?
Uudelleenindeksointi kestää muutamasta päivästä pariin viikkoon. Varmista, että sivujen kanoniset tagit osoittavat valittuun versioon ja sivukartta sisältää URL-osoitteet ilman vanhaa isäntää. Search Consolessa voit pyytää uudelleenindeksointia URL-tarkastustyökalun kautta; tämä nopeuttaa prosessia, mutta ei takaa välittömiä tuloksia.
Mikä versio asettaa: lyhyt tuomio
Jos sivusto on uusi, valitse ei-www ja HTTPS. Vähemmän merkkejä osoiterivillä, helpompi sanella ääneen, ei evästeongelmia alidomainien kanssa. Useimmille projekteille tämä on enemmän kuin riittävää.
Jo indeksoitu www:llä? Älä riko toimivaa. Määritä uudelleenohjaus ei-www:stä www:hen, päivitä kanoniset tagit ja jatka eteenpäin.
Koko prosessi: avaa .htaccess, lisää yksi neljästä yllä olevasta lohkosta, tyhjennä CMS:n välimuisti, varmista curl -I-komennolla. Viisi minuuttia, ja kopiot ovat poissa hakumaisemasta. Muita .htaccess-tekniikoita on koottu palvelimen konfigurointioppaaseen; tarkista se, jos konfiguroit sivustoa kattavasti.



