将子域与URL中的PHP变量相关联

时间:2014-02-14 13:52:22

标签: php url subdomain

我管理的网站具有可通过php变量访问的不同国家/地区版本。英国的例子:

http://autocosts.org/index.php?c=UK

如何将子域http://uk.autocosts.orghttp://autocosts.org/index.php?c=UK

相关联

我正在使用Hostgator服务器

3 个答案:

答案 0 :(得分:2)

域名存储在HTTP_HOST $_SERVER索引中 你可以试试这个

 $url = "http://autocosts.org/index.php?c=".
 $country =  substr($_SERVER['HTTP_HOST'], 0,2);
 $url .= strtoupper($country);

答案 1 :(得分:2)

可以使用URL重写。

将它放在网站根文件夹中的.htaccess文件中:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)\.autocosts\.org$ [NC]
RewriteRule (.*)  http://autocosts.org/index.php?c=%1 [L,QSA]
</IfModule>

答案 2 :(得分:-1)

通过对与uk.autocosts.org匹配的请求进行内部重定向,您可以获得此效果。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^uk.autocosts.org$
RewriteRule ^.*$ %{REQUEST_URI}?c=UK [PT]

但是,您必须小心使用具有查询字符串的GET URL。如果您有带查询字符串的GET URL,则需要特殊处理。