我为詹金斯设置了一个新的虚拟主机:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName ci.company.com
ServerAlias ci
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPreserveHost on
ProxyPass / http://localhost:8080/
</VirtualHost>
...它使用代理,当我重新启动 apache 时,我收到如下错误:
Invalid command 'ProxyRequests', perhaps misspelled or defined by a module not included in the server configuration
您应该启用代理。运行命令:
sudo a2enmod proxy
sudo /etc/init.d/apache2 restart
sudo a2enmod proxy
sudo a2enmod proxy_http
systemctl restart apache2
如果您不启用 proxy_http,您会在该站点的 apache 错误日志文件中收到此错误:
AH01144:没有协议处理程序对 URL /(方案“http”)有效。 如果您使用的是 DSO 版本的 mod_proxy,请确保代理 使用 LoadModule 将子模块包含在配置中。
使用旧虚拟主机进行新安装后,通常可以通过以下消息发现此错误:
命令“ProxyPreserveHost”无效,可能拼写错误或由服务器配置中未包含的模块定义
代理模块必须被禁用。 使用以下命令启用它
a2enmod proxy
如果您没有root权限,可以使用
sudo a2enmod proxy
之后使用
重新启动apache服务器service apache2 reload
如果您不在 Ubuntu 中工作,您可以检查以确保默认配置文件中启用了 mod_proxy_html。
加载模块 proxy_html_module 模块/mod_proxy_html.so
然后重新启动apache。