一、Linux上软件安装
1.1 Linux上的软件安装有以下几种常见方式介绍:
1. 二进制发布包:软件已经针对具体平台编译打包发布,只要解压,修改配置即可
2. RPM包:软件已经按照redhat的包管理工具规范RPM进行打包发布,需要获取到相应的软件RPM发布包,然后用RPM命令进行安装
3. Yum在线安装:软件已经以RPM规范打包,但发布在了网络上的一些服务器上,可用yum在线安装服务器上的rpm软件,并且会自动解决软件安装过程中的库依赖问题
4. 源码编译安装:软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署。
1.2 上传与下载工具介绍:
1.2.1 FileZilla
1.2.2 1. lrzsz
我们可以使用yum安装方式安装:yum install lrzsz
注意:必须有网络
可以在crt中设置上传与下载目录
上传:rz
下载:sz 文件名
1.3 在Linux上安装JDK:
1.3.1步骤一:上传JDK到Linux的服务器
#上传jdk压缩包
# 查看jdk版本
java –version
# 查看安装的jdk信息
rpm -qa | grep java
# 卸载jdk
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.i686
1.3.2 步骤二:在Linux服务器上安装JDK.
* 通常将软件安装到/usr/local
* 直接解压就可以
tar –xvf jdk.tar.gz -C 目标路径
1.3.3 步骤三:配置JDK的环境变量:
# vi /etc/profile
# 在末尾行添加:
JAVA_HOME=/usr/local/jdk/jdk1.7.0_71
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
# source /etc/profile 使更改的配置立即生效
1.4 在Linux上安装Mysql:
1.4.1:将mysql的安装文件上传到Linux的服务器
1.4.2:将mysql的tar解压
1.4.3:安装MYSQL服务端
1.4.4:安装MYSQL客户端
1.4.5:设置root用户的密码:set password=password(root);
1.4.6:开启mysql服务:service mysql start
1.4.7:开启mysql远程访问:
grant all privileges on *.* to root @% identified by root;
flush privileges;
1.5 在Linux上安装tomcat:
1.5.1 Tomcat上传到linux上
1.5.2 将上传的tomcat解压
1.5.3 在tomcat/bin目录下执行 startup.sh(注意防火墙)
1.5.4 查看目标 tomcat/logs/catalina.out
1.6 在Linux上安装redis:
1.6.1 步骤一:安装gcc-c++
redis是C语言开发,安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境。
输入命令: yum install gcc-c++
1.6.2 步骤二:安装redis
1. 下载redis
wget
2. 解压
tar -xzvf redis-3.0.4.tar.gz
3. 编译安装、
切换至程序目录,并执行make命令编译:
cd redis-3.0.4
make
执行安装命令:
make PREFIX=/usr/local/redis install
make install安装完成后,会在/usr/local/bin目录下生成下面几个可执行文件,
它们的作用分别是:
redis-server:Redis服务器端启动程序
redis-cli:Redis客户端操作工具。也可以用telnet根据其纯文本协议来操作
redis-benchmark:Redis性能测试工具
redis-check-aof:数据修复工具
redis-check-dump:检查导出工具
1.6.3 步骤三:配置redis
复制配置文件到/usr/local/redis/bin目录:
cd redis-3.0.4
cp redis.conf /usr/local/redis/bin
1.6.4 步骤四:启动redis
进入redis/bin目录
cd redis/bin
启动redis服务端
./redis-server redis.conf
克隆新窗口,启动redis客户端
./redis-cli
二、Nginx
2.1 Nginx 是一款高性能的 http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
2.2 Nginx 应用场景:
1、Nginx可以独立提供 http 服务,可以做网页静态服务器。
2、虚拟主机:可以实现在一台服务器虚拟出多个网站,例如个人网站使用的虚拟主机。
3、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
2.3 Nginx在Linux下的安装:
2.3.1 安装 gcc 的环境:yum install gcc-c++
2.3.2 安装第三方的开发包PCRE:
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括perl兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库
yum install -y pcre pcre-devel
注:pcre-devel 是使用 pcre 开发的一个二次开发库。nginx 也需要此库。
2.3.3 安装zlib:
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装 zlib 库:
yum install -y zlib zlib-devel
2.3.4 安装OpenSSL:
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。nginx不仅支持 http协议,还支持https(即在 ssl 协议上传输 http),所以需要在linux安装openssl 库。
yum install -y openssl openssl-devel
2.3.5 Nginx安装:
步骤一:把nginx的源码包nginx-1.8.0.tar.gz上传到linux系统
步骤二:解压缩:tar zxvf nginx-1.8.0.tar.gz
步骤三:进入nginx-1.8.0目录,使用configure命令创建makeFile文件。
Makefile是一种配置文件,一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。
configure参数详解:
./configure \
--prefix=/usr/local/nginx \ 指向安装目录
--pid-path=/var/run/nginx/nginx.pid \ 指向pid
--lock-path=/var/lock/nginx.lock \ 安装文件锁定,防止误操作
--error-log-path=/var/log/nginx/error.log \ 指向log
--http-log-path=/var/log/nginx/access.log \ 指向http-log
--with-http_gzip_static_module \ 启用在线实时压缩输出数据流
--http-client-body-temp-path=/var/temp/nginx/client \ 设定http客户端请求临时文件路径
--http-proxy-temp-path=/var/temp/nginx/proxy \ 设定http代理临时文件路径
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ 设定http fastcgi临时文件路径
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ 设定http uwsgi临时文件路径
--http-scgi-temp-path=/var/temp/nginx/scgi 设定http scgi临时文件路径
步骤四:编译 make
步骤五:安装 make install
2.3.6 Nginx启动与访问
注意:启动nginx 之前,上边将临时文件目录指定为/var/temp/nginx/client,
需要在/var下创建此目录:
mkdir /var/temp/nginx/client -p
进入到Nginx目录下的sbin目录
cd /usr/local/ngiux/sbin
输入命令启动Nginx
./nginx
启动后查看进程
ps aux|grep nginx
关闭 nginx:
./nginx -s stop
或者
./nginx -s quit
重启 nginx:
1、先关闭后启动。
2、刷新配置文件:
./nginx -s reload
2.4 Nginx静态网站部署:
2.4.1 配置虚拟主机
虚拟主机,也叫“网站空间”,就是把一台运行在互联网上的物理服务器划分成多个“虚拟”服务器。虚拟主机技术极大的促进了网络技术的应用和普及。同时虚拟主机的租用服务也成了网络时代的一种新型经济形式。
2.4.2 端口绑定:
第一步:上传静态网站:
将/资料/静态页面/index目录上传至 /usr/local/nginx/index下
将/资料/静态页面/regist目录上传至 /usr/local/nginx/regist下
第二步:修改Nginx 的配置文件:/usr/local/nginx/conf/nginx.conf
server {
listen 81; # 监听的端口
server_name localhost; # 域名或ip
location / { # 访问路径配置
root index;# 根目录
index index.html index.htm; # 默认首页
}
error_page 500 502 503 504 /50x.html; # 错误页面
location = /50x.html {
root html;
}
}
server {
listen 82; # 监听的端口
server_name localhost; # 域名或ip
location / { # 访问路径配置
root regist;# 根目录
index regist.html; # 默认首页
}
error_page 500 502 503 504 /50x.html; # 错误页面
location = /50x.html {
root html;
}
}
2.4.3 域名绑定:
域名与IP绑定:
一个域名对应一个 ip 地址,一个 ip 地址可以被多个域名绑定。
本地测试可以修改 hosts 文件(C:\Windows\System32\drivers\etc)
可以配置域名和 ip 的映射关系,如果 hosts 文件中配置了域名和 ip 的对应关系,不需要走dns 服务器。
192.168.177.129 www.hmtravel.com
192.168.177.129 regist.hmtravel.com
做好域名指向后,修改nginx配置文件
server {
listen 80;
server_name www.hmtravel.com;
location / {
root cart;
index cart.html;
}
}
server {
listen 80;
server_name regist.hmtravel.com;
location / {
root search;
index search.html;
}
}
2.5 Nginx反向代理与负载均衡
2.5.1 什么是反向代理
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
2.5.2 什么是负载均衡
负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。