Как создать поддомен для каждого языка? - PullRequest
2 голосов
/ 02 апреля 2012

Я хочу сделать сайт на нескольких языках, я делаю это правильно с помощью файлов cookie, чтобы определить предпочитаемый пользователем язык.

Теперь я хочу, чтобы каждый язык имел свой поддомен, который будет проиндексирован в поисковых системах,что-то вроде Facebook.

, поэтому я хочу настроить свой Apache так, чтобы все мои виртуальные хосты указывали на одну и ту же папку, а затем с помощью $ _SERVER ["SERVER_NAME"] выяснить, какой поддомен был запрошен.

Я начинаю использовать этот код в своем файле htaccess:

<VirtualHost *>
    ServerName mydomain.com
    ServerAlias en.mydomain.com ar.mydomain.com es.mydomain.com
</VirtualHost>

, но он не работает, и я не могу найти сервер, когда запрашиваю es.mydomain.come, так что любая помощь?

Кстати, я использую mod_rewrite после этого кода выше!и я не создал субдомен в cPanel!

Ответы [ 2 ]

4 голосов
/ 02 апреля 2012

Вы можете направить все субдомены в одну папку, используя подстановочный знак *

<VirtualHost *>
      ServerName mydomain.come
      ServerAlias *.mydomain.com
</VirtualHost>
1 голос
/ 02 апреля 2012

Пока ваши записи CNAME в порядке, как сказал BluesRock

попробуйте это:

<VirtualHost *:80>
  DocumentRoot /www/public //whatever the root is!
  ServerName domain.com
  ServerAlias en.domain.com, es.domain.com
</VirtualHost>

Еще одно примечание, которое нужно запомнить:

$_SERVER["SERVER_NAME"]//will always show domain.com
$_SERVER["HTTP_HOST"]//Will show en.domain.com if that is where they entered from.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...