2009-07-06 51 views
1

我购买了一个域名:josecvega.com如何在apache上用mod_rewrite重写我的url?

每当有人试图访问http://www.josecvega.com将其转发到我的网络服务器。

我已经打开面膜,让您最初到达IP,68.42.56.13我的Web服务器,它仍然显示http://www.josecvega.com,但是当你点击,您可以到另一个位置我的Web服务器上的链接, http://www.josecvega.com消失并变成IP地址。我目前正在试图看看mod_rewrite是否可以帮助解决这个问题。

这是我迄今为止在httpd.conf

RewriteEngine叙述上
的RewriteCond%{HTTP_HOST} = 68.42.56.13

我不知道该规则将如何去重写URL。

编辑: 我httpd.conf
我也明白,这个问题不严格相关mod_rewrite的,但我已经尝试过许多不同的方式和非固定都似乎工作,我希望它可以用mod_rewrite完成。

+0

是使用包含IP地址的绝对URL的链接吗? – Cogsy 2009-07-07 00:02:09

回答

1

这与mod_rewrite无关。

请参阅ServerNameUseCanonicalName指令。将它们设置为您的主机名并启用规范名称。

2

不确定mod_rewrite是否相关。您应该配置您的VirtualHost设置,以便使用ServerName。

例如:

NameVirtualHost *:80 

<VirtualHost *:80> 
ServerName josecvega.com 
ServerAlias www.josecvega.com 
DocumentRoot /var/www/vhosts/josecvega.com/htdocs 
<Directory /var/www/vhosts/josecvega.com/htdocs> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride None 
    Order allow,deny 
    allow from all 
</Directory> 
</VirtualHost> 

在假定你有机会获得httpd.conf文件,它似乎你做的。如果需要,您可以将更多的指令添加到VirtualHost,但默认情况下,它将使用主httpd.conf的所有设置。

当然,如果您的服务器上只能有一个网站,无论如何,你可以改变主httpd.conf文件中的 ServerName值。

+0

我尝试了你的建议,但它仍然显示我的IP而不是域名。我已经发布了一个链接到我的httpd.conf希望你能告诉我我哪里出错了。再次感谢。 – 2009-07-07 01:09:20