12月13日任务css
16.4 配置Tomcat监听80端口java
16.5/16.6/16.7 配置Tomcat虚拟主机mysql
16.8 Tomcat日志nginx
默认tomcat监听的是8080端口,若是想直接输入ip就访问到网页,就须要进行以下操做:web
[root@localhost src]# vim /usr/local/tomcat/conf/server.xml /定位到8080 <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 修改8080为80,保存退出
# 先关闭后启动 [root@localhost src]# /usr/local/tomcat/bin/shutdown.sh [root@localhost src]# /usr/local/tomcat/bin/startup.sh
[root@localhost src]# netstat -lntp | grep java tcp6 0 0 :::80 :::* LISTEN 2823/java tcp6 0 0 127.0.0.1:8005 :::* LISTEN 2751/java tcp6 0 0 :::8009 :::* LISTEN 2751/java
若是系统内已经安装并启动了apache/nginx web服务,80端已被占用,须要关闭这些web服务器,而后重启tomcat服务。sql
跟apache/nginx web服务器同样,tomcat也能够设置虚拟主机。数据库
在tomcat配置文件中<Host>和</Host>之间的配置为虚拟主机配置部分,name定义域名,appBase定义应用的目录,Java的应用一般是一个war的压缩包,你只须要将war的压缩包放到appBase目录下面便可。apache
[root@localhost src]# vim /usr/local/tomcat/conf/server.xml // 在</Host>下添加下列代码 <Host name="www.123.cn" appBase="" unpackWARs= "true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/data/wwwroot/123.cn/" debug="0" reloadable="true" crossContext="true"/> </Host> # 部分参数说明: # name:须要填写的是虚拟主机的域名 # appBase:应用项目(WAR包)所在目录,配合unpackWARs将自动解压WAR包成一个程序目录 # WAR包:开发人员开发的组建网站的各类网页、配置、jsp代码、数据库相关文件会被打包成一个WAR包,便于存放和传输。 # unpackWARs: 自动解压WAR包 # docBase:在该处定义的目录内存放的是解压后的WAR包的文件,定义了该项后,以该目录为主,appBase能够不须要定义,也能够定义成同样;若是不定义,默认文件存放在appBase/ROOT下,二者取其以便可。若是docBase没有定义正确,任意产生404错误。
appBase内写的是相对路径,其相对的是/usr/local/tomcat/vim
使用WAR包的时候须要写appBase,同时unpackWARs须要设置成“True”,不然没法自动解压。浏览器
若是提供的网站是一个目录,那些所涉及的全部文件就放在docBase参数所指定的目录下。
webapps目录下的ROOT目录
[root@localhost webapps]# ls ROOT/ asf-logo-wide.svg bg-upper.png tomcat.gif bg-button.png favicon.ico tomcat.png bg-middle.png index.jsp tomcat-power.gif bg-nav-item.png RELEASE-NOTES.txt tomcat.svg bg-nav.png tomcat.css WEB-INF
能够直接经过localhost/index.jsp
/ localhost/bg-nav.png
的方式进行访问,即默认访问的是ROOT目录
本身定义的程序目录也须要建立一个ROOT目录,同时把图片、静态文件放在ROOT目录下,这样就能够直接访问自定义网站了。
搭建好tomcat环境后,咱们能够搭建一个简单的blog应用网站来体验下。
[root@localhost src]# wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war [root@localhost src]# du -sh zrlog-1.7.1-baaecb9-release.war 6.8M zrlog-1.7.1-baaecb9-release.war
[root@localhost src]# cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/ # 更名的目的是为了访问的方便,毕竟包名有点长 [root@localhost webapps]# mv zrlog-1.7.1-baaecb9-release zrlog
# 前提是系统内有mysql并启动 [root@localhost webapps]# ps aux | grep mysql # 登陆mysql,去建立zrlog用户 [root@localhost webapps]# mysql -uroot -p Enter password: # 建立数据库zrlog mysql> create database zrlog; Query OK, 1 row affected (0.03 sec) # 建立新用户zrlog,并赋予其权限 mysql> grant all on zrlog.* to 'zrlog'@127.0.0.1 identified by 'zrlog'; Query OK, 0 rows affected (0.04 sec) mysql> quit Bye # 使用zrlog用户登陆测试 [root@localhost webapps]# mysql -uzrlog -h127.0.0.1 -p Enter password: mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | test | | zrlog | +--------------------+ 3 rows in set (0.03 sec) mysql> quit Bye
使用浏览器登陆注册
注册成功后使用admin帐户就能够登陆博客自由的编辑、发布blog了!
[root@localhost tomcat]# ls /usr/local/tomcat/logs/
tomcat的日志分为4类:
访问日志默认不生成,须要在server.xml内定义
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="123.cn_access" suffix=".log" pattern="%h %l %u %t "%r" %s %b" /> # directory定义日志存放的目录,这里是/usr/local/tomcat/logs目录 # prefix定义访问日志的前缀 # suffix定义日志的后缀 # pattern定义日志格式。
新增长的虚拟主机默认并不会生成相似默认虚拟主机的那个localhost.日期.log日志,错误日志信息会统一记录到catalina.out中。所以当出现问题时,应该第一时间去查看catalina.out文件。