一、安装JDK和配置环境变量
1. 创建jdk安装目录(创建过则跳转即可)
mkdir -p usr/local/src
2. 使用wget命令下载jdk包
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz
3. 解压(如下操作是已经跳到指定存放jdk的目录位置)
tar -zxvf jdk-8u131-linux-x64.tar.gz
4. 重命名
mv jdk1.8.0_131 jdk1.8
5. 配置环境变量
(1)进入系统文件命令如下:vi /etc/profile
(2)按“shift+g”快捷键移动到文本末尾,再按“i”按键进行编辑,输入以下文本(写完后,按ESC键退出编辑模式并输入“:x”以保存并退出):
export JAVA_HOME=/usr/local/src/jdk1.8
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
6. 让配置文件生效:source /etc/profile
7. 检查jdk是否配置成功: java -version
二、Tomcat的安装及配置(暂未需要)
1. 创建tomcat安装目录(创建过则跳转即可)
2. 使用wget下载tomcat
3. 解压
4. 启动tomcat
5. 修改tomcat端口
6. 测试访问
三、Mysql的安装及配置
注意:除了在系统中让防火墙开放3306端口外,还需要在阿里云服务器控制台中对当前的ecs实例创建一个3306端口可对外监听的安全组规则,这是阿里云提供的另一层虚拟防火墙(安全策略)
1. 进入安装目录(这里不做详说);
2. 下载mysql并启动服务
(1)使用wget下载mysql源包并用yum安装:
下载: wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
安装: yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
(3)在线安装Mysql:yum -y install mysql-community-server
(4)启动服务:systemctl start mysqld
(5)设置开机启动:
systemctl enable mysqld
systemctl deaemon-reload
3. 修改本地登录密码
(1) 通过vi /var/log/mysqld.log
进入该文件中找到标黄这段,而红色圈便是默认登陆密码:
(2)通过以上得到的密码登录命令mysql -u root -p
,即可进入mysql中。下面则是修改密码:
mysql> alter user 'root'@'localhost' identified by 'Qq88888.';
4. 设置允许远程登录(默认不允许远程登录),开启远程登录前提要保证开启防火墙,开放3306端口监听:
(1)允许该账号能够被远程登录: mysql> grant all privileges on *.* to 'root'@'%' identified by 'Qq88888.' with grant option;
(2)查看防火墙是否开启: firewall-cmd --state
(3)开启防火墙: systemctl start firewalld.service
- 关闭防火墙: systemctl stop firewalld.service
- 禁用防火墙: systemctl disable firewalld.service
- 查看防火墙监听的端口: firewall-cmd --list-port
(4)开放3306端口监听:firewall-cmd --zone=public --add-port=3306/tcp --permanent
(5)刷新防火墙设置:firewall-cmd --reload
5. 配置my.cnf
进入vi /etc/my.cnf
文件添加如下本文进行编码设置:
character_set_server=utf8
init_connect='SET NAMES utf8'
6. 重启动mysql
systemctl restart mysqld
四、Reids的安装及配置
注意:同上在系统中让防火墙开放6379端口外,还需要在阿里云服务器控制台中对当前的ecs实例创建一个6379端口可对外监听的安全组规则,这是阿里云提供的另一层虚拟防火墙(安全策略)
1. 进入安装目录(这里不做详说);
2. 使用wget命令下载redis:wget http://download.redis.io/releases/redis-4.0.8.tar.gz
3. 解压、编译和安装:
(1) 解压:tar -zxvf redis-4.0.8.tar.gz
(2) 完成后进入解压的redis-4.0.8目录中,使用make命令进行编译:make
(3) 安装:make install
4. 设置开机自启动
(1) 创建新目录:mkdir -p /usr/local/redis
(2) 将/usr/local/src/redis-4.0.8/src目录下的redis-server、redis-cli和/usr/local/src/redis-4.0.8目录下的redis.conf文件拷贝到创建的目录中:
cp redis-server /usr/local/redis
cp redis-cli /usr/local/redis
cp ../redis.conf /usr/local/redis
(3)开启后台运行,修改拷贝的redis.conf配置文件:vi /usr/local/redis/redis.conf
- 将萤光字上的“no”该为“yes”:
(4) 创建服务文件redis.service:vi /usr/lib/systemd/system/redis.service
在该文件中添加以下内容(内容中的路径以实际各异):
[Unit]
Description=The redis-server Process Manager
After=syslog.target network.target
[Service]
Type=simple
PIDFile=/var/run/redis_6379.pid
ExecStart=/usr/local/redis/redis-server /usr/local/redis/redis.conf
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -SIGINT $MAINPID
[Install]
WantedBy=multi-user.target
5. 开启redis远程访问(可忽略根据实际需要):
(1) 修改redis.conf配置文件,进行如下操作:
- 设置可访问的ip:修改萤光字的文本中画圈的ip地址让其他可以访问
- 关闭保护模式:将萤光字文本的“yes”修改为“no”
- 设置密码:添加萤光字的文本所示
(2) 修改完后应在redis目录下,使用命令redis-server redis.conf
来检查加载配置文件,这样亦可检查是否出现修改错误,避免后续不必要的问题
(3) 因为开了防火墙,所以势必要让防火墙开放6379端口的监听:
- 开放3306端口监听:firewall-cmd --zone=public --add-port=6379/tcp --permanent
- 刷新防火墙设置:firewall-cmd --reload
- 查看防火墙开放的端口:firewall-cmd --zone=public --list-ports
6. 开启服务和开机自启动:
(1) 刷新服务配置:systemctl daemon-reload
(2) 开启redis: systemctl start redis
(3) 加入开机启动:systemctl enable redis
五、Nginx的安装及配置
1. 安装gcc(gcc用于编译接下来下载的nginx源码)
使用gcc -v
检查是否安装该命令,如未安装则执行yum install gcc-c++
2. 安装pcre和pcre-devel依赖(nginx 的 http 模块使用 pcre 来解析正则表达式,pcre-devel 是使用 pcre 开发的一个二次开发库。)
yum install -y pcre pcre-devel
3. 安装zlib zlib-devel依赖(zlib提供了很多压缩和解方式,nginx需要zlib对http进行gzip)
yum install -y zlib zlib-devel
4. 安装openssl openssl-devel(openssl是一个安全套接字层密码库,nginx要支持https就需要它)
yum install -y openssl openssl-devel
5. 下载nginx并解压
wget http://nginx.org/download/nginx-1.9.9.tar.gz
tar -zxvf nginx-1.9.9
6. 使用默认配置,追加安装ssl模块
./configure --with-http_ssl_module
7. 使用make编译和安装
make && make install
注意:如果安装后出现一个Make[1]: Leaving directory `/usr/local/nginx-1.9.9`
并且在nginx-1.9.9的同级目录下已安装了一个名为nginx的文件夹即可忽略该错误~
8. 查看nginx是否安装成功
(1). 进入nginx文件下的sbin目录输入./nginx -v
查看版本号
(2).使用netstat -ntpl | grep nginx
查看当前nginx占用的端口号
(3). 使用wget 127.0.0.1
测试返回表示是否正常
(4). 使用curl 127.0.0.1
测试返回页面的值是否正常
9. 配置nginx开机自启动
(1). 进入目录cd /usr/lib/systemd/system
(2). 创建nginx.service服务文件vi nginx.service
(3). 添加如下内容:
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
(4). 开机自启动:systemctl enable nginx.service
(5). nginx服务的启动、关闭和重启:
启动:systemctl start nginx.service
关闭:systemctl stop nginx.service
重启:systemctl restart nginx.service
10. 防火墙开启http、https服务以及端口监听
开启http服务:firewall-cmd --zone=public --add-service=http --permanent
开启80端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
开启https服务:firewall-cmd --zone=public --add-service=https --permanent
开启443端口:firewall-cmd --zone=public --add-port=443/tcp --permanent
刷新防火墙设置:firewall-cmd --reload
11. nginx + 一级域名 + https支持的配置:
(1). 修改安装后nginx文件的conf目录下的nginx.conf配置文件: vi nginx.conf
(2). 找到带有# HTTPS Server 的字样,将其下文本按照以下文本根据实际情况进行修改:
# HTTPS Server
#
server {
listen 443 ssl; #ssl协议访问的端口号443
server_name localhost; #将localhost修改为ssl证书所绑定的域名
ssl_certificate cert/www/cert.pem; #域名的绑定的ssl证书pem
ssl_certificate_key cert/www/cert.key; #域名的绑定的ssl证书key
ssl on;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8080; #这里填写项目的访问地址以及端口
proxy_set_header Host $http_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
root html;
index index.html index.htm;
}
# 配置另一个项目使用443端口
# location /test {
# proxy_pass http://127.0.0.1:9090/test; #这里填写项目的访问地址以及端口
# proxy_set_header Host $http_addr;
# proxy_set_header X-Real-IP $remote_addr;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# root html;
# index index.html index.htm;
# }
}
(3). 将http请求重定向为https请求,在原nginx.conf配置文件中修改为如下配置即可:
server {
listen 80;
server_name www.shnice.club; #填写访问的域名
rewrite ^(.*) https://$server_name$1 permanent; #将http访问重定向为https
.....
(4). 修改完之后,可以在进入nginx的sbin目录下使用./nginx -t
测试配置文件是否修改正确
(5). 测试成功后,在当前目录下使用./nginx -s reload
加载配置
12、nginx + 二级域名 + https支持的配置:
(1). 在nginx文件夹下下创建vhosts目录,接着创建一个*.conf的配置文件,添加内容如下:
# HTTP Server
#
server {
listen 80;
server_name localhost; #填写你访问的域名
rewrite ^(.*) https://$server_name$1 permanent; #将http访问重定向为https
location / {
index index.html index.htm;
}
}
# HTTPS Server
#
server {
listen 443 ssl; #ssl协议访问的端口号443
server_name localhost; #将localhost修改为ssl证书所绑定的域名
ssl_certificate cert/abc/cert.pem; #域名的绑定的ssl证书pem
ssl_certificate_key cert/abc/cert.key; #域名的绑定的ssl证书key
ssl on;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location /abc {
proxy_pass http://127.0.0.1:8080/abc; #这里填写项目的访问地址以及端口
proxy_set_header Host $http_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
root html;
index index.html index.htm;
}
}
(2). 导入二级域名所在的配置文件到nginx.conf中:
进入conf目录下,在nginx.conf文件中的http{}包裹中处添加以下内容:
include /usr/local/nginx/vhosts/*;
(3). 修改完之后,可以在进入nginx的sbin目录下使用./nginx -t
测试配置文件是否修改正确
(4). 测试成功后,在当前目录下使用./nginx -s reload
加载配置