这里以CentOS7.x 64位 阿里云Linux服务器为例
/*****************【安装JDK】****************/
前言:首先我们需要一个工具能够连接到服务器,这里先选用shell
1.先登陆服务器
2.看到[root@xxxxxxxx ~]#,这xxxxxx这个长串是主机名,感觉又长又臭,我们来改下它。 网络上的教程:修改/etc/sysconfig/network文件中的HOSTNAME值和修改/etc/hosts文件,在这里不起作用。
CentOS7一条命令搞定:
hostnamectl set-hostname mysvr
再输入
reboot
命令重启机器,
重新连接上去,当当当~
3.安装JDK
手动安装需要先卸载系统自带的jdk 列举匹配已安装的java的软件包:
yum list installed | grep java
卸载安装的jdk:
yum -y remove java-1.7.0-openjdk*
yum -y remove java-1.8.0-openjdk*
我们新建一个目录来存放jdk,
mkdir /usr/local/java
进入该目录
cd /usr/local/java
接下来的操作都是基于此路径进行,如果是存放在其他路径下,请注意对应修改 #####1.下载压缩包,tar.gz
(1)本地先下载好JDK的tar.gz压缩包,再通过FTP工具上传到服务器上
先到官网上查看需要的jdk版本,获取压缩包的下载链接,下载完压缩包后需要使用rz指令,在此之前需要安装指令插件
yum install lrzsz -y
使用rz指令打开本地文件,上传压缩包
rz
4.解压
使用命令
tar -zxvf jdk-8u171-linux-x64.tar.gzxxxxx(输入文件名可以输入前一部分,用tab键自动补全)
解压完后,多出来一个目录,如下
检查下下载下来的jdk压缩包正常不,输入命令
/usr/local/java/jdk1.8.0_171/bin/java -version
/usr/local/java/jdk1.8.0_171/bin/javac -version
正常情况是能够显示jdk的版本信息,即为正常,否则呵呵,你下载的是假的压缩包,重新下载!
5.编辑配置文件,设置环境变量
输入命令
vim /etc/profile
在profile文件中添加如下内容:
输入命令进入insert 模式
i
(JAVA_HOME的值根据实际路径填写)
#set java environment
JAVA_HOME=/usr/local/java/jdk1.8.0_171
CLASS_PATH=.:$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME CLASS_PATH PATH
按Esc键 退出insert模式进入recommed模式
然后保存退出
:wq
6.使配置生效,推荐方法(2)
使用source命令:
source /etc/profile
7.验证JDK是否安装好了
分别输入命令 java -version
和 javac -version
显示了jdk的版本信息,说明已正确配置环境变量
**如果出现了-bash: java: command not found
,检查上面的各个步骤,特别是第2步正常,然后出现这个情况的,请仔细检查 配!置!文!件!/etc/profile的各项值是否设置正确,一个标点符号都不要给放过!!!
**如果出现了-bash: ./java: cannot execute binary file
,出现这个错误的原因可能是在32位的操作系统上安装了64位的jdk,检查jdk版本和Linux版本位数是否一致,输入命令 uname -a,x86_64是64位,否则是32位。
/*****************【安装Maven】****************/
1.下载地址:https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/
2.上传服务器并解压后修改文件夹名称:
3.配置环境变量保存并退出:
vi /etc/profile
4.刷新环境变量并且检查版本,就表示成功
source /etc/profile
mvn -version
/*****************【安装Nginx】****************/
1. 下载Nginx
到官网http://nginx.org/下载对应nginx包,推荐使用稳定版本进入官网之后界面如下
点击download进行到下一页
然后下载所需要的版本(强烈建议下载稳定版)
如下链接提供百度网盘下载:
链接:https://pan.baidu.com/s/1PZRMkYeAoMvpP9m_qY011g
提取码:i6aj
2. 上传到指定服务器
上传nginx到自己的Linux系统,此处我是上传到了/home/software/
3. 安装依赖环境
1. 安装gcc环境
yum install gcc-c++
2. 安装PCRE库,用于解析正则表达式
yum install -y pcre pcre-devel
3. zlib压缩和解压缩依赖
yum install -y zlib zlib-devel
4. SSL安全的加密的套接字协议层,用于HTTP安全传输,也就是https
yum install -y openssl openssl-devel
4. 解压
需要注意,解压后得到的是源码,源码需要编译后才能安装
tar -zxvf nginx-1.16.1.tar.gz
5. 配置Nginx
配置之前,先创建nginx临时目录,如果不创建,在启动nginx的过程中会报错
mkdir /var/temp/nginx -p
在Nginx解压后的目录之下,输入如下命令进行配置,目的是为了创建makefile文件
./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文件成功
进入nginx解压过后的目录进行查看如下
配置命令解释:
命令 | 命令解释 |
--prefix | 指定nginx安装目录 |
--pid-path | 指向nginx的pid |
--lock-path | 锁定安装文件,防止被恶意篡改或误操作 |
--error-log | 错误日志 |
--http-log-path | http日志 |
--with-http_gzip_static_module | 启用gzip模块,在线实时压缩输出数据流 |
--http-client-body-temp-path | 设定客户端请求的临时目录 |
--http-proxy-temp-path | 设定http代理临时目录 |
--http-fastcgi-temp-path | 设定fastcgi临时目录 |
--http-uwsgi-temp-path | 设定uwsgi临时目录 |
--http: :scgi-temp-path | 设定scgi临时目录 |
6. 编译&安装
make
make install
7. 启动Nginx
进入sbin目录启动nginx
启动: ./nginx
停止: ./nginx -s stop
重新加载:./nginx -s reload
8. 测试
打开浏览器,访问虚拟机所处内网ip即可打开nginx 状认页面,显示如下便表示安装成功:
注意事项:
1.如果在云服务器安装,需要开启默认的nginx端口: 80
2.如果在虚拟机安装,需要开启默认的nginx端口: 80
3.本地win或mac需要关闭防火墙
若在启动Nginx的时候遇到Nginx.pid打开失败或失效问题,请参考以下链接 关于Nginx.pid打开失败或失效的解决办法
/*****************【安装Nginx-开机自启动】****************/
1.shell脚本启动
第一步:我们在/etc/init.d下新建一个文件nginx(需要在root权限下操作)
vi /etc/init.d/nginx
写下如下代码,nginx自启动脚本:
#!/bin/sh
# nginx - this script starts and stops the nginx daemin
#
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /usr/local/nginx/conf/nginx.conf
# pidfile: /usr/local/nginx/logs/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
lockfile=/var/lock/subsys/nginx
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac
这里特别提醒注意2点
1.# config: /usr/local/nginx/conf/nginx.conf 这个路径要能对应上你的安装路径,
# pidfile: /usr/local/nginx/logs/nginx.pid 这个路径需要修改/usr/local/nginx/conf/nginx.conf 配置文件,下面会讲怎么修改
2.nginx="/usr/local/nginx/sbin/nginx" 和 NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" 这2个地方的位置根据自己安装位置修改
第二步:保存退出之后,修改/usr/local/nginx/conf/nginx.conf 配置文件,指向nginx.pid文件路径
(1)进入cd /usr/local/nginx/conf/ 目录,编辑配置文件nginx.conf ;
(2)在配置文件中有个注释的地方: #pid logs/nginx.pid;
(3)将注释放开,并修改为:pid /usr/local/nginx/logs/nginx.pid;
(4)在 /usr/local/nginx 目录下创建 logs 目录:mkdir /usr/local/nginx/logs
第三步:保存退出之后,给其增加可执行权限(普通文件变为可执行文件)
chmod +x /etc/init.d/nginx
第四步:设置脚本开机自启动
把这个脚本设置成系统启动时自动执行,系统关闭时自动停止,使用如下命令:
chkconfig --add nginx
第五步:验证
执行 sudo reboot。重启之后就会发现,Nginx已经成功运行了。
修改了可执行文件后 重新加载:
systemctl daemon-reload
/*****************【安装Tomcat】****************/
1.官网下载tomcat
下载安装tomcat(http://tomcat.apache.org/)我这边是下载的apache-tomcat-8.0.50.tar.gz
解压
tar -zxvf apache-tomcat-8.0.50.tar.gz
我是放在了usr/local/tomcat下所以要创建tomcat文件夹并将解压文件移动到tomcat下
mkdir /usr/local/tomcat
进入conf目录下修改tomcat-users.xml 文件, wq 保存并退出
cd /usr/local/tomcat/apache-tomcat-8.0.50/conf
vim tomcat-users.xml
<role rolename="manager-gui" />
<role rolename="admin-gui" />
<user username="admin" password="admin" roles="admin-gui" />
<user username="tomcat" password="admin" roles="manager-gui" />
进入tomcat安装bin目录并启动
cd usr/local/tomcat/apache-tomcat-8.0.50/bin/
./startup.sh
查看服务器是否启动成功,进入日志查看
cd usr/local/tomcat/apache-tomcat-8.0.50/logs/
tail -n 100 catalina.out
/*****************【安装Tomcat-开机自启动】****************/
1.shell脚本启动
众所周知,在Linux中设置开机自启动的服务,需要在/etc/rcX.d下挂载。除此之外还需要在/etc/init.d下些启动脚本。其实很简单,先export出所需要的环境变量,例如JAVA_HOME,JRE_HOME, CATALINA_HOME, CATALINA_BASE什么的,然后再直接调用$CATALINA_HOME/bin/startup.sh就能成功启动。
第一步:我们在/etc/init.d下新建一个文件tomcat(需要在root权限下操作)
vi /etc/init.d/tomcat
写下如下代码,tomcat自启动脚本:
#!/bin/sh
# chkconfig: 345 60 10
# description: Auto-starts tomcat
# /etc/init.d/tomcatd
# Tomcat auto-start
# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/network
RETVAL=0
export JAVA_HOME=/usr/local/java/jdk1.8.0_231
export JRE_HOME=/usr/local/java/jdk1.8.0_231/jre
export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-8.5.54
export CATALINA_BASE=/usr/local/tomcat/apache-tomcat-8.5.54
start()
{
if [ -f $CATALINA_HOME/bin/startup.sh ];
then
echo $"Starting Tomcat"
$CATALINA_HOME/bin/startup.sh
RETVAL=$?
echo " OK"
return $RETVAL
fi
}
stop()
{
if [ -f $CATALINA_HOME/bin/shutdown.sh ];
then
echo $"Stopping Tomcat"
$CATALINA_HOME/bin/shutdown.sh
RETVAL=$?
sleep 1
ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9
echo " OK"
# [ $RETVAL -eq 0 ] && rm -f /var/lock/...
return $RETVAL
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
echo $"Restaring Tomcat"
$0 stop
sleep 1
$0 start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit $RETVAL
这里特别提醒注意2点
1.ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9,熟悉Linux命令的人应该都清楚这句话的意义,这里就简单说下前半部分,查询root用户下tomcat的进程PID,个人根据实际情况修改。
2.JAVA_HOME等配置按照自己的安装目录来改
第二步:保存退出之后,给其增加可执行权限(普通文件变为可执行文件)
chmod +x /etc/init.d/tomcat
第三步:设置脚本开机自启动
把这个脚本设置成系统启动时自动执行,系统关闭时自动停止,使用如下命令:
chkconfig tomcat on
第四步:验证
执行 sudo reboot。重启之后就会发现,Tomcat已经成功运行了。