目录
服务器:腾讯云服务器,服务器版本:centos7.6.1810
如何查看版本号?如下命令:
[root@VM_0_11_centos /]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)
1.yum环境配置
腾讯云的这款服务器默认自带了yum,如果你的服务器运行这个命令报错,请自行安装。
因为下一步需要安装jdk,所以先直接使用命令查看服务器是否已经安装了jdk:
yum list installed | grep java*
结果出现如下提示:
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fats
大意是服务器上的数据仓库太老了,需要更新到最新的版本。直接按照提示,执行run后面的语句
yum makecache fats
yum配置完成之后,再执行yum list installed | grep java* 查看是否有已安装的jdk环境,本服务器上没有,直接进行下一步。若服务器有的话需要使用yum remove java*先删除再进行下一步。
2.jdk1.8安装(yum)
yum list java*
出现一大片java不同版本,找到我们需要的版本
... ...
java-1.8.0-openjdk.i686 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk.x86_64 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-accessibility.i686 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-accessibility.x86_64 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-demo.i686 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-demo.x86_64 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-devel.i686 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-devel.x86_64 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-headless.i686 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-javadoc.noarch 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-javadoc-zip.noarch 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-src.i686 1:1.8.0.252.b09-2.el7_8 updates
java-1.8.0-openjdk-src.x86_64 1:1.8.0.252.b09-2.el7_8 updates
... ...
安装:
yum install java-1.8.0-openjdk.x86_64
中间需要选择的,输入y回车即可
安装完成之后,验证:
[root@VM_0_11_centos ~]# java -version
openjdk version "1.8.0_252"
OpenJDK Runtime Environment (build 1.8.0_252-b09)
OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)
出现版本信息表示安装成功。
3.tomcat安装
因为我要使用nginx配置证书,nginx+tomcat配置负载均衡,所以不用yum方式安装tomcat,使用yum方式安装tomcat的方式参见CentOS 6.9/7通过yum安装指定版本的Tomcat
首先下载tomcat包:
wget http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.90/bin/apache-tomcat-7.0.90.tar.gz
解压:
tar -zxvf apache-tomcat-7.0.90.tar.gz
改名:
mv apache-tomcat-7.0.90 kuaf
启动:
# /server 是我存放tomcat的路径
sh /server/kuaf/bin/startup.sh
这个时候访问一下对应的网址,熟悉的界面出现,tomcat启动成功
tomcat的配置我就不讲了,不知道的各位自行百度。
4.mysql安装和配置(yum)
参考资料:CentOS7 yum 安装与配置MySQL5.7
由于yum库中没有mysql的包,所以我们要自己配置yum源
# 下载mysql源安装包
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
# 安装mysql源
yum localinstall mysql57-community-release-el7-8.noarch.rpm
配置好源之后,开始安装(安装过程超级长,主要是要下载东西,速度一言难尽,当然如果网速好的话还是很快的):
yum install mysql-community-server
安装好之后启动mysql服务
systemctl start mysqld
或者
service mysqld start
然后使用以下命令测试是否启动成功:
[root@VM_0_11_centos ~]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
若返回的结果是密码错误,则表示服务启动成功。
接下来,将服务设置成开机启动:
[root@VM_0_14_centos mysql]# systemctl enable mysqld
[root@VM_0_14_centos mysql]# systemctl daemon-reload
接下来,登录,修改密码。
首先,查看自动生成的密码
[root@VM_0_14_centos mysql]# grep 'temporary password' /var/log/mysqld.log
2020-06-08T08:47:30.224733Z 1 [Note] A temporary password is generated for root@localhost: 5o%hKkOl:,S6
使用用户名root,密码5o%hKkOl:,S6登录进去,修改密码。
[root@VM_0_14_centos mysql]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.30
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases
-> ;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'TestRoot@123132';
Query OK, 0 rows affected (0.00 sec)
注意:1.修改密码之前你是不能进行任何操作的。2.密码默认必须包含大小写字母、数字和符号。
接下来,我们用本地的数据库连接工具连接一下看看:
连不进去是正常的,别气馁,你还需要配置远程账户,不然你就只能在连接服务器这个小黑窗里面写数据库代码了。
配置远程账户步骤:
(1)进入mysql数据库:
[root@VM_0_14_centos ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.7.30 MySQL Community Server (GPL)
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql>
(2)创建用户,赋予权限
mysql> create user 'remoteUser'@'localhost' identified by 'RemoteUsr@2020';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all privileges on *.* to 'remoteUser'@'localhost' identified by 'RemoteUsr@2020' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
(3)查到自己的公网IP:百度ip即可
(4)修改刚添加的用户的IP为自己目前的公网IP
mysql> update user set Host='xxx.xxx.xxx.xxx' where User='remoteUser';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
注意:这里的xxx.xxx.xxx.xxx是自己的公网IP;更新一定要加flush privileges不然修改不会生效。
接下来就可以远程登录了:
附:mysql中user表记录的密码修改方法
#mysql 5.7以上
update user SET authentication_string = password('newpassword') WHERE user = 'root';
#mysql 5.7以下
update user SET password = password('newpassword') WHERE user = 'root';
flush privileges;
我在安装过程中出现了一个问题:mysqld_pre_systemd[26821]: 2020-06-08T08:11:58.961782Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
出现的原因是之前安装了别的版本的mysql所以默认数据路径下有旧的数据文件,删除就好了,参照:https://blog.csdn.net/nkshuangyuan2012/article/details/106624352
5.nginx安装和配置(yum)
查看nginx版本:yum list -y nginx
[root@VM_0_14_centos ~]# yum list -y nginx
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Available Packages
nginx.x86_64
安装nginx:yum -y install nginx,中间需要确认
[root@VM_0_3_centos /]# yum -y install nginx
Loaded plugins: fastestmirror, langpacks
...............................
...............................
............................
.....
Complete!
启动:
[root@VM_0_14_centos nginx]# cd /usr/sbin
[root@VM_0_14_centos sbin]# ./nginx
出现如下界面,表示nginx启动成功:
配置nginx映射到tomcat服务器:vim /etc/nginx/nginx/conf
重点配置如下,其中8080是我的tomcat的http端口
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
proxy_pass http://127.0.0.1:8080
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
接下来,把java服务部署上去,启动tomcat
sh /root/tomcat/bin/startup.sh
访问网址,出现我们的网站,部署成功:
接下来配置证书,使用https访问,这样网址导航栏就不会出现不安全字样了
6.证书配置
证书的申请请参考:https://blog.csdn.net/nkshuangyuan2012/article/details/106637704
下载申请好的证书,解压,找到我们需要的nginx证书,传到centos上的任意位置
在nginx配置文件中,server模块下,增加一个server,按照腾讯云的证书部署指引格式来写就好了
# Settings for a TLS enabled server.
server {
listen 443;#SSL 访问端口号为 443
server_name xxxx.xxxx.com; #填写绑定证书的域名
ssl on;#启用 SSL 功能
ssl_certificate cert/1_xxxx.xxxx.com_bundle.crt;#证书文件名称
ssl_certificate_key cert/2_xxxx.xxxx.com.key;#私钥文件名称
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;##请按照这个套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8080;
index index.html index.htm;
}
}
然后重新加载nginx配置文件
[root@VM_0_14_centos mywebapps]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@VM_0_14_centos mywebapps]# nginx -s reload
使用https模式访问,就变成了这样
--------------完结的分割线----------------------------
加油