Tomcat基礎(chǔ)
- tomcat服務(wù)器是一個免費的開放源代碼的web應(yīng)用服務(wù)器,屬于輕量級應(yīng)用服務(wù)器,是開發(fā)和調(diào)試jsp程序的首選。
tomcat是apache服務(wù)器的擴展,是作為一個與apache獨立的進程單獨運行的
- java web 環(huán)境:Nginx+JDK+Tomcat+MySQL
1)所有服務(wù)器部署在同一臺主機上,也可以分開部署
2)Nginx默認開啟的是80端口,用來接受用戶的web請求
3)tomcat默認開啟的是8080端口,用來接受nginx轉(zhuǎn)發(fā)過來的web請求
- 環(huán)境部署流程(服務(wù)器IP:192.168.88.100)
1)安裝JDK(java解析器)
[root@tomcat ~]# tar xf jdk-7u25-linux-x64.tar.gz
[root@tomcat ~]# mv jdk1.7.0_25/* /usr/local/jdk1.7
vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.7
export JAVA_BIN=/usr/local/jdk1.7/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
[root@tomcat ~]# source /etc/profile
[root@tomcat ~]# java -version
2)安裝tomcat
[root@tomcat ~]# tar xf apache-tomcat-8.5.51.tar.gz
[root@tomcat ~]# cp -a apache-tomcat-8.5.51 /usr/local/tomcat
vim /etc/profile
export TOMCAT_HOME=/usr/local/tomcat
export PATH=$PATH:$TOMCAT_HOME/bin
[root@tomcat ~]# source /etc/profile
[root@tomcat ~]# chmod +x /usr/local/tomcat/bin/*
[root@tomcat ~]# /usr/local/tomcat/bin/catalina.sh start
[root@tomcat ~]# netstat -antp | grep 8080
[root@tomcat ~]# systemctl stop firewalld.service
[root@tomcat ~]# systemctl disable firewalld.service
3)CentOS6編譯安裝MySQL
[root@localhost ~]# yum -y install ncurses-devel gcc*
[root@localhost ~]# useradd -r -s /sbin/nologin mysql
[root@localhost ~]# ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=gbk,gb2312
[root@localhost ~]# make
[root@localhost ~]# make install
生成配置文件
[root@localhost ~]# cp -a support-files/my-medium.cnf /etc/my.cnf
[root@localhost ~]# ln -s /usr/local/mysql/bin/* /usr/local/bin/
[root@localhost ~]# ln -s /usr/local/mysql/sbin/* /usr/local/sbin/
初始化數(shù)據(jù)庫,生成授權(quán)表
[root@localhost ~]# cd /usr/local/mysql/
[root@localhost mysql]# ./bin/mysql_install_db --user=mysql
生成啟動管理腳本,啟動mysql并設(shè)置開機自啟動
[root@localhost mysql]# cd ~/mysql-5.1.55/support-files
[root@localhost support-files]# cp -a mysql.server /etc/init.d/mysqld
[root@localhost support-files]# chmod +x /etc/init.d/mysqld
[root@localhost support-files]# chkconfig --add mysqld
[root@localhost support-files]# chkconfig mysqld on
[root@localhost support-files]# service mysqld start
為數(shù)據(jù)庫的管理用戶root設(shè)置登錄密碼
[root@localhost support-files]# mysqladmin -uroot password 123456
[root@localhost ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.1.55-log Source distribution
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
4)安裝Nginx
[root@localhost ~]# wget http://nginx.org/download/nginx-1.2.6.tar.gz
[root@localhost ~]# tar xf nginx-1.2.6.tar.gz
[root@localhost ~]# yum -y install pcre-devel zlib-devel
[root@localhost ~]# useradd -r -s /sbin/nologin nginx
[root@localhost ~]# cd nginx-1.2.6
[root@localhost nginx-1.2.6]# ./configure --user=nginx --group=nginx
[root@localhost nginx-1.2.6]# make && make install
修改nginx配置文件:添加反向代理(由于都是在一臺服務(wù)器上部署,所以反向代理自己,讓nginx的80代理到tomcat上的8080)
[root@localhost nginx-1.2.6]# vim /usr/local/nginx/conf/nginx.conf
upstream tomcat {
server 192.168.88.100:8080;
}
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
proxy_pass http://tomcat;
proxy_set_header Host $host;
}
重起nginx服務(wù)
[root@localhost nginx-1.2.6]# pkill -HUP nginx
部署java的war包打包的網(wǎng)站
1.在/usr/local/tomcat/conf/server.xml配置文件中的 server區(qū)域中添加如下內(nèi)容:
[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml
<Context path="" docBase="atguigu.war" debug="0" privileged="true"/>
2.將war包拷貝到webapps目錄中
[root@localhost ~]# cp -a atguigu.war /usr/local/tomcat/webapps/
3.刪除webapps目錄下的原ROOT目錄
4.重啟tomcat服務(wù)
[root@localhost ~]# /usr/local/tomcat/bin/catalina.sh stop
[root@localhost ~]# /usr/local/tomcat/bin/catalina.sh start
5.測試:使用客戶端瀏覽器訪問Nginx服務(wù)的端口
4. 創(chuàng)建多個tomcat實例
[root@localhost ~]# /usr/local/tomcat/bin/catalina.sh stop
[root@localhost ~]# cp -a /usr/local/tomcat/ /usr/local/tomcat-2
[root@localhost ~]# rm -rf /usr/local/tomcat-2/logs/*
[root@localhost ~]# vim /usr/local/tomcat-2/conf/server.xml
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
#把8005改成8009
<Connector port="8090" protocol="HTTP/1.1"
#把8080改成8090
[root@localhost ~]# vim /usr/local/tomcat-2/bin/startup.sh
export CATALINA_HOME=/usr/local/tomcat-2
#在文件的第一行加環(huán)境變量指定tomcat-2的位置
[root@localhost ~]# vim /usr/local/tomcat-2/bin/shutdown.sh
export CATALINA_HOME=/usr/local/tomcat-2
#在文件的第一行加環(huán)境變量指定tomcat-2的位置
[root@localhost ~]# /usr/local/tomcat/bin/catalina.sh start
[root@localhost ~]# /usr/local/tomcat-2/bin/catalina.sh start
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
upstream tomcat {
server 192.168.88.100:8080;
server 192.168.88.100:8090;
}
[root@localhost ~]# pkill -HUP nginx ```
測試:由于使用客戶端瀏覽器訪問的頁面內(nèi)容一樣,看不出效果
分別訪問Nginx服務(wù)的端口8080和8090