macOS下Tomcat项目的布署及8080端口转发
12 June 2017
macOS下Java Web项目的布署及8080端口转发的配置
下载安装JDK 与 Tomcat
下载JDK8: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
下载Tomcat8: http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.15/bin/apache-tomcat-8.5.15.zip
配置 JAVA_HOME 与 Tomcat
- 编辑:
vi ~/.bash_profile
- 添加以下命令:
export JAVA_HOME=$(/usr/libexec/java_home)
# Tomcat解压目录
export CATALINA_HOME=~/developer/tomcat-8.5.15
-
然后执行:
source ~/.bash_profile
-
修改Tomcat bin目录权限,并启动Tomcat
chmod -R 755 ~/developer/tomcat-8.5.15/bin
~/developer/tomcat-8.5.15/bin/startup.sh
- 配置Tomcat App Manager 与 Host Manager 用户 编辑 Tomcat的config目录下的tomcat-users.xml,在tomcat-users节点下添加以下代码:
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="tomcat" password="123456" roles="manager-gui,admin-gui"/>
布署war包
- 下载demo.war
- demo.war放到tomcat主目录下,并解压到demo目录下.
- 配置Tomcat目录下的config/server.xml,在Engine节点下添加一个Host
<Host name="demo.wodedata.com" appBase=""
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="demo" reloadable="false" privileged="true" debug="0"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="demo_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
- 修改Tomcat默认监听端口8080改为80
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
- 启动Tomcat
~/developer/tomcat-8.5.15/bin/shutdown.sh
~/developer/tomcat-8.5.15/bin/startup.sh
80 到 8080 端口转发配置
- 编辑httpd.conf:
sudo vi /etc/apache2/httpd.conf
- 开启httpd-vhosts.conf,去掉前面的注释:
Include /private/etc/apache2/extra/httpd-vhosts.conf
- 开启proxy_module和proxy_http_module,也是去掉前面的注释即可:
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
- 编辑httpd-vhosts.conf,删除没用的VirtalHost配置,添加以下配置:
<VirtualHost *:80>
ProxyPreserveHost On
ProxyRequests Off
ServerName demo.wodedata.com
ServerAlias demo.wodedata.com
ProxyPass / http://demo.wodedata.com:8080/
ProxyPassReverse / http://demo.wodedata.com:8080/
</VirtualHost>
- 或者编辑
/etc/apache2/users
下的对应用户的conf,添加proxy转发即可
ProxyPass / http://demo.wodedata.com:8080/
ProxyPassReverse / http://demo.wodedata.com:8080/