【问题标题】:Setting up Apache2 Virtual Hosts and AllowOverride设置 Apache2 虚拟主机和 AllowOverride
【发布时间】:2015-10-06 04:39:54
【问题描述】:

我正在尝试安装 wordpress 和另一个名为 learninglocker 的应用程序。每个都分别在自己的目录/var/www/html/wordpress//var/www/html/learninglocker/ 中。我一直在尝试获得以下三种行为:

  1. domain.com 指向wordpress
  2. wordpress.domain.com 指向wordpress
  3. learninglocker.domain.com指向learninglocker

我的问题是,在 learninglocker 安装中,它指定将以下属性添加到虚拟主机:AllowOverride All,结果我得到以下行为:

  1. domain.com指向学习储物柜
  2. wordpress.domain.comdomain.com/wordpress 在 learninglocker 应用程序结构中给我一个 404

这是我为每个虚拟主机所拥有的:

WordPress

<VirtualHost *:80>
  ServerName domain.com
  ServerAlias wordpress.domain.com
  ServerAdmin user@email.com
  DocumentRoot /var/www/html/wordpress

  ErrorLog ${APACHE_LOG_DIR}/wordpress/error.log
</VirtualHost>

LearningLocker

<VirtualHost *:80>
  ServerName domain.com
  ServerAlias learninglocker.domain.com
  ServerAdmin user@email.com
  DocumentRoot /var/www/html/learninglocker/public

  <Directory /var/www/html/learninglocker/>
    AllowOverride All
  </Directory>

  ErrorLog ${APACHE_LOG_DIR}/learninglocker/error.log
</VirtualHost>

我是使用 VirtualHosts/DNS 的新手,所以我需要新手级别的帮助

【问题讨论】:

  • 我相信&lt;Directory&gt; 部分应该包含目录路径用引号括起来,像这样:&lt;Directory "/var/www/html/learninglocker/"&gt;

标签: apache subdomain virtualhost


【解决方案1】:

您的两个虚拟主机都将domain.com 列为ServerName。这将导致在您访问服务器时选择一个随机主机,这不是您想要的。您应该分别使用 ServerName wordpress.domain.comServerName learninglocker.domain.com 并暂时放弃 ServerAlias 指令。

【讨论】:

    猜你喜欢
    • 2014-10-29
    • 2014-10-23
    • 1970-01-01
    • 2015-03-24
    • 1970-01-01
    • 2016-11-04
    • 1970-01-01
    • 2012-03-18
    • 2023-03-04
    相关资源
    最近更新 更多