使用httpd.conf将所有流量重定向到一个子目录

时间:2013-04-18 23:21:49

标签: apache redirect httpd.conf

我有一个httpd.conf文件,在我的服务器上配置了许多域。我需要将一个网站上的旧目录重定向到一个新目录。

基本上,当用户访问目录domain.com.au/store中的任何页面时,我希望将它们重定向到domain.com.au/shop

我不希望重定向包含旧的webpath,因此任何旧的网址都只需要重定向到domain.com.au/shop页面,而不是/shop/old_webpath

我尝试了很多来自网络的重定向条目,似乎都没有正常工作,因为它们全部重定向到/shop/old_webpath,而不只是/shop

任何apache头脑能帮忙吗?

1 个答案:

答案 0 :(得分:1)

.htaccess文件中尝试此操作:

Options +FollowSymLinks -MultiViews

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^store/(.*)$ \/shop
</IfModule>

domain.com.au的apache配置中的虚拟主机更新:

<VirtualHost *:80>
    # ...
    <Directory "[your_path]">
        # ...
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{HTTP_HOST} ^domain\.com\.au$ [NC]
        RewriteRule ^store/(.*)$ \/shop
    </Directory>
</VirtualHost>