PHP项目需要将用户私有域映射/屏蔽到项目URL(不更改URL中的用户域)

时间:2013-12-31 14:45:42

标签: php apache .htaccess

我们有一个php项目/ php网络应用程序,用户可以在其中创建或多或少看起来像robert.blogger.com这样的子域URL上的网站的个人资料。现在这个用户还有一个他自己的例子robert.com的域名。现在我们希望robert.com的每个请求都能重定向到robert.blogger.com,而不会更改URL。

网址应该显示robert.com/home.html,robert.com/aboutus.html等,但实际代码应该从robert.blogger.com/index.html,robert.com/aboutus.html等运行。

请注意,该项目托管在具有专用IP和专用IP的专用服务器上。我们还可以访问用户域的控制面板。

我们尝试过htaccess,但只重定向,我们希望屏蔽/映射工作。

这可能吗?如果是这样,怎么办呢?非常感谢!!!

2 个答案:

答案 0 :(得分:0)

解决方案取决于您运行的是哪种服务器软件,但在Apache中,您可以通过将IP的默认vhost映射到应用程序(然后让人们将其域指向该主机)来实现此目的,并在您的应用程序中使用$ _SERVER中的HTTP_HOST来查找有效域(您可能已经在将子域映射到用户帐户)。这将是完全相同的事情,只要你在HTML中保持所有链接相对(并且不要认为“我将它映射到此用户,因此域应该是user.example.com”)。

要提供更具体的答案,您必须在问题中更加具体。

答案 1 :(得分:0)

如果您有权使用它,则应该可以在htaccess中使用ProxyPass。尝试这样的事情。

ServerName robert.com
RewriteRule ^/(.*)$ http://robert.blogger.com/$1 [L,P]

或者您可以将它映射到您的应用程序中,取决于该服务器是否属于您的服务器,您可以执行任何想要设置的操作。