Преусмеравање www на Non-www са Nginx-ом на Ubuntu 14.04

Преусмеравање www на Non-www са Nginx-ом на Ubuntu 14.04

Увод

У свету веб-развијања, важно је да ваш сајт буде доступан на једном, конзистентном URL-у. То значи да посетиоци треба да могу да приступе вашем сајту независно од тога да ли уносе „www.“ у адресу или не. Преусмеравање „www“ на „non-www“ или обрнуто је чест захтев и може се постићи помоћу конфигурационих датотека Nginx-а на вашем Ubuntu 14.04 серверу.

Ово је важно из неколико разлога:

* SEO оптимизација: Претраживачи сматрају „www.“ и „non-www“ верзије вашег сајта као различите странице, што може да утиче на вашу SEO оптимизацију. Преусмеравање једног на другог осигурава да све везe воде ка једном URL-у, што побољшава ваш рејтинг.
* Конзистентност: Омогућава да се сви линкови на ваш сајт отварају на истој адреси, без обзира на то да ли се користи „www.“ или не.
* Сигурност: Преусмеравање може помоћи да се избегну проблеми са SSL сертификатима, пошто се веза успоставља само са једним URL-ом.

Покретање преусмеравања

Овај водич ће вас проћи кроз процес подешавања преусмеравања са „www“ на „non-www“ помоћу Nginx-а на вашем Ubuntu 14.04 серверу.

1. Приступ датотеци конфигурације Nginx-а

Прво, морате да добијете приступ конфигурационој датотеци Nginx-а. То се може урадити помоћу следеће команде:

bash
sudo nano /etc/nginx/sites-available/your_site_name.conf

Замените „your_site_name.conf“ са именом ваше датотеке конфигурације.

2. Додајте преусмеравање

Унутар ваше датотеке конфигурације, додајте следећи блок кода:

nginx
server {
listen 80;
server_name your_domain.com www.your_domain.com;

Преусмеравање са www на non-www

if ($host ~ ^www\.(.)$) {
rewrite ^/(.*)$ http://$1 permanent;
}

Остатак ваше конфигурације

...
}

Замените „your_domain.com“ са вашим доменом.

Овај блок кода:

* Listen 80: Дефинише порт на коме Nginx слуша за захтеве.
* Server_name: Дефинише имена домаћина на која се преусмеравање односи.
If ($host ~* ^www\.(.)$): Проверава да ли се захтев односи на „www“ домен.
Rewrite ^/(.)$ http://$1 permanent: Преусмерава захтеве са „www“ на „non-www“ верзију вашег сајта, користећи HTTP код 301 (Permanent Redirect).

3. Поново покрените Nginx

Након што сте додали преусмеравање, морате да поново покренете Nginx да бисте применили промене. То можете урадити помоћу следеће команде:

bash
sudo service nginx restart

Додатна подешавања

301 vs. 302 преусмеравање:

* 301 (Permanent Redirect): Ово је препоручени код за преусмеравање. Он сигнализира претраживачима да је нови URL трајна замена за стари.
* 302 (Temporary Redirect): Ово се користи за привремено преусмеравање. Претраживачи неће поновно индексирати сајт са новим URL-ом.

Преусмеравање са „non-www“ на „www“:

Ако желите да преусмерите са „non-www“ на „www“, промените код преусмеравња у датотеци конфигурације на следећи начин:

nginx
if ($host !~ ^www\.(.)$) {
rewrite ^/(.*)$ http://www.$1 permanent;
}

Преусмеравање на HTTPS:

Ако желите да преусмерите са HTTP на HTTPS, можете додати следећи блок кода у датотеци конфигурације:

nginx
if ($scheme != "https") {
rewrite ^/(.*)$ https://$host$1 permanent;
}

Закључак

Преусмеравање „www“ на „non-www“ или обрнуто је важан корак у оптимизацији вашег веб сајта. Овај водич је показао како се то може постићи помоћу Nginx-а на Ubuntu 14.04 серверу.

Када подесите преусмеравање, важно је да проверите да ли ради исправно. Можете да користите алатке као што су Google Webmaster Tools или други веб алат за проверу преусмеравања.

Често постављана питања

* Шта се дешава ако не подесим преусмеравање?
* Претраживачи ће сматрати „www.“ и „non-www“ верзије вашег сајта као различите странице, што може да утиче на вашу SEO оптимизацију.
* Да ли је важно да ли преусмерим на „www“ или „non-www“?
* Не постоји дефинитивно правило које је боље. Важно је бити конзистентни у коришћењу једног URL-а.
* Да ли је могуће да имам преусмеравање на ХТТПС?
* Да, можете да подесите преусмеравање на ХТТПС, што ће осигурати да се све везе отварају преко сигурног протокола.
* Шта је најбољи начин за проверу да ли преусмеравање ради исправно?
* Користите алатке као што су Google Webmaster Tools или други веб алат за проверу преусмеравања.
* Могу ли да подесим преусмеравање на више домена?
* Да, можете да подесите преусмеравање на више домена у датотеци конфигурације Nginx-а.
* Шта ако мој сајт има више поддомена?
* За сваки поддомен, морате да додате одговарајуће преусмеравање у датотеци конфигурације Nginx-а.
* Шта ако не могу да приступим датотеци конфигурације Nginx-а?
* Проверите да ли имате дозволу за приступ датотеци. Можда ћете требати да комуницирате са својим веб хостинг провајдером.
* Могу ли да користим други веб сервер уместо Nginx-а?
* Да, можете да користите и друге веб сервере, као што је Apache, али начин подешавања преусмеравања ће се разликовати.
* Да ли је преусмеравање компатибилно са свим претраживачима?
* Да, HTTP 301 преусмеравање је компатибилно са свим модерним претраживачима.

Тагови: Nginx, Ubuntu, преусмеравање, www, non-www, SEO, оптимизација, веб сервер, конфигурација, претраживачи, HTTPS, ХТТП, домен

Линкови:

* Званична документација Nginx-а
* Google Webmaster Tools