我在 Debian 8 上的默认虚拟主机 example.org 上有一个 Drupal 应用程序。我还有一个单独的应用程序,该应用程序的虚拟主机设置为将对 jones-store.example.org 的请求发送到另一个目录。它按预期工作。
我还有一个 CNAME jones.example.org,它应该指向 example.org/jones。我看不出这将如何工作,因为 Apache 虚拟主机希望将此子域的请求发送到服务器上的物理位置。但如您所知,Drupal 本身正在处理这些路由。
因此我开始搜索并相信.htaccess 应该重定向它。
RewriteCond %{HTTP_HOST} ^jones\.example\.com$ [NC]
RewriteRule ^(.*)$ https://example.com/jones [L,R=302]
您大概知道会发生什么。看起来虚拟主机首先通过了检查,并且虚拟主机击败了 .htaccess 规则。
我尝试过以下规则:
RewriteCond %{HTTP_HOST}=jones.example.com [NC]
但它也首先捕获了虚拟主机。
我暂时禁用了我的 jones-store.example.org,并且 htaccess“捕获”了但没有重定向到该 url。
但我的主要问题是如何用这个虚拟主机进行重定向?