文档章节

linux环境安装部署mark

 平行世界中
发布于 2016/08/11 17:19
字数 1529
阅读 39
收藏 0

以下linux环境的安装部署,其中碰到不少坑,这里MARK下。

linux运营一个网站,需要安装的东西基本如下:

===============================================================================

1.安装JDK

===============================================================================

安装jdk首先要下载:

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u71-b14/jdk-7u71-linux-x64.rpm

这是用wget命令来下载的

如果之前已经安装了就先卸载,卸载OpenJDK,执行以下操作:

[root@admin local]# rpm -e --nodeps tzdata-java-2012c-1.el6.noarch
[root@admin local]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.x86_64

注意替换版本号

安装:

[root@admin local]# rpm -ivh jdk-7-linux-x64.rpm

安装后,/usr/目录下会多出一个java目录,里面包含jdk

ok,执行 javac跟java -version命令查看是否已经安装,这个基本没碰到坑

然后添加环境变量,因为tomcat跟maven需要

执行命令:

[root@admin local]# vi + /etc/profile

 

然后在里面添加以下内容:

JAVA_HOME=/usr/java/jdk1.7.0
JRE_HOME=/usr/java/jdk1.7.0/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

注意对应jdk路径

然后执行以下命令让修改后的profile文件生效,切记不要忘记:

[root@admin local]# source /etc/profile

 

执行 echo $PATH 命令查看是否已经生效(出现jdk目录下的bin目录就说明生效了,如下):

[root@admin local]# echo $PATH
/usr/local/cmake/bin:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/java/jdk1.7.0/bin:/usr/java/jdk1.7.0/jre/bin:/root/bin

OK,到此,JDK就安装完成了,接下来安装apache tomcat7

===============================================================================

2.安装apache tomcat:

===============================================================================

 

下载:wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-7/v7.0.70/bin/apache-tomcat-7.0.70.tar.gz

然后将下载后的tar.gz文件复制到 /usr/local/目录下,如下命令:

[root@admin local]# cp /apache-tomcat-7.0.70.tar.gz  /usr/local/ 

 

进入/usr/local/目录解压tar.gz文件,如下命令:

[root@admin local]# tar -zxvf /apache-tomcat-7.0.70.tar.gz

解压后,如果需要修改文件名,执行命令:

[root@admin local]# mv  /apache-tomcat-7.0.70.tar.gz  tomcat1

这样就把目录改成tomcat1了

接下来修改tomcat对应项目

进入到tomcat中的conf目录,vi server.xml

在<Host>节点中添加<Context docBase="项目路径" path="项目访问目录" />

这样就可以了,至此,tomcat就完事了

===============================================================================

3.接下来安装nginx,这个坑比较多

===============================================================================

首先,nginx有很多依赖,需要先安装依赖,因为用的Centos 6.5,所以直接用yum命令就OK了

如下命令安装依赖,这些都是必须的,不过首先要看系统中是否已经有这些了,有的话就卸载了再安装,

当然,不卸载而是执行yum命令的时候不去下载也可以,但是我没试过。

[root@admin local]# yum install autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc

执行这个命令,等待一会就可以了。

然后下载nginx跟nginx缓存包

[root@admin local]# wget http://nginx.org/download/nginx-1.7.8.tar.gz

 

[root@admin local]# wget http://labs.frickle.com/files/ngx_cache_purge-2.2.tar.gz

这里需要注意的是,版本号一定要对应我这里的,不然安装不了,这个坑踩了

然后将解压,命令跟上面解压tomcat一样,然后进入nginx-1.7.8目录安装nginx

如下命令:

[root@admin local]# ./configure --user=www --group=www \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-mail \
--with-mail_ssl_module \
--add-module=../ngx_cache_purge-2.2

安装过程后,没有出现error就是成功,出现了,就是不成功,不成功的话,就重来吧。
然后继续在这个目录执行安装命令:

[root@admin nginx-1.7.8]# make & make install

同样的,没出现error就是安装成功。

安装成功后,/usr/local/目录下会多出一个 nginx目录

注意:nginx的配置是在/usr/local/nginx/conf下的nginx.conf,而不是一开始解压的那个目录。

启动nginx:进入/usr/local/nginx/sbin/执行  ./nginx -s reload 启动,如果没异常,就什么都没有,

有异常的话,会出现erro这样的异常信息。

 

异常1:nginx: [emerg] getpwnam(“www”) failed,

解决方式:

[root@admin local]# /usr/sbin/groupadd -f www

 

[root@admin local]# /usr/sbin/useradd -g www www

 

异常2:nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed

解决方式:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

上面这些都是直接把命令复制过去执行就可以了,然后在启动nginx就可以了,然后访问80端口出现nginx

欢迎页面就是启动成功了!

以上用的是nginx默认配置,至于nginx配置这里贴一段nginx缓存+接口定向转发+整合websocket的配置,其他的> www.baidu.com

 map $http_upgrade $connection_upgrade {//配置websocket
        default upgrade;
        ''      close;//就是一个单引号的空字符串
    }

proxy_cache_path   /tmp/cache   keys_zone=tmpcache:10m;//配置cache

server {

        listen       80;//监听80端口的转发
        server_name  www.**.com;//域名或者ip地址或者localhost

    location / {//一般地址都跳转到8080端口
            proxy_pass http:// www.**.com:8080/;
            proxy_cache        tmpcache;
            proxy_cache_key        $uri$is_args$args;
            proxy_cache_purge    PURGE from 127.0.0.1;

            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location /websocket {//websocket的跳转到8020端口
            proxy_pass http:// www.**.com:8020/websocket/;

            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_http_version 1.1;//配置websocket的
            proxy_set_header Upgrade $http_upgrade;//配置websocket的
            proxy_set_header Connection "upgrade";//配置websocket的
        }

ok,nginx就算完工了。接下来是mysql。。。

===============================================================================

4.mysql的安装

===============================================================================

二话不说,不管之前有没有,先执行卸载命令

[root@admin local]# rpm -e --nodeps mysql  // 强力删除模式

 

然后直接用yum命令下载安装:

[root@admin local]# yum install -y mysql-server mysql mysql-deve

出现Complete就是ok了

启动 mysql命令:

[root@admin local]# service mysqld start

出现ok就说明启动成功了,重启或者停止把start改成 restart或者stop就可以了

然后修改端口(需要的话):进入到 /etc/,执行vi my.cnf 加入或者修改port=端口号

然后进入mysql控制命令:

[root@admin local]# mysql -u root

新增database  :

mysql> create database 数据库名字;

切换到刚新增的那个数据库:

mysql> use 数据库名字;

导入sql文件:

mysql> set names 'utf8';

mysql> source sql文件路径;

 

ok,mysql基本完事了

然后是配置下防火墙,不然外网访问不了:

防火墙增加端口:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 端口号 -j ACCEPT
service  iptables  status        查看防火墙状态
service  iptables  start/stop/restart           开启/关闭/重启防火墙

 

====================================================================

感觉好繁琐,看以后能不能找个大神弄个自动化。。。

 

 

 

© 著作权归作者所有

粉丝 2
博文 3
码字总数 2453
作品 0
广州
后端工程师
私信 提问
第1章 容器技术和Docker简介

容器技术。docker。 到底什么是docker? 虚拟机和容器的区别。创建虚拟机,不同应用在不同虚拟机内进行隔离。容器技术进行隔离。 不需要虚拟化这一层虚拟的操作系统,只需要在本地操作系统之...

天涯明月笙
2018/07/09
0
0
2- 快速上手Linux玩转典型应用- 搭建Linux环境

3- 搭建Linux环境 虚拟机是什么? 个人电脑与服务器的最大区别是没有公网ip。 virtualBox 和 VMwarestation virtualBox & xshell 下载安装 注意: 电脑支持虚拟化 ,BIos中开启虚拟化 virtua...

天涯明月笙
2018/06/21
0
0
第二章 docker的多种系统安装

社区版 和 企业版的选择。 社区版又有不同的版本号。 1.x直到1.13 变成年份+月份的规划。 17.09版本,一个季度发布一个版本。 docker支持mac windows win10 云平台,aws Microsoft Azure Goo...

天涯明月笙
2018/07/11
0
0
Ubuntu 转投 GNOME,Linux 社区对此怎么看?

Canonical,这家 Ubuntu 背后的公司,在许多年前放弃了 GNOME 桌面环境转到 Unity。但其创始人 Mark Shuttleworth 日前公开宣布了 GNOME 的回归——明年发布的 Ubuntu 18.04 将搭载 GNOME 而...

两味真火
2017/04/12
5K
30
RHEL6.5安装 Oracle 11g + udev + ASM安装部署详解

RHEL6.5安装 Oracle 11g + udev + ASM安装部署详解 [日期:2017-05-26] 来源:Linux社区 作者:sound [字体:大 中 小] 最近在学Oracle体系结构等理论知识,在这里总结RHEL6.5下安装 Oracle...

rootliu
2018/11/20
83
0

没有更多内容

加载失败,请刷新页面

加载更多

ReentrantLock的可重入特性

在自旋分布式锁实现 中我们已经分析了ReentrantLock的自旋特性,现在我们来分析一下它的可重入特性。 可重入特性其实说白了就是当获得锁的线程解锁后,重新来获取锁的时候会判断自己以前是否...

算法之名
38分钟前
5
0
js如何控制table中的某一行动态置顶

两行代码搞定: $('#'+item.roadCode).fadeOut().fadeIn();//获取到需要置顶的行 $(".table").prepend($('#'+item.roadCode)); 其中,fadeOut()方法 作用 --- 从可见到隐藏 如下: prepend(......

码妞
今天
4
0
四种解决Nginx出现403 forbidden 报错的方法

我是在在本地用虚拟机中通过yum安装nginx的,安装一切正常,但是访问时报403, 于是查看nginx日志,路径为/var/log/nginx/error.log。打开日志发现报错Permission denied,详细报错如下: 1....

dragon_tech
今天
3
0
获取RestResultResponse返回的值

Springboot项目,需要调其他服务的接口,返回值类型是RestResultResponse 打断点的结果集是这个 打印出来的getData(): [{id=3336b624-8474-4dd9-bd5b-c7358687c877, paraNo=104, para=Postpo...

栾小糖
今天
4
0
【小学】 生成10以内的加减法

#!/usr/bin/env python# coding: utf-8from random import randrange# 题目的最大数值R_MAX = 10# 生成的题目的数量R_PAGE = 70# 生成减法列表def get_sub_list():...

Tensor丨思悟
今天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部