apache转发代理配置

配置域名:web

1.在windows系统文件中配置hosts,apache

添加127.0.0.1 www.nhn-test.comwindows

2.在Apache配置文件中去掉浏览器

conf/extra/httpd-vhosts.conf 前面的注解,便可引用httpd-vhosts.conf文件tomcat

3.在httpd-vhosts.conf中加入app

<VirtualHost *:80>
DocumentRoot "E:\myWorkplays\hangame-template-master_hangame-template-master\src\main\webapp\WEB-INF\jsp"
ServerName www.nhn-test.com
</VirtualHost>webapp

便可经过http://www.nhn-test.com:8080/hangame-template/page?name=t 进行访问jsp

出现问题:网站

Invalid command 'Order', perhaps misspelled or defined by a module not included in the server config .net

开始配置出现上面的报错信息

解决办法:

把#LoadModule access_compat_module modules/mod_access_compat.so

前面改为:

LoadModule access_compat_module modules/mod_access_compat.so

4.以上配置访问须要加端口,因此须要配置反向代理,才能够实现域名不带端口访问

httpd写反向代理,把制定域名的80端口映射到8080便可

配置代理:

1.将httpd.conf中

mod_proxy.so

mod_proxy_http.so前面的注释去掉

开启代理使apache具有将URL转发给Tomcat的能力。

2.在httpd-vhosts.conf中添加

ProxyPass /    http://www.nhn-test.com:8080/
ProxyPassReverse / http://www.nhn-test.com:8080/

便可不加端口号对资源进行访问。

纠结了一天的坑以及学到的总结:

经常使用的两种方式:apache转发代理或者使用mod_jk

我用的就是第一种方法,Apache HTTP service 和 Tomcat server 整合,通常是但愿对于用户只公布Apache HTTP server 的网址,而Tomcat的网址则不公布,达到对网站的保护,访问Tomcat的HTTP请求,经过Apache转发给Tomcat,Tomcat处理结束后,将回应的结果返回到Apache,而后Apache HTTP 再回应发回给用户浏览器。

方法:使用mod_jk,不少网站上介绍到apache和tomcat整合的时候,都是接受so的使用,这是一种比较老的方法,并且如今tomcat的官网上已经没有了对y应so的下载,因此我这边没有找到其资源,配置文件都须要改动,因此我不推荐使用。

还有其余几种方法https://blog.csdn.net/huhuhuemail/article/details/78183579

我用的是mod_proxy方法,是Apache自带功能,而且配置比较简单。

相关文章
相关标签/搜索