在使用IP地址时重写URL域名

我的apache主服务器监听备用端口(端口8080)上的HTTP请求,但我想让用户键入我的域名(example.com),而不必指定端口。

到目前为止,我已经通过我的DNS提供商完成了这一任务,他将任何请求redirect到www.example.com或example.com到http://123.456.789.001:8080

这是一个问题,因为虽然它起作用,但是用户在他们的URL栏中得到了一个丑陋的数字。 我想要做的是将123.456.789.001:8080重写为example.com

我已经尝试阅读http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html ,但我不是URL写作的专家,我已经提出了(哪些显然不工作)是:

RewriteEngine on RewriteCond %{HTTP_HOST} =123.456.789.001 RewriteRule ^(.*) example.com/$1 

我放在我的httpd.conf文件中。

在你的情况下,你不能达到你想要的。 有3个解决scheme(以“善”的顺序)。

  1. 请求您的ISP打开端口80。

  2. 在某个地方获取服务器,并使用反向代理(使用Apache或其他)进行configuration。

  3. 使用框架来“封装”您的页面,而不是redirect。

您不能在客户端地址栏中显示虚假的主机名或端口。