Apache在同一ip上有多个虚拟主机(不同的url)
我有两个虚拟主机(bugzilla和board review)在一台位于ubuntu机器内的apache服务器上 我有一个可以使用的外部ip地址(启用了一个端口),因此无法为虚拟主机分配不同的主机名或不同的端口。(如果我错了,请更正我) 我希望用户能够编写以下内容: 还有去bugzilla的请求 以及向审查委员会提出的请求 我尝试从第一个虚拟主机反向代理到第二个虚拟主机,但没有成功 bugzilla conf文件使用cgi,审查委员会使用wsgi 有没有一种简单的方法来实现上述目标Apache在同一ip上有多个虚拟主机(不同的url),apache,virtualhost,bugzilla,review-board,Apache,Virtualhost,Bugzilla,Review Board,我有两个虚拟主机(bugzilla和board review)在一台位于ubuntu机器内的apache服务器上 我有一个可以使用的外部ip地址(启用了一个端口),因此无法为虚拟主机分配不同的主机名或不同的端口。(如果我错了,请更正我) 我希望用户能够编写以下内容: 还有去bugzilla的请求 以及向审查委员会提出的请求 我尝试从第一个虚拟主机反向代理到第二个虚拟主机,但没有成功 bugzilla conf文件使用cgi,审查委员会使用wsgi 有没有一种简单的方法来实现上述目标 提前感谢。您
提前感谢。您可以更改您的地址,以使它们保持一致,然后使用ServerName指令使用正确的VirtualHost
您可以使用指令来实现这一点 Alias指令允许将文档存储在本地文件系统中,而不是DocumentRoot下。带有(%-解码)的URL 以URL路径开头的路径将映射到以URL路径开头的本地文件 具有目录路径。URL路径区分大小写,即使在 不区分大小写的文件系统 别名“/image”“/ftp/pub/image”请求 将导致服务器返回 文件/ftp/pub/image/foo.gif。仅匹配完整的路径段, 因此,上面的别名与请求不匹配 . 对于更复杂的匹配,请使用 正则表达式,请参见AliasMatch指令 您的虚拟主机文件如下所示
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName ip-address:port/bugzilla
Alias "/bugz" "var/www/html/bugz"
Alias "/wow" "var/www/html/wow"
DocumentRoot /path/to/yourwebsite
</VirtualHost>
服务器管理员webmaster@localhost
ServerName ip地址:端口/bugzilla
别名“/bugz”var/www/html/bugz
别名“/wow”var/www/html/wow
DocumentRoot/path/to/yourwebsite
实现在同一IP上拥有多个虚拟主机的目标
GIF它的工作原理
注意
- 这适用于Apache2.4.18
- GIF显示具有两个不同虚拟主机条目的
配置。对此答案的一条评论说,不同的虚拟主机不起作用。但只要服务器名称不同,它们就可以VirtualHost