2013-07-29 237 views
0

我有几个域名指向相同的IP地址。我目前将它们从/default.asp文件重定向到基于SERVER_NAME的相应文件夹。例如:.htaccess域重定向到文件夹

http://domain1.com redirects to http://domain1.com/folder1 
http://domain2.com redirects to http://domain1.com/folder2 

这工作,但网址,在浏览器中显示文件夹名称:

http://domain1.com/folder1/somepage.htm 

而且用户不能浏览的网页,而无需输入文件夹名称:

http://domain1.com/somepage.htm // This fails because it isn't in the root folder. 

我可以使用.htaccess文件(1)将页面请求路由到适当的文件夹,并(2)防止文件夹名称出现在浏览器中?

这也会将重定向从/default.asp文件移动到它可能属于的.htaccess文件。

谢谢!

+1

听起来好像你的'httpd.conf'文件中的VirtualHost指令搞砸了。你有访问这些吗? –

+0

我问的原因是'domain1'的文档根目录位于错误的位置。你可以尝试用'.htaccess'重写它,但它不起作用。 –

+0

咦? “文档根目录”位于错误的位置?我认为没有什么会搞砸的,我的域名工作正常(我目前甚至没有.htaccess文件)。我询问是否以及如何重定向域名,以便(1)请求转到特定文件夹;(2)如果我可以防止文件夹名称出现在浏览器URL中。谢谢。 –

回答

-1
RewriteEngine on 

RewriteMap lowercase int:tolower 

RewriteCond %{lowercase:%{HTTP_HOST}} ^www\.([^.]+)\.example\.com$ 
RewriteRule ^(.*) /home/%1/www$1 
+0

此答案假定OP未包含在其原始问题中的目录路径,系统和命名约定。此外,如果服务器具有适当的权限设置(关于您的最后一条规则),此类\ *应该\ *不起作用。 –

+0

这是一个想法的例子。给“复制粘贴”答案不教什么。不知道你在说什么权限。它演示了它是如何工作的。当然你必须有权限访问你重定向到的文件夹。给-1这只是一个***。 –

+0

在这个网站上,我们努力给出可以在代码中显示的真实答案。有些海报可能不会使用你习惯的Linux的味道(这看起来像Redhat或CentOS的东西)。有些人可能正在使用诸如FreeBSD或Windows之类的东西。您引用的路径看起来像DocumentRoot,它可以在Apache Config的VirtualHost声明中找到。 –

相关问题