根据子 URI 更改 documentroot

根据子 URI 更改 documentroot

假设我有以下项目结构

Root
- Frontend
-- index.php
- Backend
-- index.php

我希望我的 www.mysite.com 使用 /www/root/frontend 作为文档根目录,而如果请求 www.mysite.com/admin,则使用 /www/root/backend 作为文档根目录。注意:别名与 /admin/ 完全匹配,而我需要 /admin/* 才能在第二种情况下工作。

我该如何处理这个问题?

谢谢

答案1

在你的 Apache 虚拟主机配置中

RewriteEngine On
RewriteCond %{REQUEST_URI} ^admin [NC]
RewriteRule ^(.*)$ /www/root/backend/$1 [L]

因此在上下文中

<VirtualHost *:80>
  ServerName www.example.com

  DocumentRoot /www/root/frontend

  RewriteEngine On
  RewriteCond %{REQUEST_URI} ^admin [NC]
  RewriteRule ^(.*)$ /www/root/backend/$1 [L]
</VirtualHost>

相关内容