有没有办法在单个 apache 实例上的不同端口上托管多个基于名称的虚拟主机?
例如默认实例监听端口 80
Listen 80
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /usr/local/apache/htdocs/example
ServerName example.com
ServerAlias www.example.com
Redirect permanent / http://www.example.com/
ErrorLog logs/error_log
CustomLog logs/access_log combined
</VirtualHost>
现在我想在同一个 apache 实例上
<VirtualHost *:8088>
ServerAdmin [email protected]
DocumentRoot /usr/local/apache/htdocs/example1
ServerName example1.com
ServerAlias www.example1.com
Redirect permanent / http://www.example1.com/
ErrorLog logs/error_log
CustomLog logs/access_log combined
</VirtualHost>
答案1
您还需要告诉 Apache 本身在 /etc/apache2/ports.conf 中监听额外的端口(如果您使用的是基于 RedHat 的发行版,它将位于 /etc/httpd/ 中)
... 名称虚拟主机 *:81 名称虚拟主机 *:85 听 81 听 85 ...
答案2
NameVirtualHost
是的。在指令和指令中都指定端口<VirtualHost>
。