Як перенаправити www на без www з Nginx на CentOS 7

Як перенаправити www на без www з Nginx на CentOS 7

Перенаправлення доменів з www на без www або навпаки є поширеною практикою в оптимізації пошукових систем (SEO). Це допомагає уникнути дублювання вмісту, покращити структуру сайту та уніфікувати посилання на сайт. У цьому посібнику ми розглянемо, як перенаправити домен з www на без www за допомогою сервера Nginx у системі CentOS 7.

Вступ

Залежно від вимог вашого сайту, може виникнути необхідність перенаправити відвідувачів з версії домену з www на версію без www. Це може бути доречним для покращення зручності користувачів, підвищення якості SEO та забезпечення послідовного досвіду для відвідувачів. Nginx — це популярний вебсервер, який можна використовувати для налаштування таких перенаправлень.

Щоб успішно перенаправити домен з www на без www за допомогою Nginx, потрібно зробити низку кроків. Ці кроки включають редагування файлу конфігурації Nginx, тестування перенаправлення та внесення додаткових налаштувань, щоб уникнути проблем з індексацією пошуковими системами.

Налаштування перенаправлення за допомогою Nginx

1. Відредагувати файл конфігурації

Першим кроком є редагування файлу конфігурації Nginx, який зазвичай називається nginx.conf. Цей файл можна знайти в каталозі /etc/nginx/. Відкрийте файл за допомогою текстового редактора, наприклад nano або vi.

2. Додати директиву server_name

Знайдіть директиву server_name у файлі конфігурації. Якщо її немає, додайте її після директиви listen. Директива server_name визначає доменні імена, на які сервер відповідає.


server_name www.example.com example.com;

Ця директива вказує, що сервер буде відповідати як на www.example.com, так і на example.com.

3. Додати блок location

Після директиви server_name додайте блок location. Блок location визначає, як сервер повинен обробляти запити на певні URL-адреси.


location / {
return 301 https://example.com$request_uri;
}

Цей блок перенаправляє усі запити на / (кореневий URL) на версію домену без www за протоколом HTTPS. Код $request_uri автоматично додає оригінальний запит до перенаправленого URL-адреси.

4. Зберегти та закрити файл

Після того, як ви додали необхідні директиви, збережіть і закрийте файл конфігурації Nginx.

Тестування перенаправлення

Після внесення змін перезапустіть службу Nginx, щоб застосувати нову конфігурацію. Ви можете зробити це, виконавши такі команди:

console
sudo systemctl restart nginx
sudo systemctl status nginx

Відкрийте браузер і перейдіть на www.example.com. Ви повинні бути автоматично перенаправлені на example.com.

Додаткові налаштування

1. Виключення певних URL-адрес

Якщо вам потрібно виключити певні URL-адреси з перенаправлення, ви можете використовувати директиву if. Наприклад, щоб виключити папку /admin із перенаправлення, додайте наступний блок:


location /admin {
return 301 https://www.example.com$request_uri;
}

2. Налаштування постійного перенаправлення

За замовчуванням перенаправлення налаштовується за допомогою коду стану 302 (Тимчасове перенаправлення). Однак рекомендується використовувати код стану 301 (Постійне перенаправлення), щоб повідомити пошуковим системам, що перенаправлення є постійним і що вони повинні індексувати лише версію домену без www. Щоб налаштувати постійне перенаправлення, замініть return 302 на return 301 у блоці location.

3. Перевірка індексації

Після налаштування перенаправлення важливо перевірити, чи правильно індексується домен без www. Ви можете використовувати інструмент перевірки індексування URL-адреси в Google Search Console, щоб перевірити, чи індексується версія без www.

Висновок

Перенаправлення домену з www на без www за допомогою Nginx на CentOS 7 — це відносно простий процес, який можна виконати за лічені хвилини. Внесявши необхідні зміни до файлу конфігурації Nginx і перезапустивши службу, ви можете забезпечити безперебійне перенаправлення відвідувачів на правильну версію свого домену. Це може покращити зручність користувачів, підвищити якість SEO та оптимізувати індексацію пошуковими системами.

Часті запитання:

1. Чому я повинен перенаправляти з www на без www?

* Уникайте дублювання вмісту та покращить структуру сайту.
* Поліпшити зручність користувачів та забезпечити послідовний досвід.
* Уніфікувати посилання на сайт та покращити рейтинг у пошукових системах.

2. Які переваги постійного перенаправлення (301)?

* Повідомляє пошуковим системам, що перенаправлення є постійним.
* Запобігає індексуванню версії домену з www.
* Передає повноваження домену версії без www.

3. Як виключити певні URL-адреси з перенаправлення?

* Використовуйте директиву if в блоці location.
* Визначте URL-адреси, які потрібно виключити, і поверніть відповідний код стану.

4. Як протестувати перенаправлення?

* Відкрийте браузер і перейдіть на версію домену з www.
* Перевірте, чи ви автоматично перенаправлені на версію домену без www.
* Переконайтеся, що використовується правильний код стану (301 для постійного перенаправлення).

5. Як перевірити індексацію домену без www?

* Використовуйте інструмент перевірки індексування URL-адреси в Google Search Console.
* Перевірте, чи індексується версія домену без www.
* Виключіть версію домену з www з індексування за допомогою файлу robots.txt.

6. Що робити, якщо перенаправлення не працює?

* Перевірте, чи правильно відредагований файл конфігурації Nginx.
* Переконайтеся, що служба Nginx перезапущена.
* Перевірте, чи немає будь-яких блокувальних правил брандмауера.
* Очистіть кеш браузера і спробуйте знову.

7. Чи є якісь негативні наслідки перенаправлення з www на без www?

* Потенційна втрата трафіку з закладок або старих посилань на версію домену з www.
* Необхідність оновлення посилань на сайт у всіх місцях, де використовується версія домену з www.

8. Чи можу я перенаправляти з без www на www?

* Так, процес подібний, але потрібно змінити серверні імена та код стану перенаправлення відповідним чином.