欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

centos7下搭建Java Web项目环境

程序员文章站 2022-05-29 12:24:38
安装JDK 安装JDK 编辑etc下的profile文件 vi /etc/profile 在文件末尾行添加如下内容,JAVA_HOME为JDK安装路径 #set java environment JAVA_HOME=/usr/local/xxx/jdk1.8.0_161 CLASSPATH=.:$J ......
  • 安装jdk

  1. 查看是否已有jdk,有则卸载系统自带的版本
  2. 解压
  3. 安装依赖
    sudo yum install glibc.i686
  4. 配置环境变量
    • 编辑etc下的profile文件
      vi /etc/profile
    • 在文件末尾行添加如下内容,java_home为jdk安装路径
      #set java environment
          java_home=/usr/local/xxx/jdk1.8.0_161
          classpath=.:$java_home/lib.tools.jar
          path=$java_home/bin:$path
          export java_home classpath path
    • 保存退出,使更改的配置立即生效
      source /etc/profile
    • 查看jdk版本信息,如果显示则证明安装成功
  • 安装tomcat

  1.  解压,启动tomcat
    查看启动日志   tail -f ../logs/catalina.out
  2. 将8080端口放行,并重新加载防火墙
    1 firewall-cmd --zone=public --add-port=8080/tcp --permanent
    2 firewall-cmd --reload
  • 安装mysql

  1. 检测是否已有mysql,有则卸载系统自带的版本
  2. 解压后有很多rpm包centos7下搭建Java Web项目环境
  3. 按照common–>libs–>client–>server的顺序进行rpm,因为彼此之间有依赖
    1) rpm -ivh mysql-community-common-5.7.18-1.el7.x86_64.rpm
        警告:mysql-community-common-5.7.18-1.el7.x86_64.rpm: 头v3 dsa/sha1 signature, 密钥 id 5072e1f5: nokey 
        准备中… ################################# [100%]
        如果出现该问题:yum remove mysql-libs
        原因:系统已经安装了其他版本的mysql-libs导致不兼容
        然后再重新依次安装
        rpm -ivh mysql-community-common-5.7.18-1.el7.x86_64.rpm
    
    2) rpm -ivh mysql-community-libs-5.7.18-1.el7.x86_64.rpm
    
    3) rpm -ivh mysql-community-client-5.7.18-1.el7.x86_64.rpm
    
    4) rpm -ivh mysql-community-server-5.7.18-1.el7.x86_64.rpm
        error: failed dependencies:
        libaio.so.1()(64bit) is needed by mysql-server-5.5.25a-1.rhel5.x86_64
        libaio.so.1(libaio_0.1)(64bit) is needed by mysql-server-5.5.25a-1.rhel5.x86_64
        如果出现该问题:yum install libaio
  4.  启动mysql,查看mysql服务状态
    1 systemctl start mysqld
    2 systemctl status mysqld
  5. 使用my.cnf文件自动生成一个登录密码
    cat /var/log/mysqld.log | grep password
  6. 使用该密码进行root登录
    mysql -u root -p
  7. 修改mysql的root密码
    set password for root@localhost = password('123456');
     your password does not satisfy the current policy requirements
     如果出现该问题:需要修改mysql密码的安全级别
     set global validate_password_policy=0;
     set global validate_password_mixed_case_count=0;
     set global validate_password_number_count=3;
     set global validate_password_special_char_count=0;
     set global validate_password_length=3;
    mysql密码安全级别修改后再次重新修改root的密码
    set password for root@localhost = password(‘123456’);
  8. 授权远程链接
    grant all privileges on *.* to 'root'@'%' identified by '123456';
  9. 将3306端口放行,并重新加载防火墙
    1 firewall-cmd --zone=public --add-port=3306/tcp --permanent
    2 firewall-cmd --reload
  • 安装nginx

  1. 安装依赖包
    1 yum install gcc-c++
    2 yum install -y pcre pcre-devel
    3 yum install -y zlib zlib-devel
    4 yum install -y openssl  openssl-devel
  2. 解压
  3. 配置
    ./configure \
    --prefix=/usr/local/nginx \
    --pid-path=/var/run/nginx/nginx.pid \
    --lock-path=/var/lock/nginx.lock \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --with-http_gzip_static_module \
    --http-client-body-temp-path=/var/temp/nginx/client \
    --http-proxy-temp-path=/var/temp/nginx/proxy \
    --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
    --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
    --http-scgi-temp-path=/var/temp/nginx/scgi

    配置后会多一个makefile目录
  4. 手动创建需要的目录/var/temp/nginx/,系统只有var目录
  5. 开始编译
    make
  6. 编译完成后
    make install
  7. 安装完成,此时/usr/local/下面会多出一个nginx目录
  8. 进入sbin,启动nginx
    ./nginx
  9. 配置代理集群,修改/usr/local/nginx/conf/下的nginx.conf文件,找到http{}段并添加以下内容
    server {
            listen       80;
            server_name  www.####.com;
            #charset koi8-r;
            #access_log  logs/host.access.log  main;
            location / {
                proxy_pass   http://127.0.0.1:8080;
                index  index.html index.htm;
            }
       }
  10. 重启nginx
    ./nginx -s reload 

 

  • 80端口转发

  1. 将80端口放行
    firewall-cmd --zone=public --add-port=80/tcp --permanent
  2. 允许防火墙伪装ip
    firewall-cmd --add-masquerade
  3. 将80端口的流量转发至8080端口
    firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080

     缺点:每次重启防火墙,都得重新设置该规则

  • firewall设置

    1 启动:systemctl start firewalld
    2 查看状态:systemctl status firewalld
    3 停止:systemctl stop firewalld
    4 禁用:systemctl disable firewalld
    5 查看所有已打开的端口:firewall-cmd --zone=public --list-ports
    6 更新防火墙规则:firewall-cmd --reload
  • 端口设置

    1 添加端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
          (--permanent永久生效,没有此参数重启后失效) 2 重新载入:firewall-cmd --reload 3 查看:firewall-cmd --zone= public --query-port=80/tcp 4 删除:firewall-cmd --zone= public --remove-port=80/tcp --permanent