0

我一直在使用apache服务器。我想将一些 URL 重定向到另一个,例如。www.abc.com 到 localhost:8080/Home

我在apache安装的conf文件夹中的httpd.conf中取消了rewrite模块的注释。然后我在 httpd.conf 文件中编写了如下所示的重写规则。

RewriteEngine On # 开启重写引擎 RewriteRule http://www.abc.com http://localhost:8080/Home/

但是什么也没发生。它只是正常打开 abc.com。即使在日志中也没有错误消息。

谁能建议问题出在哪里?

4

2 回答 2

0

您只能重写将服务器作为主机的 URL。由于您不托管 www.abc.com,因此您无法重写其任何 URL。

于 2012-09-19T07:58:19.500 回答
0

这不是“最佳”解决方案,但我在家里使用它。

在您自己的 PC 上编辑“主机”文件以进行重定向。例如,我的将“阁楼”重定向到 ip 10.0.0.5,即我在阁楼中的服务器。因此,当我键入 attic/myfolder 时,我会得到通常在 10.0.0.5/myfolder 中得到的内容。

您的主机默认位置可以通过非常快速的 google 找到。

正如我所说,不是最好的,但它确实有效。

编辑:

好的,something.something,我们将其命名为 xyz.com。

我们这里需要两件事;

a) your server must expect traffic from xyz.com 
(this is just a config on the server, easy to achieve).

b) your browser must be pointed to your server when you type xyz.com.

通常,当您在任何浏览器中键入 xyz.com 时,您的 PC 将连接到 DNS 服务器以找出 xyz.com 的实际位置(DNS 服务器返回 IP 地址)。要通知 DNS 服务器 xyz.com 应该指向您的服务器,您需要付费向注册商注册域名(未分配的域并不昂贵)。这是最好的方法,因为现在每台计算机都知道如何通过键入 xyz.com 来访问您的服务器。当您将您的网站移动到托管服务器时,您会转到注册商的网站并更改设置,说“停止指向我的家庭服务器的 IP 并开始指向我的托管服务器的 IP”。

或者,如果您不想这样做,您需要告诉您的 PC 跳过 DNS 检查,您可以通过如上修改您的主机文件来做到这一点。这仅对您有用,但足以用于家庭测试目的。

第三个选项是运行您自己的 DNS 服务器,并手动告诉它覆盖 xyz.com 的全球设置。这样,您的浏览器将在检查 DNS 服务器时获得您的自定义结果,并直接转发到您的服务器。但是,运行您自己的 DNS 服务器是一项复杂的工作,并且对于您当前的任务来说是多余的。

总之,从最好到最差:1)注册您的域并将其指向家 2)修改您的主机文件以绕过 DNS 检查 3)运行您自己的 DNS 服务器,并覆盖 xyz.com 的设置

希望这次我更清楚了:O)

于 2012-09-19T10:24:08.330 回答