【发布时间】:2013-09-05 01:39:44
【问题描述】:
我提前道歉,因为我觉得这可能是一个之前已经涵盖的通用请求,但是到目前为止我还没有完全找到我在搜索中寻找的具体解决方案。
我目前有 4 个域和一个提供商。例如www.domaina.com、www.domainb.com、www.domainc.com 和 www.domaind.com。
由于这些是单页网站,我希望这些域指向单个主机上的 4 个单独的子目录。不确定这是否是正确的术语,但该主机没有与之关联的域,即访问根目录看起来像 69.195.124.72/~user/。
例如我所追求的是:
- www.domaina.com -> 69.195.124.72/~user/a/
- www.domainb.com -> 69.195.124.72/~user/b/
- www.domainc.com -> 69.195.124.72/~user/c/
- www.domaind.com -> 69.195.124.72/~user/d/
目前,我的配置方式是,如果用户键入 www.domaina.com,他们会通过主机上配置的 301 重定向到 69.195.124.72/~user/a/。但是,我希望他们只看到 www.domaina.com 作为地址。
据我了解,只有一个 .htaccess 文件位于 69.195.124.72/~user/ 的根目录下。我不确定要向这个文件添加什么规则才能让这一切发生。
我相信我最幸运的事情是:
Options -Multiviews
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^domaina\.com$
RewriteRule ^(.*) http://domaina.com/$1 [R=301,L]
RewriteRule ^domaina\.com$ /69.195.124.72/~user/a/ [L]
但是当我尝试访问 www.domaina.com 时,这似乎导致了 网站重定向循环 错误。
有什么方法可以实现我在这里尝试的目标吗?任何帮助将不胜感激 - 谢谢。
【问题讨论】:
-
如果没有 .htaccess,如果您访问 domaina.com 会发生什么情况,它会更改 IP 还是显示 ~user 内部的内容?
-
目前,如果我访问 domaina.com,我会通过域服务器上配置的 301 获取 /69.195.124.72/~user/a/ 的内容。这是要显示的正确目录,但我希望 URL 仍显示 domaina.com
-
哇,您的托管公司真的没有显示您的域名吗?你应该立即改变。这是我见过的最糟糕的配置,一个用用户目录和 ip 替换客户端域的主机。我最后一次听说托管公司提供
~user文件夹作为 home 是在 2000 年左右 -
也许我误解了一些东西,但主机和域是独立的公司,我正在尝试将域设置为指向主机上的子目录。也许我是在用错误的方式解决这个问题,但这是我应该在 在域提供程序上 更改的设置吗?
-
然后在域名提供商上设置你的域名的DNS指向你的主机并一次性解决你所有的问题。
标签: apache .htaccess redirect mod-rewrite http-status-code-301