Apache服务器通过Rewrite规则绑定域名目录
使用虚拟主机时,由于不能自定义VirtualHost,因此只能通过重写规则来绑定域名和目录。前提是服务器允许使用.htaccess
并启用了重写规则。
配置信息
这是最简单的一个示例,直接将具体域名跟具体目录绑定,也可以通过正则的方式来处理。域名与子目录绑定的核心就是重写规则。注意排除绑定到的目录,否则会导致重定向死循环。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/ui/
RewriteRule ^(.*)$ ui/$1 [L,QSA]
RewriteCond %{HTTP_HOST} ^api\.domain\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/api/
RewriteRule ^(.*)$ api/$1 [L,QSA]
</IfModule>