一、先从J2EE工程的通用架构说起
这是一个通用的Web即B/S工程的架构,它由:
ü Web Server
ü App Server
ü DB Server
三大部门构成,个中:
² Web Server
置于企业防火墙外,这个防火墙,各人可以认为是一个CISCO路由器,然后在CISCO路由器上开放了两个端口为:80和443。
WebServer专门用于理会HTML、JS(JavaScript)、CSS、JPG/GIF等图片名目文件、TXT、VBSCRIPT、PHP等一切一切“静态”网页内容。
² App Server
置于企业防火墙内,它和Web Server之间的毗连必需且必然为内部IP毗连。
外部IP:即Internet IP地点,我们的web处事器一般会有一个内部IP一个外部IP,因此在这里,我们的App Server没有任何外部IP,只有内部IP,所以我在这边说App Server与Web Server只能以内部IP形式毗连。
打例如说我们用的是tomcat,它的端口为8080,那么这个ip地点上的8080端口只能由任何内部ip才气会见,外部的internet是会见不了的,这样做就是为了安详。
App Server用于理会我们的任何需要Java编译器才气理会的“动态”网页,其实App Server自己也能理会任何静态网页的。
那么我们这样来想一下:
我们让认真专门理会静态网页的Web Server来理会html等内容,而让App Server专门用于理会任何需要Java编译器才气理会的对象,让它们“两人”各司其职。这样作的长处:
1) 为App Server“减压”,同时也提高了performance
2) 不消再把8080这个端口袒露在internet上了,也很安详,必经我们的app server上但是有我们的代码的,就算是编译过的代码也容易被“反编译”,这是很不安详的。
3) 为未来的进一步的“集群扩展”打好了基本
² DB Server
打例如说我们用的是Oracle,它需要通过1521与App Server举办毗连是不是?那么这个1521我们称为数据库毗连端口,假如把它袒露在Internet上,是不是在危险了点?就算我们的暗码很巨大,但对付高超的黑客来说,要攻破你的口令也只是时间上的问题而己。
因此我们把我们的DB Server也和App Server一样,置于内网的防火墙。任何的DB毗连与打点只能通过内网即在公司企业内部来会见,就是这个原理。
二、动手来架构
2.1 Oracle数据加的安装与设置
DB(Oracle)我已经为各人筹备好了,毗连信息为:
IP: | 10.225.10x.xx |
Port: | 1521 |
Username/Password: | xxx/xxx |
Sid: | Jcoedb1 |
url: | jdbc:oracle:thin:@10.225.10x.xx:1521:xxx |
所以,按照上述的架构,我们可以把如下这样的一份清单丢给NSS可能是相关的网络打点部分,让他们给我们开通相应的端口:
Web Server | 对外IP: xxx.xxx.xxx.xxx 对内IP:10.225.xxx.xxx 向internet开通80与443端口 |
App Server | 对内IP: 10.225.xxx.xxx
只对10.225.段的ip开放8080,8009等端口, |
Db Server | 对内IP: 10.225.xxx.xxx
只对10.225.段的ip开放1521端口 |
2.2 App Server的安装
直接解压tomcat至你的当地如:d:\tomcat,我这边用的目次名叫tomcat2,各人随意,最好名字可以或许越简朴越好d:\tomcat可能c:\tomcat就行,不要放得太“深”。
2.3 Web Server的安装
我们在这边将安装Apache For Win 2.2.x,它将占用你呆板的80和443端口。因此假如你呆板上有任何措施占用你的80和443端口,必需将它封锁掉,好比说:
我们装有微软的IIS,这自己也是一个WebServer,那么请你将它封锁:
ControlPanel->Administrative Tools->Service,找到IISAdmin和,将它全部封锁并将启动方法设为:manual以便于不消每次重启后再要去手动封锁一下。
然后用netstat –ano找到任何还在占用80端口的措施,将它封锁掉。
2.4 开始安装Apache Http Server
我们将安装这个版本的apache http server作为我们此后一直利用的Web Server