如何重定向到Centos Apache Server的public_html中的文件夹?

时间:2016-06-14 06:50:48

标签: php apache .htaccess virtualhost

我想根据请求的uri [子域名]重定向到一个文件夹。

假设我有public_html作为我的根文件夹,我有一些项目, 现在我想创建一些允许我根据请求的URL指向项目文件夹的东西。

与Public_HTMl一样,我有:

的public_html

    project1

    project2

    project3

    project4

现在,如果我的子域是 project1.example.com

然后我的root应该是 project1 文件夹,如果URL是project1,那么我的root将是 project2

我该怎么做?我认为虚拟主机可以帮助我但是如何使用它?

2 个答案:

答案 0 :(得分:2)

<VirtualHost *:80>

ServerName example.com
ServerAlias *.example.com

RewriteCond %{HTTP_HOST} ^([^\.]+)\.([^\.]+)\.([^\.]+)$
RewriteRule ^(.*)$ /%1/$1

</VirtualHost>

答案 1 :(得分:1)

我会为所有子域和主域添加“catch all vhost”,并通过htaccess处理所有请求。

Here是如何捕获子域并将其用于内部重定向的一个很好的示例。