zoukankan      html  css  js  c++  java
  • 阿里云-网站搭建(保姆级别)

    说在前头:因为在这个搭建的过程中,尝过了不少的苦头,流过了不少的心酸泪,所以我希望后来者们,能够好好的活着,心态炸了也要继续热爱生活。/委屈巴巴

    另外,一些我们使用的软件版本最最最好控制与项目同步。(别问我为什么,我先去哭三分钟)

    我这里个软件使用到的版本(主要还是控制大版本的变更,例tomcat 7,8,9,mysql5.x , 8):

           - linux centos7.3

           - jdk1.8

           - tomcat 9.0.14

           - mysql 8.0.17

    l  因为项目所需要的软件安装包(以及后面的项目文件),我都是事先在自己电脑里下载的 (各软件网址有提供),所以要上传到服务器端中,我们先下载一个FileZilla,并在服务器的linux系统里面进行相关的配置。

    大部分命令我都采用截图的的方式展现,这样也有利于大家温习或者学习一下linux命令嘛。(CV太麻烦了,我会说出来吗?)

    搭建FTP

           将文件上传到服务器端需要搭建一个FTP服务。

    1.安装vsftpd

           [root@admin]# yum -y install vsftpd

    2.编辑vsftpd的配置文件

    [root@xiaojian /]# vi /etc/vsftpd/vsftpd.conf

    清空内容,添加如下内容

    listen=YES

    background=YES

    anonymous_enable=NO

    local_enable=YES

    write_enable=YES

    local_umask=022

    anon_upload_enable=NO

    anon_mkdir_write_enable=NO

    dirmessage_enable=YES

    xferlog_enable=YES

    connect_from_port_20=YES

    chown_uploads=NO

    xferlog_file=/var/log/vsftpd.log

    xferlog_std_format=YES

    async_abor_enable=YES

    ascii_upload_enable=YES

    ascii_download_enable=YES

    ftpd_banner=Welcome to ftptest FTP servers

    pam_service_name=vsftpd

    chroot_local_user=NO

    chroot_list_enable=YES

    chroot_list_file=/etc/vsftpd/vsftpd.chroot_list

    3.创建管理账户文件

           [root@xiaojian /]# touch /etc/vsftpd/vsftpd.chroot_list

    4.启动vsftpd服务

           [root@xiaojian /]# service vsftpd start

    5.下载FileZilla(百度去,网上啥都有)

          

     

    接下来就可以往服务器端上传文件了

     

    安装配置jre1.8

    下载地址:http://www.oracle.com/technetwork/java/javase/downloads/server-jre8-downloads-2133154.html

       1.把下载好的文件上传到服务器端(我把搭建所需的环境都放在了 /usr/local 下:java、tomcat、mysql)

         

      2. 来到该目录下 cd /usr/local/java ,解压

        [root@xiaojian java]# tar -zxvf server-jre-8u131-linux-x64.tar.gz

      3. 删除安装包

        rm -rf server-jre-8u131-linux-x64.tar.gz

      4. vi /etc/profile启用linux文本编辑器配置jdk环境变量

        在文件的末尾添加如下内容:(文件位置啥的,不要让我低估在座各位的智商啊)

        #set java environment

        export JAVA_HOME=/usr/local/java/jdk1.8.0_131

        export JRE_HOME=${JAVA_HOME}/jre

        export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar

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

        vi 操作简单说明:

        insert键( 或 i 键 ):插入内容

        按下ECS键,输入:qw! 保存退出

        按下ECS键,输入:q!  不保存退出

      5. 让修改的环境变量文件立即生效

        [root@xiaojian java]# source /etc/profile

      6. 验证

        

    安装Tomcat

    这里我们使用在服务器端通过wget命令下载。

    送个福利吧,这个网站apache的软件的一些历史版本也可下载,大家按需下载。

    http://archive.apache.org/dist/tomcat

    1、将Tomcat安装到 /usr/local 目录下

      [root@xiaojian local]# cd /usr/local

    2、下载Tomcat版本(选择所需版本地址)

      [root@xiaojian local]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.73/bin/apache-tomcat-7.0.73.tar.gz

      下载可能会有点慢,静候片刻~

    3、解压缩下的压缩包

      [root@xiaojian local]# tar -zxvf apache-tomcat-7.0.29.tar.gz

    4、删除压缩包

      [root@xiaojian local]# rm -rf apache-tomcat-7.0.29.tar.gz

    5、修改Tomcat文件夹的名称为tomcat

      [root@xiaojian local]# mv apache-tomcat-7.0.29 tomcat

    6、启动&关闭Tomcat

      [root@xiaojian bin]# ./startup.sh  ( 进入到Tomcat的bin目录中,或者通过全路径来启动 )

      输入netstat -tulnp查看个端口开启情况(tomcat端口8080)

    7.打开浏览器,出现如下,说明服务部署成功!

      

    如果你的服务器时阿里云的,那应该是访问不了,需要配置安全规则,开放8080端口,

       

    安装Mysql

           就是这个叫 mysql 的家伙什,不知道在我成功的道路上铺了多少荆棘,每次成功上岸都让我遍体鳞伤。从以前做项目,出过异常最多;到我部署网站时,让我不得不让服务器换一个系统。都是这个mysql作的妖。(其实是我版本没控制好,要做项目时老老实实用5.7的版本,完全没鸟事,非得作贱用8.0的了。。。。)

          

           下载地址:https://downloads.mysql.com/archives/community/

           (按项目需求下载,一定要按!!!)

          

    1. 上传文件到服务器端(文件有点大,耐心等待)

          

      2.在安装之前,我们先把系统自带的mysql数据库给删咯

        查看系统是否已经安装了mysql数据库

            [root@xiaojian /]# rpm -qa | grep mysql

             将查询出来的文件逐个删除(我这里没有)

             yum -y remove filename

      3.解压,删安装包

             [root@xiaojian mysql]# tar -xf mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar

             [root@xiaojian mysql]# rm  mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar

      4. 安装(网上找的,按这个顺序安装,我也不知道,我也不敢问)

        yum install mysql-community-{client,common,devel,embedded,libs,server}-*

        等待~~

      5. 配置

        a)    - 启动mysql服务       service mysqld start;

        关闭MySQL服务      service mysqld stop

        重启mysql服务   service mysqld restart

        -   加入到系统服务中 chkconfig --add mysqld

        -   自动启动        chkconfig mysqld on

             没事就用命令 netstat -tulnp 看看是不是打开了(3306端口)

        b)     登录

        新安装的mysql系统自动随机生成了密码

        grep “password” /var/log/mysqld.log 查看密码

         

        复制

        mysql -uroot -p 回车(一定要回车的) 密码

        c)  设置密码(注意Mysql8密码设置规则必须是大小写字母+特殊符号+数字的类型)

          ALTER user 'root'@'localhost' IDENTIFIED BY 'newPassword';

        修改完,exit退出,再登陆下

        d)     更改语言

        打开my.cnf :vi /etc/my.cnf

        在最后添加如下语句:

        [client]

            port=3306

            default-character-set=utf8

        #regin

           [mysqld]

            port=3306

            character_set_server=utf8

    远程登录

         远程登录的用户

           1.可以选择创建一个新的用户作为远程登录的用户(因为8.0的设置密码规格太恶心了,不想记,还是直接用下面的root吧)

                  ->create user 'MySQLAdmin'@'%' identified by '*******.' ;

                  ->grant all on *.* to 'MySQLAdmin'@'%'

                  ->flush privileges;(刷新)

           2.使用root用户,简单粗暴

                  进入 mysql 数据库

               

                  update user set host = ’%’ where user = ’root’;

                  ^上一步,主要是将root的登录主机localhost,设置为任意主机%可以登录

                  flush privileges(刷新);

         开放端口或关闭防火墙 

      开放3306端口(也就是你mysql的默认端口)

                  /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT  #开启3306端口

                  /etc/rc.d/init.d/iptables save  #保存配置

                  /etc/rc.d/init.d/iptables restart  #重启服务    

           *ps:如果是阿里云的服务器的话,还要配置安全组规则,开放3306端口

     我用的mysql第三方登录软件是SQLyog

    打开我们电脑的SQLyog,创建一个新的用户,登录(我只演示登录)

     

     

    ****PS:此时如果我们用Navicat等第三方应用登录,会提示:

      Authentication plugin 'caching_sha2_password' cannot be loaded

    经查看发现,8.0改变了 身份验证插件 ,

    解决方式*(密码还是那个规则)

      ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root_Password';

     

    远程登录成功!!!

    这时候我们就可以使用我们电脑的mysql可视化工具,远程操作服务器端的数据库了。

    我们先导出自己的项目文件 ,sql转储->结构和数据->导出。

    远程登录的数据库->执行sql脚本。

    上传项目文件

    项目 -> Export -> war file

    上传到 服务器端你的tomcat/webapps/ROOT 下,先将ROOT下的文件全部删除。

    解压 jar -xvf filename.war(文件名)

    删除 war包 rm filename.war

    重新启动一下 tomcat

    浏览器输入:远程服务器IP地址:8080/项目名. 访问测试

      * 这里你可以修改 tomcat 的端口号为80,可以不再输入端口号就能访问相应的项目

      tomcat 服务器的基本操作

    PS: 如果你的项目中,有文件保存到本地的操作,一定记得,Linux 和 Windows 目录结构是不一样的,Linux 的斜杠是(/),Windows是().

      记住斜杠的小窍门:想象你用右手从左边的刀鞘中拔刀,画出来的就是正斜杠(/);反之,是反斜杠。 

    PPS:如果到了这里,前面的没毛病,你那里还是出现莫须有的错误,你可以打开 tomcat 下相应日期日志文件查看错误源。

      我上传完项目的时候,就出现了错误,没有查看到正确的日志文件,一直没看到正确的错误地点,幸亏后面高人指点,让我查看了相应日子的日志文件,找到了错误地点。

      这个错误,大家应该都会报的哦,我之所以放到最后讲嘛,是因为,嘿嘿嘿......

    终极错误:MySQL8.0报错.......which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by 

      具体原因我就不详述了,大家可以自己去查,最直接的解决办法呢就是,在 my.cnf 文件下,加上

        sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

    至此,我在阿里云上面的项目就部署完成了~

      在此特别感谢这几篇博客给我带来的特大帮助:

        https://www.jianshu.com/p/e12faf7c662c 

        https://blog.csdn.net/weixin_41402352/article/details/84474307

        https://www.linuxidc.com/Linux/2018-12/155819.htm

        https://blog.csdn.net/chrisjingu/article/details/90291445

        https://blog.csdn.net/wujiandao/article/details/100502733

  • 相关阅读:
    20191224 Spring官方文档(Overview)
    20191224 Spring官方文档(启动)
    20191209 【归档】Linux就该这么学
    20191209 Linux就该这么学(6)
    20191209 Linux就该这么学(5)
    20191209 Linux就该这么学(4)
    20191209 Linux就该这么学(1-3)
    20191128 Spring Boot官方文档学习【目录】
    加密在卷积神经网络上的应用
    Federated Optimization: Distributed Machine Learning for On-Device Intelligence
  • 原文地址:https://www.cnblogs.com/jr-xiaojian/p/12161330.html
Copyright © 2011-2022 走看看