千家信息网

搭建全能服务器(tomcat,IIS,PHP使用80端口共存)

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,搭建全能服务器这是一个很常见的场景,要在同一台服务器上部署多种语言开发的程序,并且每种语言处于各种原因要放在不同web容器中去运行,而且都要通过80端向外提供服务,例如:在同一台服务器上部署.net程
千家信息网最后更新 2024年11月11日搭建全能服务器(tomcat,IIS,PHP使用80端口共存)

搭建全能服务器

这是一个很常见的场景,要在同一台服务器上部署多种语言开发的程序,并且每种语言处于各种原因要放在不同web容器中去运行,而且都要通过80端向外提供服务,例如:在同一台服务器上部署.net程序,java程序,php程序,都通过80端口向外提供web服务。处于这种场景就只能搭建全能服务器了。

结构图:

大致思路:

Apache 端口设置为:80

IIS 所有服务端口都设置为:8081

Tomcat 所有服务端口都设置为:8080

使用apache反向代理功能代理访问本地的IIS(8081)和Tomcat(8080)

  • 安装apache。官网下载httpd-2.4.23-x64-vc14-r3,解压cmd进入bin目录,执行命令:

httpd.exe -k install -n apache

安装为Windows服务,名称为:apache

  • 配置apache服务。例如apache安装在了D:\application_software\Apache那么:

<1> 找到D:\application_software\Apache\conf\httpd.conf文件,用记事本打开,找到:Define SRVROOT 这一项,将其右方的值改为 绝对路径(硬盘路径)

<2> 保证以下模块加载

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_http_module modules/mod_proxy_http.so

<3>继续找,找到:Listene 80

若你的80端口被占用(可在cmd下用命令netstat -a查看),则将80端口改为别的,请在请在frogchou个人网站中搜索《80端口那点事》查找解决方案。

<4>修改Apache24\conf\extra 下的httpd-vhosts 文件

例如:

ServerAdmin frogchou@126.com

ServerName iis.frogchou.com

DefaultLanguage zh-CN

AddDefaultCharset GB2312

ProxyPreserveHost On

ProxyRequests Off

ProxyPass / http://localhost:8081/

ProxyPa***everse / http://localhost:8081/

ErrorLog logs/iis.frogchou.com_error_log

ServerAdmin frogchou@126.com

ServerName tomcat.frogchou.com

DefaultLanguage zh-CN

AddDefaultCharset GB2312

ProxyPreserveHost On

ProxyRequests Off

ProxyPass / http://localhost:8080/

ProxyPa***everse / http://localhost:8080/

ErrorLog logs/tomcat.frogchou.com_error_log

需要注意的是配置ServerName 、ProxyPass 和ProxyPa***everse

ServerName:用户通过那个域名访问服务器的。

ProxyPass:代理的路径,可以是本地,也可是其他服务器地址

ProxyPa***everse:后端服务器的地址,同上,可以防止后端服务器HTTP重定向造成的绕过反向代理的问题

2、IIS :修改IIS的所有应用的端口 为 8081

这里要注意防火墙的映射,如果防火墙没有将8081端口映射出去,在IIS中绑定域名时就不要选择任何IP地址了,选择* 即可,否则就要将相应IP路径下的防火墙做8081端口映射。

3、Tomcat :

修改Tomcat的所有应用的端口 为 8080

在Tomcat中配置虚拟目录并绑定域名 在tomcat\conf 中找到 server.xml

添加:

很赞哦!

0