我应该将我的网络应用程序放在哪里以使其默认为私有但可通过子域访问?

我应该将我的网络应用程序放在哪里以使其默认为私有但可通过子域访问?

我有一个用 PHP 编写的 Web 应用程序,我想将其托管在 Apache 2.2 服务器上。但棘手的部分是,同一个 Web 应用程序应该可以通过不同的子域访问(Web 应用程序使用当前子域来执行某些工作)。换句话说,我不想为每个子域部署不同的 Web 应用程序副本。这也意味着 Web 应用程序的“主”副本应该是无法访问的,Web 应用程序只能通过子域访问。

就是这样,感谢您的任何想法。

附言:如果您出于某种原因认为这是一个坏主意,我也很感兴趣,因为我仍在考虑所有的选择。

答案1

在 DocumentRoot 之外安装应用程序并使用别名指令使其在您为子域设置的特定 VirtualHost 条目中可用。

Alias /app /var/www/apps/appname

然后您的应用程序就可以使用服务器名称如果您需要对每个子域执行任何特定操作,则确定正在访问哪个虚拟主机。

答案2

不要将您的网站设置为默认虚拟主机。

在 RHEL/CentOS 上,保留默认站点设置 /var/www/html,并将主站点设置为 /var/www/example.com/html。任何不是 example.com 或别名的请求都将转到默认站点。

相关内容