# URL átirányítás/átírás .htaccess fájl segítségével

Alapértelmezésben az Ön weboldala elérhető www előtaggal illetve a nélkül is. A Google keresési eredményeiben sajnos rosszabb helyezést ér el az a domain név amelyiknél a tartalom elérhető www-vel is és a nélkül is. Mivel egyes hivatkozásokat a keresők beindexeltek ezért szükség van ezen URL címek átírására, átirányítására.

- [Átirányítás cPanel segítségével](https://dotroll.com/hu/tudasbazis/books/cpanel/page/atiranyitas-cpanel-segitsegevel)

### **ÁTIRÁNYÍTÁS WWW-RŐL, VAGY WWW-RE**

Hogyan irányíthatjuk át az össze hivatkozást a www.pelda.hu címről a pelda.hu címre?

301-es típusú átirányítás segítségével az összes http kérés át lehet irányítani a www.pelda.hu címről a pelda.hu címre vagy fordítva

- **a pelda.hu átirányítása a www.pelda.hu címre**```
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www.pelda.hu$ [NC]
    RewriteRule ^(.*)$ http://www.pelda.hu/$1 [L,R=301]
    ```
- **a www.pelda.hu átirányítása a pelda.hu címre**```
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^www\.pelda\.hu$
    RewriteRule ^/?$ "http\:\/\/pelda\.hu\/" [R=301,L]
    ```

#### **MAGYARÁZAT**

Az első sorral utasítjuk az Apache-ot hogy használja a rewrite modult.  
A következő sor határozza meg feltételt:

```
RewriteCond %{HTTP_HOST} !^www.pelda.hu$ [NC]
```

Csak a http alapú kérésekre vonatkozik az átirányítás`%{HTTP_HOST}`.

Ezt követően adjuk meg azt hogy milyen URL címre vonatkozzon a szűrés, jelen esetben ha az URL címben nem szerepel a www akkor irányítjuk át. Ezt a`!`segítségével állítjuk be.

A`$`karakter határozza meg azt, hogy ha www.pelda.hu szerepel az URL címben akkor a következő sorban szereplő szabály alapján kerül átírásra az URL cím.

Az`[NC]` jelentése *„no case”*, azaz ezen flag használata esetén a kisbetű és a nagybetű között nincs különbség. Több flag esetében azokat a kapcsos zárójelen belül vesszővel választjuk el egymástól, azaz pl.`[NC,OR]`jelölést alkalmazhatunk.

Az utolsó sorban adjuk meg az átirányítási feltételt.

```
RewriteRule ^(.*)$ http://www.pelda.hu/$1 [L,R=301]
```

A`^(.*)$`egy reguláris kifejezés ahol a`^`jelöli az „illesztendő” kifejezés elejét.

A`()`segítségével adhatjuk meg hogy az adott karaktereket egységként kezelje.

A`.`karakterrel bármilyen karaktert helyettesíthetünk.

A`*`karakterrel adható meg az előző karakter vagy zárójeles kifejezés legalább nullaszor.

A`$`karakter határozza meg a kifejezés végét.

Ezt követi az az URL cím amire át kívánjuk irányítani a címet. Az utolsó`[]`között található karakterek jelentése:  
`L`– az utolsó szabályt jelöli  
`R`– Az átirányítás típusát határozza meg.

### **HOGYAN IRÁNYÍTHATOM ÁT A LÁTOGATÓKAT HTTPS PROTOKOLLRA?**

Abban az esetben ha érvényes tanúsítvány lett beállítva a domain névnél akkor javasolt a látogatókat átirányítani a nem biztonságos http:// címről a biztonságos https:// címre.

Az átirányítást legegyszerűbben az adott domain névhez tartozó dokumentum\_root mappájában található .htaccess fájl módosításával oldható meg.

A példában szereplő sorok segítségével az adott domain név minden felhasználóját át fogja irányítani a nem biztonságos (http://) URL-ről a biztonságos (https://) URL-re.

<div class="ricsi exclamation" id="bkmrk-a-p%C3%A9ld%C3%A1ban-szerepl%C5%91--1">A példában szereplő pelda.hu domain nevet cserélje ki a saját domain nevére.</div>```
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://pelda.hu/$1 [R=301,L]
```