我想用多种语言制作网站,我使用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时,我得到无法找到服务器吗?
BTW我在上面的代码之后使用mod_rewrite!我没有在cPanel中创建任何子域!
答案 0 :(得分:4)
您可以使用通配符*
将所有子域指向同一文件夹<VirtualHost *>
ServerName mydomain.come
ServerAlias *.mydomain.com
</VirtualHost>
答案 1 :(得分:1)
只要您的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.