将 Apache 虚拟主机重定向到虚拟机

将 Apache 虚拟主机重定向到虚拟机

我有一台运行 apache2 的专用服务器,我想拥有多台虚拟机(用于不同的开发环境)。我已经成功使用 virtualbox 创建了虚拟机。

我的服务器在网络上有一个静态IP,并且有一个域名。

我想通过 apache 上的虚拟主机将我的子域名重定向到虚拟机。可以吗?如何做?

抱歉,如果这样的问题已经存在,我不知道该搜索什么关键词。

谢谢。

答案1

第一的在虚拟机中设置 NAT针对您想要在客户虚拟机上公开的服务。

然后在您的 apache 配置中添加反向代理配置。

假设您的主机的端口7890转换为您的客户的端口80(或您正在公开的服务的相关端口),您可以执行以下操作。

<VirtualHost *:80>

    DocumentRoot /home/demo/public_html
    ServerName demo.example.com
    ErrorLog /var/log/apache2/demo-error.log
    CustomLog /var/log/apache2/demo.-access.log common

    ProxyRequests Off

    ProxyPass / http://127.0.0.1:7890
    ProxyPassReverse / http://127.0.0.1:7890

</VirtualHost>

您将需要启用proxyproxy_httpapache 模块(sudo a2enmod http http_proxy在 Ubuntu 上)。

相关内容