【问题标题】:Drupal site folder naming schemeDrupal 站点文件夹命名方案
【发布时间】:2011-01-23 21:45:17
【问题描述】:

在使用多站点设置在 Drupal 中命名站点文件夹时,我可以将站点命名为“mydomain”还是必须采用域名格式,例如“mydomain.com”。 有没有办法在linux中使用符号链接来做到这一点?

谢谢

【问题讨论】:

    标签: drupal


    【解决方案1】:

    Drupal 将通过 HTTP 请求的域名与站点内的文件夹名称相匹配。如果它不匹配任何内容,它将回退到“默认”。所以你需要将文件夹命名为 mydomain.com。

    如果您的 Apache(或其他 HTTPd)配置为解析符号链接,您绝对可以使用来自 mydomain.com -> mydomain 的符号链接。

    【讨论】:

    • 感谢 GSP 的回复。只是为了确认。因此,即使使用符号链接也不可能,对吗?甚至没有 .htaccess 文件设置?
    • 在哪里创建符号链接?它可以在服务器上的任何地方还是需要在 /home/drupal/sites 中?那么我会写 ln -s mydomain.com /home/drupal/mydomain.
    • 除非您的 Apache 设置为限制可访问目录,否则您应该能够在任何地方创建目标。因此,您可以创建 /var/websites/[domain] 然后在 Drupal 的站点文件夹中创建一个符号链接,指向 $drupalroot/sites/[domain].com -> /var/websites/[domain]
    【解决方案2】:

    Drupal 6 在名为 sites/mydomain.com 或类似文件夹中查找名为 settings.php 的文件。确切的规则列在 default.settings.php 中。如果您的主机支持符号链接,您可以将 mydomain.com 设为链接:语法为 ln -s /path/to/real/files/mydomain mydomain.com

    Drupal 7 在处理多站点安装方面做得更好——它可以告诉 drupal 每个域的 settings.php 文件在哪里。这里有一个向后移植此功能的补丁:http://drupal.org/node/231298

    【讨论】: