web服务器tomcat
一、安装部署Tomcat服务器
[root@web1 ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-headless ==>>安装jdk
[root@web1 ~]# java -version ==>>查看JAVA版本
[root@web1 ~]# tar -xf apache-tomcat-8.5.56.tar.gz
[root@web1 ~]# mv apache-tomcat-8.5.56 /usr/local/tomcat
[root@web1 ~]# ls /usr/local/tomcat
bin ==>>主程序目录
conf ==>>配置文件目录
lib ==>>库文件目录
logs ==>>日志目录
temp ==>>临时目录
webapps ==>>页面目录
work ==>>自动编译目录jsp代码转换servlet
[root@web1 ~]# /usr/local/tomcat/bin/startup.sh
[root@web1 ~]# ss -utnlp|grep java
tcp LISTEN 0 1 ::ffff:127.0.0.1:8005 :::* users:(("java",pid=2118,fd=64))
tcp LISTEN 0 100 :::8080 :::* users:(("java",pid=2118,fd=52))
如果8005端口启动慢
方法一
[root@web1 ~]# mv /dev/random /dev/random.bak
[root@web1 ~]# ln -s /dev/urandom /dev/random
方法二
[root@web1 ~]# yum -y install rng-tools
[root@web1 ~]# systemctl start rngd
[root@web1 ~]# systemctl enable rngd
[root@web1 ~]# vim /usr/local/tomcat/webapps/ROOT/test.jsp ==>>添加测试文件
<html>
<body>
<center>
Now time is;<%=new java.util.Date()%>
</center>
</body>
</html>
二、添加虚拟主机
[root@web1 logs]# vim /usr/local/tomcat/conf/server.xml ==>>在</Host> </Engine>中间添加两个虚拟主机
</Host>
<Host name="www.a.com" appBase="a"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="base"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="www.a.com_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="www.b.com" appBase="b"
unpackWARs="true" autoDeploy="true">
<Context path="/test" docBase="/var/www/html/"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="www.b.com_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
</Engine>
------------------------------------------------------------------------------------------------------------
<Context path="" docBase="base"/> 修改www.a.com网站的首页目录为tomcat下的base而不是tomcat下的ROOT
<Context path="/test" docBase="/var/www/html/"/>当用户访问http://www.b.com/test时打开/var/www/html/目录下的页面
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="www.b.com_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
这段文字是日志记录,prefix="www.b.com_access_log" suffix=".txt"修改此处的prefix即可
----------------------------------------------------------------------------------------------------------------
[root@web1 ~]# mkdir -p /usr/local/tomcat/{a,b}/ROOT
[root@web1 ~]# echo aaa >/usr/local/tomcat/a/ROOT/index.html
[root@web1 ~]# echo bbb >/usr/local/tomcat/b/ROOT/index.html
三、配置ssl加密的tomcat
[root@web1 ~]# keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore
-genkeypair 生成密钥对
-alias tomcat 密钥别名tomcat
-keyalg RSA 定义密钥算法为RSA
-keystore 定义密钥文件存储位置
[root@web1 ~]# vim /usr/local/tomcat/conf/server.xml
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="/usr/local/tomcat/keystore" keystorePass="123456"
type="RSA" />
</SSLHostConfig>
</Connector>
四、varnish服务器
[root@proxy ~]# yum -y install gcc readline-devel ncurses-devel pcre-devel python-docutils ==>>安装依赖包
[root@proxy ~]# useradd -s /sbin/nologin varnish ==>>创建用户
[root@proxy ~]# tar -xf varnish-2.1.3.tar.gz
[root@proxy ~]# cd varnish-2.1.3/
[root@proxy varnish-2.1.3]# ./configure
[root@proxy varnish-2.1.3]# make && make install
[root@proxy varnish-2.1.3]# cp etc/default.vcl /usr/local/etc/default.vcl
[root@proxy ~]# vim /usr/local/etc/default.vcl
backend default {
.host = "192.168.2.100";
.port = "80";
}
[root@proxy ~]# varnishd -f /usr/local/etc/default.vcl
---------------------------------------------------------------------------------
varnish命令的其他选项说明如下:
varnish -s malloc,128M 定义varnish使用内存作为缓存,空间
为128M
varnish -s file,/var/lib/varnish_storage.bin,1G 定义varnish使用文件作为缓存
---------------------------------------------------------------------------------------
[root@proxy ~]# varnishlog ==>>varnish日志
[root@proxy ~]# varnishncsa ==>>访问日志