关于 Apache 虚拟主机的配置,请参考:Apache 之一 - 虚拟主机

Apache 主配置文件

1.编辑 apache 主配置文件 //usr/local/apache2/conf/httpd.conf, 启用以下 2 个代理模块:

1
2
3
sed -i 's@#LoadModule proxy_module modules/mod_proxy.so@LoadModule proxy_module modules/mod_proxy.so@' /usr/local/apache2/conf/httpd.conf

sed -i 's@#LoadModule proxy_http_module modules/mod_proxy_http.so@LoadModule proxy_http_module modules/mod_proxy_http.so@' /usr/local/apache2/conf/httpd.conf

Apache 虚拟主机文件

1.编辑 apache 虚拟主机配置文件 /usr/local/apache2/conf/extra/httpd-vhosts.conf ,在最前面新建一个反向代理的虚拟主机配置,内容为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#反向代理
#定义了一个监听端口为80的虚拟主机。 * 表示监听所有的IP地址,即对来自所有IP地址的请求都生效。
<VirtualHost *:80>

# 设置了虚拟主机的域名为 apache.xxxxu.com ,表示通过该域名可以访问该虚拟主机配置的网站。
ServerName apache.xxxxu.com
AddDefaultCharset utf-8
# 指定了错误日志文件的路径为 logs/site01_error_log ,用于记录该虚拟主机的错误日志信息。
ErrorLog "logs/site01_error_log"
# 指定了访问日志文件的路径为 logs/site01_access_log ,使用 common 格式记录访问日志信息。
CustomLog "logs/site01_access_log" common

# 反向代理 tomcat
ProxyPassMatch ^/.*$ http://127.0.0.1:8080
ProxyPassReverse ^/.*$ http://127.0.0.1:8080
</VirtualHost>

2.执行命令 /usr/local/apache2/bin/apachectl -t 检查 apache 配置是否有误并重启下 apache 服务:

1
/usr/local/apache2/bin/apachectl -t && /usr/local/apache2/bin/apachectl restart

3.打开浏览器,输入虚拟主机域名,看是否能正常访问到反向代理的 tomcat :