如何在apache上用mod_rewrite重写我的url?

时间:2009-07-06 23:47:57

标签: apache mod-rewrite wampserver httpd.conf

我购买了一个域名:josecvega.com

每当有人试图访问http://www.josecvega.com时,它都会将它们转发到我的网络服务器。

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

这是我到目前为止在httpd.conf

中的内容

重写发动机 RewriteCond%{HTTP_HOST} = 68.42.56.13

我不确定该规则将如何重写URL。

编辑: 我的httpd.conf
我也明白这个问题与mod_rewrite没有严格的关系,但是我试过用很多不同的方法修复它,而且似乎没有用,我希望可以用mod_rewrite来完成。

2 个答案:

答案 0 :(得分: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值。

答案 1 :(得分:1)

这与mod_rewrite无关。

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