我有一台运行 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>
您将需要启用proxy
和proxy_http
apache 模块(sudo a2enmod http http_proxy
在 Ubuntu 上)。