Linux常用软件的安装及Nginx的使用
主要内容:
- 软件安装方式
- 上传与下载工具
- 常用软件的安装--jdk、tomcat、mysql、redis
- 项目的部署
- Nginx的安装
- Nginx的功能
- 静态网站部署
- 虚拟主机配置及端口绑定
- 域名绑定
- 反向代理与负载均衡
一、Linux软件安装
1、目录结构
- ~表示root目录,即/root
- 软件安装在/usr/local下
2、软件安装方式
- 二进制发布包
软件已经针对具体平台编译打包发布,只要解压,修改配置即可【tar.gz或tar文件】
- RPM包
软件已经按照redhat的包管理工具规范RPM进行打包发布,需要获取到相应的软件RPM发布包,然后用RPM命令进行安装【wget】
- Yum在线安装
软件已经以RPM规范打包,但发布在了网络上的一些服务器上,可用yum在线安装服务器上的rpm软件,并且会自动解决软件安装过程中的库依赖问题【yum install xxx】
- 源码编译安装
软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署。【make install】
3、上传与下载工具
- FileZilla
- lrzsz
- 通过yum install lrzsz安装(yum镜像源配置不再支持CentOS6,推荐使用CentOS7)
- CentOS6镜像源无法使用的解决方案
- rz上传,sz下载(在SecureCRT中)
- SFTP:Alt+P快捷键(在SecureCRT中)
- put上传,get下载到文档
二、软件的安装
1、jdk
- 上传tar.gz文件到/usr/local/tomcat下
- 卸载自带jdk
* 上传JDK
* 卸载open-JDK
# 查看jdk版本
java –version
# 查看安装的jdk信息
rpm -qa | grep java
# 卸载jdk
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.i686
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.i686
- 解压安装
* 通常将软件安装到/usr/local
* 直接解压就可以
# 如 tar –xvf jdk.tar.gz -C 目标路径
tar –zxvf jdk-7u71-linux-i586.tar.gz -c ./jdk
- 配置环境变量
① vi /etc/profile
② 在末尾行添加
#set java environment
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 使更改的配置立即生效
2、MySQL
- 上传并解压
# 上传
cd /usr/local/
mkdir mysql
rz
# 解包
tar -xvf MySQL-5.6.22-1.el6.i696.rpm-bundle.tar
- 卸载默认MySQL
# 将系统自带的mysql卸载
rpm –qa | grep mysql
rmp -e --nodeps mysql-libs-5.1.73-5.el6_6.i686
- 安装客户端及服务器端
# 安装服务器端
rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm
# 安装客户端
rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm
- 查看初始密码并登录
# 查看初始密码
cat /root/.mysql_secret
# 启动MySQL服务
service mysql start
#登录
mysql -uroot -p初始的随机密码
# 设置root用户的密码
set password=password('root')
# 使用
show databases;
- 设置远程访问
# 1.关闭防火墙
service iptables stop;
# 2.也可以将防火墙打开3306端口
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables status
# 设置远程访问
grant all privileges on *.* to 'root' @'%' identified by 'root';
flush privileges;
3、Tomcat
- 上传解压
# 上传
rz
# 解压
tar -zxvf tomcat-5.tar.gz
- 运行并查看输出
# 运行
./startup.sh >> myLog.txt
# 停止
./shutdown.sh > myLog.txt
# 查看输出
tail tomcat/logs/catalina.out
cat tomcat/logs/catalina.out
4、redis
- 安装gcc依赖环境
yum install gcc-c++
- 下载解压
# 下载redis
wget http://download.redis.io/releases/redis-3.0.4.tar.gz
# 解压
tar -xzvf redis-3.0.4.tar.gz
- 编译安装
# 切换目录
cd redis-3.0.4
# 编译
make
# 安装
make PREFIX=/usr/local/redis install
- 配置并启动
# 复制配置文件到/usr/local/redis/bin目录
cd redis-3.0.4
cp redis.conf /usr/local/redis/bin
# 目录下的文件
redis-server:Redis服务器端启动程序
redis-cli:Redis客户端操作工具。
redis-benchmark:Redis性能测试工具
redis-check-aof:数据修复工具
redis-check-dump:检查导出工具
# 启动redis服务端
cd redis/bin
./redis-server redis.conf
# 克隆新窗口,启动客户端
./redis-cli
三、部署web项目到Linux
1. 修改pom配置
在pom.xml中添加<finalName>并修改jdk版本为1.7
2. 修改项目
2.1 druid.properties设置编码
2.2 header.html
2.3 route_detail.html
3. 使用package命令打包
4. 将travel.war上传到tomcat中的webapps目录
5. 重启tomcat
6. 导出本地mysql数据(结构和数据),并导入linux中的mysql
四、Nginx的安装与启动
1、介绍
Nginx 是一款高性能的http 服务器、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
能够支支撑 5 万并发链接,cpu、内存等资源消耗非常低,运行非常稳定。
2、应用场景
- http 服务器。Nginx 是一个 http 服务可以独立提供 http 服务。可以做网页静态服务器。
- 虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
- 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用 nginx 做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
3、安装
- 安装gcc环境
- 安装第三方开发包
# 安装PCRE(Perl库)
# 用来解析redis中http模块的正则表达式
yum install -y pcre pcre-devel
# 安装zlib
# 提供对http包的压缩和解压
yum install -y zlib zlib-devel
# 安装OpenSSL
# 套接字层密码库,支持http及https协议
yum install -y openssl openssl-devel
- 上传解压
- 创建Makefile文件(使用NotePad++的sftp连接22端口)
# 上传
mkdir /usr/local/nginx
rz
# 解压缩
tar zxvf nginx-1.8.0.tar.gz
# 创建MakeFile文件
cd nginx-1.8.0
./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
- 编译及安装
# 编译
make
# 安装
make install
- 启动与访问
# 创建临时文件对应的目录
mkdir /var/temp/nginx/client -p
# 进入启动目录sbin
cd /usr/local/ngiux/sbin
# 启动
./nginx
# 查看进程
ps aux|grep nginx
# 访问,地址栏输入ip即可(默认为80端口 )
192.168.30.128
- 关闭、重启及刷新
# 关闭Nginx
./nginx -s stop
# 正常退出
./nginx -s quit
# 刷新
./nginx -s reload
# 重启Nginx
./nginx -s stop
./nginx
./nginx -s reload
五、Nginx的功能
1、静态网站部署
将/资料/静态页面/index目录下的所有内容 上传到服务器的/usr/local/nginx/html下即可访问
2、虚拟主机配置
把一台运行在互联网上的物理服务器划分成多个“虚拟”服务器
2.1 端口绑定
- 上传静态网页到指定目录
将/资料/静态页面/index目录上传至 /usr/local/nginx/index下
将/资料/静态页面/regist目录上传至 /usr/local/nginx/regist下
修改Nginx 的配置文件
# 修改
vim /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;
}
}
访问测试
地址栏输入http://192.168.177.129/:81 可以看到首页面
地址栏输入http://192.168.177.129/:82 可以看到注册页面
2.2 域名绑定
- 域名级别
- 顶级域名
- 国家~:cn、us、jp
- 国际~:top、org、syz
- 二级域名:baidu.com、edu.cn、gov.cn
- 三级域名:apache.com.cn
- 顶级域名
- 与ip的绑定(一个ip可被多个域名绑定)
# 修改hosts 文件(C:\Windows\System32\drivers\etc)
# 配置后不需要经过DNS服务器
192.168.177.129 www.hmtravel.com
192.168.177.129 regist.hmtravel.com
- 修改Nginx配置文件
- 刷新配置并测试
# 修改配置文件
vi nginx.conf
# 具体内容
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;
}
}
# 刷新配置
./nginx -s reload
# 测试
http://www.hmtravel.com/
http://regist.hmtravel.com/
3、反向代理
- 概念:
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
- 与正向代理的区别
正向代理是针对你的客户端,而反向代理是针对服务器的
- 配置过程
将travel案例部署到tomcat中(package为ROOT.war,变为ROOT目录),上传到服务器。
启动TOMCAT,输入网址http://192.168.177.129:8080 可以看到网站首页
在Nginx主机修改Nginx配置文件
upstream tomcat-travel{
server 192.168.177.129:8080;
}
server {
listen 80; # 监听的端口
server_name www.hmtravel.com; # 域名或ip
location / { # 访问路径配置
# root index;# 根目录
proxy_pass http://tomcat-travel;
index index.html index.htm; # 默认首页
}
}
- 重启并测试
# 刷新
./nginx -s reload
# 测试
http://www.hmtravel.com
4、负载均衡
负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
- 准备工作
将刚才的存放工程的tomcat复制三份,修改端口分别为8080 ,8081,8082
分别启动这三个tomcat服务
在首页标题加上标记以便区分
- 修改配置文件
upstream tomcat-travel {
server 192.168.177.129:8080;
server 192.168.177.129:8081;
server 192.168.177.129:8082;
} server {
listen 80; # 监听的端口
server_name www.hmtravel.com; # 域名或ip
location / { # 访问路径配置
# root index;# 根目录
proxy_pass http://tomcat-travel; index index.html index.htm; # 默认首页
}
error_page 500 502 503 504 /50x.html; # 错误页面
location = /50x.html {
root html;
}
}
- 根据不同服务器性能修改负载权重
upstream tomcat-travel {
server 192.168.177.129:8080;
server 192.168.177.129:8081 weight=2;
server 192.168.177.129:8082;
}
- 访问,输入http:// www.hmtravel.com
作者介绍:安徽大学软件工程硕士在读,Email为ljh.ahu@qq.com,QQ为782593062,有问题欢迎与我交流
Linux常用软件的安装及Nginx的使用的更多相关文章
- 3.linux常用软件的安装方法
linux 上的软件不像windows上直接运行安装那么容易,在linux上有很多不同的安装包,大概常见的就有deb.tar.gz.tar.bz(tar.bz2).rpm等类型文件 1.deb文件安装 ...
- [转] ubuntu 一些常用软件的安装
首先说明一下 ubuntu 的软件安装大概有几种方式: 1. deb 包的安装方式deb 是 debian 系 Linux 的包管理方式, ubuntu 是属于 debian 系的 Linux 发行版 ...
- Linux下软件常见安装方式
pasting 分类: Linux2007-12-08 16:31 1909人阅读 评论(0) 收藏 举报 linuxredhat脚本文档managerfile Linux下软件安装主 ...
- 笔记:Linux下软件的安装、CentOS更新yum源、LAMP环境搭建、kali软件管理
一.Linux下软件的安装 方式:yum源 / rpm /源码安装 1.yum:(帮助管理员解决依赖关系) yum是通过分析rpm的包头数据后,根据各种软件的相关性质做出属性相对应的解决方案,然后可以 ...
- Linux 常用软件清单
Linux 常用软件清单 下面是Linux环境的一些软件(有些只是关键字,直接搜素即可): arch 系列的是 pacman -Ss <关键字> debian 系列的是 apt searc ...
- CentOS6安装各种大数据软件 第三章:Linux基础软件的安装
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Linux下软件的安装
想必linux新手刚开始对于linux软件安装很茫然吧,不知到怎么安装,软件到底安装在哪里,如果我需要删除软件怎么删除,配置文件到哪里去找. 想学习linux的话,最快上手的应该是Ubuntu,它特有 ...
- linux 基础 软件的安装 *****
一软件的安装 原代码与tarball 源代码---->编译------>可执行文件 查看文件类型 file命令 是否是二进制文件 注意如果文件的可执行权限 .c结尾的源文件- ...
- Linux 笔记 - 第九章 Linux 中软件的安装
博客地址:http://www.moonxy.com 一.前言 在 Linux 系统中,应用程序的软件包主要分为两种:1)第一种是二进制的可执行软件包,也就是解开包后就可以直接运行.在 Windows ...
- linux 学习-软件的安装
Linux软件的安装rpm -ivh安装软件全名 -i install 安装 -v verbose 显示详细信息 -h hash 显示进度 --nodeps 不检测依赖性(不推荐使用) rpm -U ...
随机推荐
- Spring 后置处理器【1】
Spring 后置处理器[1] 简单介绍 一句话:bean 在初始化前或初始化后的瞬间,我自己添加一些业务逻辑 bean 后置处理器类的内容 简单代码 package com.hspedu.sprin ...
- Django 之必知必会三板斧
一.HttpResponse 在django.http 模块中定义了HttpResponse 对象的API,HttpRequest 对象由Django 自动创建,不调用模板,直接返回数据. 1 在 a ...
- 学习完nio的一个小笔记吧
这是一个nio网络通信服务端的demo,主要就学习了selector的一些用法,以及它里面的事件类型 selector是对nio的一个优化,它能保证既能高效处理线程中的事件,又能保证线程不会一直占用c ...
- 1.通俗易懂理解Kubernetes核心组件及原理
文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247483736&idx=1&sn=0cbc3d6a ...
- Kubernetes(k8s)通过环境变量将 Pod 信息呈现给容器
Downward API 有两种方式可以将 Pod 和 Container 字段呈现给运行中的容器: 环境变量 卷文件 这两种呈现 Pod 和 Container 字段的方式统称为 Downward ...
- 一文入门Qt Quick
以下内容为本人的著作,如需要转载,请声明原文链接微信公众号「englyf」https://www.cnblogs.com/englyf/p/16733091.html 初识Qt Quick 很高兴可以 ...
- 洛谷P1253 [yLOI2018] 扶苏的问题 (线段树)
一道用来练习打标记的好题. 对于区间加和区间赋值两个操作分别用两个标记,分析如何打标记并下传标记(还是比较好分析的). 坑点:查询操作时,我一开始把ans设为-0x3f3f3f3f(调试了好久才发现) ...
- P1896 [SCOI2005] 互不侵犯 方法记录
原题链接 [SCOI2005] 互不侵犯 题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子 ...
- 关于从Ecplise导入项目到MyEclipse会出现冲突的原因。
昨天,从网上下了一个Eclipse的小项目导入到MyEclipse中,出现了许多错误. 原因如下. JDK的编译版本和JRE的运行版本不一致导致了这个问题. 在MyEclipse中,对项目进行Buil ...
- vue路由守卫用于登录验证权限拦截
vue路由守卫用于登录验证权限拦截 vue路由守卫 - 全局(router.beforeEach((to, from, next) =>来判断登录和路由跳转状态) 主要方法: to:进入到哪个路 ...