将指向同一服务器的不同域重定向到同一网站的不同版本

时间:2015-10-24 02:56:06

标签: php apache .htaccess

我有不同的域名,如(虚假的名字)" plumbers.org"和" cleaning.org" 指向我的apache2 conf中的同一个文件夹。 主要领域是" workers.org"

我想要获得的基本上是plumbers.org指向workers.org/index.php?version=1

并让cleaning.org指向workers.org/index.php?version=2

是我在.htacess中设置的内容?什么是最佳实践?

2 个答案:

答案 0 :(得分:1)

您可以尝试在原始httpd / apache conf文件中添加永久重定向,例如:

<VirtualHost ...>
    ServerName plumbers.org
    Redirect 301 / http://workers.org/index.php?version=1
</VirtualHost>

...

<VirtualHost ...>
    ServerName cleaning.org
    Redirect 301 / http://workers.org/index.php?version=2
</VirtualHost>

从技术上讲,如果您将这些更改放在相应的.htaccess文件中(如果.htaccess文件未被&#34; parent&#34; conf禁止),它也应该有效。当然,没有<VirtualHost>部分。

答案 1 :(得分:1)

假设所有3个域都指向同一个DocumentRoot文件夹,您可以在DOCUMENT_ROOT/.htaccess文件中使用此代码:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?:www\.)plumbers\.org$ [NC]
RewriteRule ^/?$ index.php?version=1 [L,QSA]

RewriteCond %{HTTP_HOST} ^(?:www\.)cleaning\.org$ [NC]
RewriteRule ^/?$ index.php?version=2 [L,QSA]