1.下载JDK与Tomcat.
jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
tomcat下载地址:
http://tomcat.apache.org/download-70.cgi
选择对应jdk版本下载。(可在Windows下下载完成后,用XShell下用 lrzsz 上传到linux上)
2. 登录Linux,切换到root用户
su root 获取root用户权限,
3. 在usr目录下建立java安装目录
cd /usr
mkdir java
mkdir java
4.将jdk-8u121-linux-x64.tar.gz拷贝到java目录下
cp /usr/local/src/jdk-8u121-linux-x64.tar.gz /usr/java/
5.解压jdk到当前目录
tar -zxvf jdk-8u121-linux-x64.tar.gz
6.安装完毕为他建立一个链接以节省目录长度
(我没用这一步)
ln -s /usr/java/jdk1.8.0_121/ /usr/jdk
ln -s /usr/java/jdk1.8.0_121/ /usr/jdk
7.编辑配置文件,配置环境变量
vim /etc/profile
添加如下内容:JAVA_HOME根据实际目录来
JAVA_HOME=/usr/java/jdk1.8.0_121
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
添加如下内容:JAVA_HOME根据实际目录来
JAVA_HOME=/usr/java/jdk1.8.0_121
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
8.重启机器或执行命令
source /etc/profile 重载配置文件使其生效
sudo shutdown -r now 重启使其生效
9.查看安装情况
java -version
可能出现的错误信息:
bash: ./java: cannot execute binary file
出现这个错误的原因可能是在32位的操作系统上安装了64位的jdk,
查看jdk版本和Linux版本位数是否一致。
查看你安装的Ubuntu是32位还是64位系统:
sudo uname --m
i686 //表示是32位
x86_64 // 表示是64位
bash: ./java: cannot execute binary file
出现这个错误的原因可能是在32位的操作系统上安装了64位的jdk,
查看jdk版本和Linux版本位数是否一致。
查看你安装的Ubuntu是32位还是64位系统:
sudo uname --m
i686 //表示是32位
x86_64 // 表示是64位
10.Tomcat的安装
解压缩# mkdir /usr/local/tomcat
# cd /usr/local/tomcat
# ttar -zxvf /usr/local/src/apache-tomcat-8.5.11.tar.gz -C /usr/local/tomcat/ls
生成链接以便版本升级
# ln -s apache-tomcat-8.5.11 server
11.启动Tomcat
# cd /usr/local/tomcat/server/bin# ./startup.sh
Using CATALINA_BASE: /usr/local/tomcat/server
Using CATALINA_HOME: /usr/local/tomcat/server
Using CATALINA_TEMDIR: /usr/local/tomcat/server/temp
Using JRE_HOME: /usr/java/default
Using CLASS_PATH: /usr/local/tomcat/server/bin/bootstrap.jar:/usr/local/tomcat/server/bin/tomcat-juli.jar
Tomcat started.
测试Tomcat:
打开防火墙,使外部能访问
# /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
# service iptables save
# service iptables restart
或直接修改文件/etc/sysconfig/iptables.
# vi /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
# service iptables restart
在浏览器输入: http://192.168.16.133:8080
如在本机可以输入: http://localhost:8080
出现tomcat的页面表示安装成功.
停止Tomcat
# ./shutdown.sh
# service iptables save
# service iptables restart
或直接修改文件/etc/sysconfig/iptables.
# vi /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
# service iptables restart
在浏览器输入: http://192.168.16.133:8080
如在本机可以输入: http://localhost:8080
出现tomcat的页面表示安装成功.
停止Tomcat
# ./shutdown.sh
配置web管理帐号
修改文件conf/tomcat-users.xml,在<tomcat-users>元素中添加帐号密码,需要指定角色.# vi /usr/local/tomcat/server/conf/tomcat-users.xml
<tomcat-users>
<user name="admin" password="admin" roles="admin-gui,manager-gui" />
</tomcat-users>
配置web访问端口
可以修改conf目录下的文件server.xml,修改Connector元素(Tomcat的默认端口是8080),需要重新启动Tomcat服务生效.# vi /usr/local/tomcat/server/conf/server.xml
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
配置https安全连接(ssl加密连接)
https连接需要用到数字证书与数字签名(MD5算法)网站https连接首先需要申请数字证书,配置加密连接器,浏览器安装证书.
·使用java的工具keytool产生数字证书
# keytool -genkey -alias tomcat -keyalg RSA
生成文件.keystore
注意:CN为主机名称,本机可用localhost
·将文件.keystore放到Tomcat服务器的conf目录下
# cp .keystore /usr/local/tomcat/server/conf/
·修改conf/server.xml文件,修改加密连接器,添加keystoreFile与keystorePass
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="conf/.keystore" keystorePass="123456"/>
·重新启动tomcat.浏览器输入https://localhost:8443访问,并安装证书.
修改tomcat的环境变量
"tomcat/bin/catalina.sh" 、 "tomcat/bin/setclasspath.sh" 、 "tomcat/conf/server.xml"在这里可以修改tomcat 指定jdk启动
例:
假设此Tomcat需指定的JDK版本的目录为:E:\Java\jdk1.7
1、 修改Tomcat的bin文件夹下面的catalina.bat文件,如下:(一处地方修改)
修改前:
echo Using JAVA_HOME: "%JAVA_HOME%"
修改后:
echo Using JAVA_HOME: "E:\Java\jdk1.7"
2、 修改bin文件夹下面的setclasspath.bat文件,如下:(三处地方修改)
修改前:
set "JRE_HOME=%JAVA_HOME%" (ps:这个有两处地方,修改一处就行了,不行就两处都修改)
set _RUNJAVA="%JRE_HOME%\bin\java.exe"
set _RUNJDB="%JAVA_HOME%\bin\jdb.exe"
修改后:
set "JRE_HOME=E:\Java\jdk1.7"
set _RUNJAVA="E:\Java\jdk1.7\bin\java.exe"
set _RUNJDB="E:\Java\jdk1.7\bin\jdb.exe"
1、 修改Tomcat的bin文件夹下面的catalina.bat文件,如下:(一处地方修改)
修改前:
echo Using JAVA_HOME: "%JAVA_HOME%"
修改后:
echo Using JAVA_HOME: "E:\Java\jdk1.7"
2、 修改bin文件夹下面的setclasspath.bat文件,如下:(三处地方修改)
修改前:
set "JRE_HOME=%JAVA_HOME%" (ps:这个有两处地方,修改一处就行了,不行就两处都修改)
set _RUNJAVA="%JRE_HOME%\bin\java.exe"
set _RUNJDB="%JAVA_HOME%\bin\jdb.exe"
修改后:
set "JRE_HOME=E:\Java\jdk1.7"
set _RUNJAVA="E:\Java\jdk1.7\bin\java.exe"
set _RUNJDB="E:\Java\jdk1.7\bin\jdb.exe"
启动tomcat
·conf //存放Tomcat服务器的各种配置文件,最主要是server.xml
·lib //存放Tomcat服务器支撑jar包
·logs //存放日志文件
·temp //存放临时文件
·webapps //web应用所在目录,外界访问web资源的存放目录
·work //Tomcat的工作目录
|--- html, jsp, css, js文件等 -- 这些文件一般在web应用根目录下,根目录下的文件外界可以直接访问.
|--- WEB-INF 目录 -- java类、jar包、web配置文件存在这个目录下,外界无法直接访问,由web服务器负责调用.
|--- classes 目录 -- java类
|--- lib 目录 -- java类运行所需要的jar包
|--- web.xml 文件 -- web应用的配置文件
<host name="hostname.domainname" appBase="/webapps">
<Context path="/webapp" docBase="/webapps/webapp"/>
</host>
例:
<host name="www.163.com" appBase="/webapps">
</host>
<host name="mail.163.com" appBase="/mailapps">
</host>
须设置DNS解析(host文件或DNS系统).
·conf/server.xml //在<host>元素下添加<Context path="/webdir" docBase="/webappdir"/>,需要重新启动Tomcat服务生效,不建议使用.
·conf/context.xml //添加<Context>元素所有web应用有效.
·conf/[enginename]/[hostname]/context.xml.default //[enginename]一般是Catalina,主机[hostname]的所有web应用有效.
·conf/[enginename]/[hostname]/ //在目录下任意建一个文件(扩展名xml),文件名即为虚拟目录名.多级目录使用#分割. <Context docBase="/webappdir"/>
//缺省值web应用目录可以定义为ROOT.xml,添加<Context docBase="/webappdir"/>,需重新启动Tomcat服务器.
·META-INF/context.xml //
可以将web应用放在webapps目录下让Tomcat服务器自动映射,适用开发环境,实际运用环境中不用自动映射。
如没有修改配置文件,web应用目录为ROOT时则为默认web应用。
方式一、tomcat的自动映射,将news应用直接放在 tomcat主目录/webapps/,便可直接访问:http://localhost:8080/news/index.html
方式二、很多情况下,在实际的部署中,有可能web应用与tomcat服务器不在同一盘符下,即web应用没办法直接放在webapps目录下,这时就需要建立虚拟目录映射,以下介绍几种方法。
1、在server.xml中配置web应用的目录映射。
配置tomcat主目录/conf/server.xml
对应的<Host>中加入<Context path="/java4fun" docBase="c:\news" /> path为web应用的访问路径,docBase为web应用的实际路径。配置后重启tomcat便可访问:http://localhost:8080/java4fun/index.html。这种方法并不是官方所推荐的方法,因为配置server.xml后需要重启tomcat才能加载web应用。
2、在tomcat目录下的conf\Catalina\localhost目录中,创建一个用访问路径来命名的xml文件,比如hellojava.xml
在java.xml文件中添加<Context docBase="c:\news"/>,此方法不用指定path,因为path的值就是xml的文件名,配置后不用重启便可访问:http://localhost:8080/hellojava/index.html。
3、多级目录映射,方法同2,只需将xml的文件命名为java#myweb.xml,便可访问:http://localhost:8080/java/myweb/1.html
4、 缺省映射,将xml文件名命名为ROOT.xml,则该web应用将被作为默认的web应用来访问,所以可以直接访问:http://localhost:8080/index.html
修改web应用的配置文件: [webapp]/WEB-INF/web.xml
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
Tomcat的目录结构
·bin //存放Tomcat的命令脚本文件·conf //存放Tomcat服务器的各种配置文件,最主要是server.xml
·lib //存放Tomcat服务器支撑jar包
·logs //存放日志文件
·temp //存放临时文件
·webapps //web应用所在目录,外界访问web资源的存放目录
·work //Tomcat的工作目录
web应用的目录结构
webapp -- web应用所在目录|--- html, jsp, css, js文件等 -- 这些文件一般在web应用根目录下,根目录下的文件外界可以直接访问.
|--- WEB-INF 目录 -- java类、jar包、web配置文件存在这个目录下,外界无法直接访问,由web服务器负责调用.
|--- classes 目录 -- java类
|--- lib 目录 -- java类运行所需要的jar包
|--- web.xml 文件 -- web应用的配置文件
虚拟主机的配置
指定虚拟主机名,修改conf/server.xml,添加<host>元素.<host name="hostname.domainname" appBase="/webapps">
<Context path="/webapp" docBase="/webapps/webapp"/>
</host>
例:
<host name="www.163.com" appBase="/webapps">
</host>
<host name="mail.163.com" appBase="/mailapps">
</host>
须设置DNS解析(host文件或DNS系统).
web应用和虚拟目录的映射1.
可以修改xml配置文件的<Context>元素来设置web应用和虚拟目录的映射.·conf/server.xml //在<host>元素下添加<Context path="/webdir" docBase="/webappdir"/>,需要重新启动Tomcat服务生效,不建议使用.
·conf/context.xml //添加<Context>元素所有web应用有效.
·conf/[enginename]/[hostname]/context.xml.default //[enginename]一般是Catalina,主机[hostname]的所有web应用有效.
·conf/[enginename]/[hostname]/ //在目录下任意建一个文件(扩展名xml),文件名即为虚拟目录名.多级目录使用#分割. <Context docBase="/webappdir"/>
//缺省值web应用目录可以定义为ROOT.xml,添加<Context docBase="/webappdir"/>,需重新启动Tomcat服务器.
·META-INF/context.xml //
可以将web应用放在webapps目录下让Tomcat服务器自动映射,适用开发环境,实际运用环境中不用自动映射。
如没有修改配置文件,web应用目录为ROOT时则为默认web应用。
tomcat的虚拟目录的映射2:
虚拟目录映射,就是将web应用交给web服务器管理,然后就可以通过web服务器访问到这个资源。假设现在有一个专门用于发布新闻的web应用news,其位于c盘下,那么,如果配置tomcat,使得当我们访问tomcat服务器时会访问到news里的资源。方式一、tomcat的自动映射,将news应用直接放在 tomcat主目录/webapps/,便可直接访问:http://localhost:8080/news/index.html
方式二、很多情况下,在实际的部署中,有可能web应用与tomcat服务器不在同一盘符下,即web应用没办法直接放在webapps目录下,这时就需要建立虚拟目录映射,以下介绍几种方法。
1、在server.xml中配置web应用的目录映射。
配置tomcat主目录/conf/server.xml
对应的<Host>中加入<Context path="/java4fun" docBase="c:\news" /> path为web应用的访问路径,docBase为web应用的实际路径。配置后重启tomcat便可访问:http://localhost:8080/java4fun/index.html。这种方法并不是官方所推荐的方法,因为配置server.xml后需要重启tomcat才能加载web应用。
2、在tomcat目录下的conf\Catalina\localhost目录中,创建一个用访问路径来命名的xml文件,比如hellojava.xml
在java.xml文件中添加<Context docBase="c:\news"/>,此方法不用指定path,因为path的值就是xml的文件名,配置后不用重启便可访问:http://localhost:8080/hellojava/index.html。
3、多级目录映射,方法同2,只需将xml的文件命名为java#myweb.xml,便可访问:http://localhost:8080/java/myweb/1.html
4、 缺省映射,将xml文件名命名为ROOT.xml,则该web应用将被作为默认的web应用来访问,所以可以直接访问:http://localhost:8080/index.html
web应用首页(welcome file)的配置
修改web应用的配置文件: [webapp]/WEB-INF/web.xml
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>