阿里云学生机 部署JavaWeb项目

一、在阿里云服务器上,搭建开发环境

    ①安装jdk1.8.0_171:  wget  [jdk的tar.gz包的下载网址链接]

    ②将安装包解压到/usr/local/jdk8目录下,然后vi /etc/profile,将以下代码添加到文件首行:

       tar -zxvf  待解压的包 -C  /usr/local/jdk8

       export JAVA_HOME=/usr/local/jdk8/jdk1.8.0_171  //根据实际情况的路径进行配置

      export JRE_HOME=${JAVA_HOME}/jre

      export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

      export  PATH=${JAVA_HOME}/bin:$PATH

         

   ③输入source  /etc/profile,更新系统环境配置信息

   ④由于linux还不知道已经安装了jdk,所以需要通过软链接的方式告诉Linux的默认执行脚本路径:

ln -s /usr/local/jdk8/jdk1.8.0_171/bin/java(源文件)  /usr/bin(目标)

   ⑤在主目录~下输入:java -version,出现以下界面即安装成功。

          

   ⑥安装Tomcat:wget  [jdk的tar.gz包的下载网址链接]

   ⑦解压 tar -zxvf  待解压的包 -C  /usr/local/tomcat

   ⑧进入到/usr/local/tomcat/apache-tomcat-7.0.88/bin下,启动tomcat服务器: ./startup.sh

         

⑨由于阿里云的设置,此时并不能直接从外网访问服务器的8080端口,所以需要在防火墙上添加规则。

        

⑩完成这一步后在浏览器访问服务器的8080端口,会出现tomcat的服务页面:

    

*tips:由于阿里云服务器上对tomcat的支持上存在一些bug,所以如果不对tomcat的配置做优化,访问8080端口将异常的慢,于是上网找到了一些资料和解决办法,以下是对博文的部分引用:

问题原因:

随机数引起线程阻塞。

tomcat不断启动,关闭, 启动关闭。几次后会出现卡死状况。需很久才能加载完成阿里云同样配置,同样系统,则很难出现卡死状况。  即使出现过几十秒后也会释放出来。 而腾讯云 ubuntu 不会 腾讯云的 centos不知道。

多次启动关闭,产生随机数的时候引起线程阻塞,,然后卡死。

解决办法:

tomcat bin/ catalina.sh 中加入

1

JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"

 

二、在MyEclipse中建立Web项目,并编写jsp页面(自己机器的Windows环境下)

三、将项目以war包导出,部署到云服务器

①利用FileZiliaClient客户端文件传输工具,将linux_course.war包上传到/usr/local/tomcat/apache-tomcat-7.0.88/webapps目录下。

 

②由于需要操作数据库,所以还需要将mysql-connector的jar包上传到服务器的Tomcat应用的lib目录下。

      

③部署完毕,重启tomcat即可.

四、外网访问http://120.78.150.32:8080/linux_course/index.jsp

*************************************后续****************************************************

关于远程连接阿里云服务器的数据库:

在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'即可 
mysql -u root -p  
mysql:use mysql;  
mysql:select host from user where user='root';

mysql:SET SQL_SAFE_UPDATES=0;     //解除mysql的安全限制问题
mysql:update user set host = '%' where user ='root';  
mysql:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;  //其中root是账号和密码

mysql:flush privileges;                                //刷新权限

备注:您也可以添加一个用户名为yuancheng,密码为123456,权限为%(表示任意ip都能连接)的远程连接用户。命令参考如下:

     grant all on *.* to 'yuancheng'@'%' identified by '123456';

     flush privileges

猜你喜欢

转载自blog.csdn.net/LSur_king/article/details/80874848