Назад | Перейти на главную страницу

Перенаправить abc.example.com на example.com/abc

У меня есть домен example.com со следующими записями DNS:

Hostname           Type     Value
example.com        A        93.184.216.34
help.example.com   A        93.184.216.34
www.example.com    A        93.184.216.34

Файл /etc/httpd/sites-available/example.com.conf является:

<VirtualHost *:80>
    ServerAdmin admin@mydomain.com
    ServerName example.com
    ServerAlias www.example.com help.example.com
    DocumentRoot /var/www/html/example.com/_site
</VirtualHost>

В настоящее время оба help.example.com и www.example.com перенаправить на example.com.

Мой вопрос: как перенаправить help.example.com к example.com/help? Спасибо.

В настоящее время оба help.example.com и www.example.com перенаправить на example.com.

Нет, они оба обслуживаются вашим сервером. Технически перенаправления нет.

Как перенаправить help.example.com на example.com/help?

включить mod_rewrite на вашем сервере с a2enmod rewrite (вероятно, он уже включен), затем добавьте это в свой VirtualHost:

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

Это перенаправит все запросы на help.example.com с постоянным перенаправлением (301) на http://example.com/help.

Пример:

http://help.example.com     -> http://example.com/help
http://help.example.com/foo -> http://example.com/help/foo

После редактирования конфигурации перезагрузите или перезапустите сервер.