我想将几个域名重定向到不同的子目录。例如:
如果访问者使用具有到www.mainme.com的HTTP重定向的域www.cookie.com,那么当访问者到达那里时,Apache会检测到域并将其重定向到mainme.com/cookie
puppy.com也是如此。如果它将HTTP重定向到mainme.com,那么当用户到达那里时,它将被重定向到main.com/puppy
这可以在.htaccess中完成吗?
使用Linux作为服务器,/var/www作为web文件夹。
现在不是使用Virtualhost,而是学习如何使用它。
发布于 2011-10-20 02:47:37
我真的不知道你说的是什么意思
转发到www.mainme.com的
如果它是通过HTTP-redirect转发的,你需要根据你的需要更改这个重定向(所以在最后附加/cookie或/puppy )。
如果您的域共享相同的文档根目录,则需要将以下代码放入您的.htacces中:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?cookie\.com$
RewriteRule ^(.*)$ http://www.mainme.com/cookie? [R,L]
RewriteCond %{HTTP_HOST} ^(www\.)?puppy\.com$
RewriteRule ^(.*)$ http://www.mainme.com/puppy? [R,L]编辑:http-,这样你就可以知道用户来自哪里。试试这个:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http[s]?://(www\.)?cookie\.com(.*)?$
RewriteRule ^(.*)$ http[s]?://www.mainme.com/cookie? [R,L]
RewriteCond %{HTTP_REFERER} ^http://(www\.)?puppy\.com(.*)?$
RewriteRule ^(.*)$ http://www.mainme.com/puppy? [R,L]发布于 2011-10-20 05:16:57
我希望我没理解错,但是如果你所说的“转发”是指HTTP重定向,那么你所说的其他内容就不起作用了。如果您已经通过将所有内容重定向到www.mainme.com来丢弃该信息,则Apache将无法检测域。( HTTP referer不可靠,因为它可以关闭(我关闭了它),但我不确定它与重定向的含义是否为您所需要的,也不确定它在不同浏览器之间是否一致。)
我不确定你说的“告诉域名卖家”是什么意思。是人,还是自己在注册商的控制面板中编辑设置?但我猜无论哪种方式,如果你可以告诉他们做一件事,你可以告诉他们做其他事情,所以:
最简单的解决方案可能是只重定向到不同的URL,而不是全部重定向到同一个URL。即直接到www.mainme.com/sitename。或者,如果你只能转发到一个域名,而不是一个完整的网址,那么可以为每个域名创建一个子域: sitename.mainme.com,如果你想把它转到www.mainme.com/sitename,这个子域可以第二次重定向。
另一种方法是将每个域的IP设置为您的mainme.com服务器,然后将它们作为虚拟主机托管。如果你愿意,他们可以重定向,但你也可以直接从cookie/puppy/etc.com上提供内容。
https://stackoverflow.com/questions/7826356
复制相似问题