JAVA Web项目的环境配置
准备
下载putty和FileZlilla
putty用来连接虚拟主机,提供命令行操作
FileZlilla通过FTP来上传所需文件
JDK
从oracle官网上下载JAVA SE linux 64位
http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
下载JDK,下载到本地后,通过FileZlilla上传此压缩包到个人云服务器
通过putty远程登录主机,阿里云centOS实例的默认登录身份为Root,密码是自己设置的实例密码(不是实例管理密码,实例管理密码只有从阿里云网站上登陆实例才需要)
解压的路径根据实际情况自己创建
tar zxvf jdk-8u73-linux-x64.gz -C dir
环境变量设置
JDK代表你的主机上jdk所处的路径
#编辑文件profile
vi /etc/profile
#文件末尾添加如下内容
#set java environment
export JAVA_HOME=JDK
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
保存后来执行配置文件
source /etc/profile
检查配置是否成功
java -version
Apach Tomcat
到http://tomcat.apache.org/下载,tomcat的版本跟jdk相关
同样把压缩包上传到主机并解压到合适路径中
设置Tomcat的配置信息
classpath信息通过Tomcat/bin目录下的setclasspath.sh文件来设置
进入目录之后
vi setclasspath.sh
添加如下内容
JDK指代你的jdk所处的路径
export JAVA_HOME=JDK
export JRE_HOME=JDKjre
server信息通过Tomcat/conf目录下的server.xml文件设置
需要设置Connector字段
<!--默认监听所有ip地址-->
<Connector connectionTimeout="20000"
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"/>
设置完成后退回到bin目录下
启动Tomcat
./startup.sh
curl http:127.0.0.1:8080测试本地能否访问到Tomcat
Tomcat运行日志
1、先切换到:cd tomcat/logs
2、tail -f catalina.out
3、这样运行时就可以实时查看运行日志了
查看被占用端口状态
netstat -apn
网络访问
linux防火墙限制外网访问
内网可以访问到Tomcat,外网还不一定能访问.
配置防火墙规则
vi /etc/sysconfig/iptables
规则文件
-A sya-flood -j REJECT ptables-save v1.4.7 on Sun Feb 19 16:43:59 2017
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:syn-flood - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
# 开放Tomcat Http端口
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20000:30000 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
-A INPUT -p icmp -m limit --limit 1/sec --limit-burst 10 -j ACCEPT
-A INPUT -f -m limit --limit 100/sec --limit-burst 100 -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A syn-flood -p tcp -m limit --limit 3/sec --limit-burst 6 -j RETURN
-A syn-flood -j REJECT --reject-with icmp-port-unreachable
COMMIT
# Completed on Sun Feb 19 16:43:59 2017
# --eject-with icmp-port-unreachable
关闭/开启/重启防火墙
/etc/init.d/iptables stop
#start 开启
#restart 重启
阿里云安全组策略
参照阿里的帮助文档来配置,才能保证外网访问
https://help.aliyun.com/document_detail/25475.html?spm=5176.2020520101.0.0.y8eTsM
需要配置5060端口的公网出入两项
因为是HTTP协议,端口需要全部开放,授权类型使用地址段访问,授权对象为0.0.0.0/0
配置完成
通过公网地址http://120.24.231.130:8080/来访问就可以看到小猫了