行业新闻

【学员笔记】LINUX随堂笔记(八): 第9章 mysql、Nginx+Tomcat服务

【学员笔记】LINUX随堂笔记(八): 第9章 mysql、Nginx+Tomcat服务

文章来源:知了堂冯老师原创

v2-eec5e37af1e4a1b398d537a7c1e7acab_hd.j

接上文

第9章 mysql、Nginx+Tomcat服务

一. MySQL

1.1 MySQL服务基础

1.1.1 MySQL的特点

多线程、多用户

基于C/S(客户端/服务器)架构

简单易用、查询速度快

安全可靠

1.1.2 所需软件安装包

1、ncurses-devel-5.7-3.20090208.el6.x86_64.rpm

2、cmake-2.8.6.tar.gz

3、mysql-5.5.22.tar.gz

1.1.3 MySQL主要安装步骤

1、卸载mysql-server,mysql,安装ncurses包

2、编译安装cmake包

3、源码编译及安装MySql

4、安装后的其他调整

5、添加为系统服务,启动服务

1.1.4 MySQL搭建配置命令

1.卸载mysql-server,mysql,安装ncurses包

# rpm -q mysql-server mysql //确认没有使用RPM方式安装mysql-server、mysql

# rpm -ivh ncurses-devel-5.7-3.20090208.el6.x86_64.rpm //安装ncurses-devel包

2.编译安装cmake包

# tar zxf cmake-2.8.6.tar.gz

# cd cmake-2.8.6

# ./configure

#gmake /备份路径/备份文件名

#mysql -u root -p test  /mysoft/mysql-user.sql

#mysql -u root -p  /mysoft/mysql.sql

二. Apache

2.1 Apache网站服务基础

2.1.1所需软件包

1、bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm

2、bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm

3、bind-libs-9.8.2-0.17.rc1.el6_4.6.x86_64

4、bind-utils-9.8.2-0.17.rc1.el6_4.6.x86_64 //安装dns

5、httpd-2.2.17.tar.gz //安装httpd服务器

6、awstats-7.3.tar.gz //安装AWStats分析系统

2.1.2 httpd服务的主要配置文件和目录

服务目录 /usr/local/httpd/

主配置文件 /usr/local/httpd/conf/httpd.conf

网页目录 /usr/local/httpd/htdocs/

服务脚本 /usr/local/httpd/bin/apachectl

执行程序 /usr/local/htppd/bin/httpd

访问日志 /usr/local/httpd/log/access_log

错误日志 /usr/local/httpd/log/error_log

2.2 httpd服务器安装

2.2.1httpd服务器主要安装步骤

1、卸载安装的httpd软件包

2、源码编译安装

3、优化执行路径

4、添加httpd系统服务

2.2.2httpd服务器的安装配置命令

1.卸载安装的httpd软件包

#rpm -qa httpd //查询已安装的httpd软件包

#rpm -e httpd -nodeps //若已安装,卸载

2.源码编译安装

#tar zxf httpd-2.2.17.tar.gz -C /usr/src/ //解压httpd软件包

#cd /usr/src/httpd-2.2.17

#./configure --prefix=/usr/local/httpd --enable-so

--enable-rewrite --enable-charset-lite --enable-cgi

#make html>

head>

meta http-equiv=refresh content="0;

url=http://www.benet.com/awstats/awstats.pl?config=www.benet.com">

/head>

body>/body>

/html> //建立自动跳转html网页

http://test.benet.com/awb.html

2.5 httpd服务访问控制限制

2.5.1客户端地址限制

#vim /usr/local/httpd/conf/httpd.conf

Directory "/usr/local/awstats/wwwroot">

……

Order deny,allow //定义控制顺序

deny from 192.168.37.130 //设置拒绝地址

/Directory>

2.5.2 用户授权限制

1. 创建用户认证数据库

# cd /usr/local/httpd/

# bin/htpasswd -c /usr/local/httpd/conf/.awspwd webadmin

//-c新建文件 不加则是新增用户

# cat /usr/local/httpd/conf/.awspwd

# bin/htpasswd /usr/local/httpd/conf/.awspwd webuser1

2. 在主配置文件中添加用户授权配置

# vim /usr/local/httpd/conf/httpd.conf

Directory "/usr/local/awstats/wwwroot">

……

AuthName "AWStats Directory"

AuthType Basic //认证类型为基本认证

AuthUserFile /usr/local/httpd/conf/.awspwd //认证文件路径

require valid-user //允许访问的用户

/Directory

3. 启服务,测试访问

# /usr/local/httpd/bin/apachectl restart

2.6构建虚拟主机

2.6.1基于域名的虚拟主机

#vim /etc/named.conf

options{

directory"/var/named";

};

zone "http://benet.com"IN{

type master;

file "benet.com.zone";

allow-transfer{192.168.37.131;};

};

zone "37.168.192.in-addr.arpa"IN{

type master;

file "192.168.37.arpa";

allow-transfer{192.168.37.131;};

};

zone "http://accp.com"IN{

type master;

file "accp.com.zone";

};

# vim var/named/accp.com.zone

$TTL 86400

@ SOA accp.com. admin.accp.com. (

2011030301 //更新序列号

4H //刷新时间

30M //重试延迟

12H //失效时间

1D //无效解析记录的生存周期

)

@ IN NS http://www.benet.com.

test IN A 192.168.37.131

建立测试网页

# mkdir -p /var/www/html/benetcom

# mkdir -p /var/www/html/accpcom

# echo "h1>http://www.benet.com/h1>" > /var/www/html/benetcom/index.html

# echo "h1>http://www.accp.com/h1>" > /var/www/html/accpcom/index.html

添加独立的虚拟主机配置文件

#vim /usr/local/httpd/conf/extra/httpd-vhosts.conf

Directory "/var/www/html">

Order allow,deny //定义访问控制顺序,先允许后拒绝,默认拒绝所有

Allow from all //允许所有人访问此区域

/Directory>

NameVirtualHost 192.168.37.131 //添加虚拟主机名

VirtualHost 192.168.37.131>

DocumentRoot /var/www/html/benetcom //文档根目录

ServerName http://test.benet.com //网站名

ErrorLog logs/www.benet.com.error_log //错误日志保存目录

Customlog logs/www.benet.com.access_log common //访问日志保存目录

/VirtualHost>

VirtualHost 192.168.37.131>

DocumentRoot /var/www/html/accpcom

ServerName http://test.accp.com

ErrorLog logs/www.benet.com.error_log

Customlog logs/www.benet.com.access_log common

/VirtualHost>

在主配置文件中加独立配置文件

# vim /usr/local/httpd/conf/httpd.conf

Include conf/extra/httpd-vhosts.conf

2.6.2基于ip地址的虚拟主机

#ifconfig eth1 192.168.37.133/24

#ifconfig eth2 192.168.37.134/24 //分别为网卡配置ip地址

建立dns解析

#vim /etc/named.conf

zone "http://test1.com" IN {

type master;

file "test1.com.zone";

};

zone "http://test2.com" IN {

type master;

file "test2.com.zone";

};

#vim /var/named/test1.com.zone

$TTL 86400

@ SOA test1.com. admin.test1.com. (

2011030301

4H

30M

12H

1D

)

@ IN NS http://www.benet.com.

www IN A 192.168.37.133

#vim /var/named/test2.com.zone

$TTL 86400

@ SOA test2.com. admin.test2.com. (

2011030301

4H

30M

12H

1D

)

@ IN NS www.benet.com.

www IN A 192.168.37.134

建立测试网页

# mkdir /var/www/html/test1com

# mkdir /var/www/html/test2com

# echo "h1>http://www.test1.com/h1>" > /var/www/html/test1com/index.html

# echo "h1>http://www.test2.com/h1>" > /var/www/html/test2com/index.html

添加独立的虚拟主机配置文件

#vim /usr/local/httpd/conf/extra/httpd-iphosts.conf

Directory "/var/www/html">

Order allow,deny

Allow from all

/Directory>

VirtualHost 192.168.37.133> //配置虚拟主机

DocumentRoot /var/www/html/test1com

ServerName http://www.test1.com

ErrorLog logs/www.test1.com.error_log

Customlog logs/www.test1.com.access_log common

/VirtualHost>

VirtualHost 192.168.37.134>

DocumentRoot /var/www/test2/accpcom

ServerName http://www.test2.com

ErrorLog logs/www.test2.com.error_log

Customlog logs/www.test2.com.access_log common

/VirtualHost>

在主配置文件中加载独立配置文件

# vim /usr/local/httpd/conf/httpd.conf

Include conf/extra/httpd-iphosts.conf

一. nginx+tomcat负载均衡

3.1 拓补图

v2-972f2be3d32d3f7456f885f232f73f44_hd.j

3.2 服务环境

Server1、Server2以Tomcat作为应用服务器,需配置java环境

Server3以Nginx作为负载均衡器

三台服务器为Centos操作系统

3.3 所需软件安装包

1、jdk-7u65-linux-x64.gz

2、apache-tomcat-7.0.54.tar.gz

3、pcre-devel

4、zlib-devel

5、 openssl-devel

6、nginx-1.6.0.tar.gz

3.4 Tomcat配置

3.4.1 Tomcat主要目录及配置文件

bin/:存放启动和关闭Tomcat的脚本文件

conf/:存放服务器的各种全局配置文件,如server.xml、web.xml

lib/:存放Tomcat运行需要的库文件(JARS包文件)

logs/:存放Tomcat相关的日志文件

webapps/:Web应用的发布目录,默认把Web应用文件放于此目录

work/:Tomcat的工作目录,默认存放编译JSP文件生成的servlet类文件

temp/:存放Tomcat运行的临时文件

3.4.2主要配置文件说明

catalina.policy:权限控制配置文件

catalina.properties:Tomcat属性配置文件

context.xml:配置web应用部署时的物理目录与虚拟目录的映射等。

logging.properties:日志log相关配置文件

server.xml:主配置文件

tomcat-users.xml:配置Tomcat的管理用户(通过web来管理和查看tomca

运行情况以及部署的webApp)

web.xml:Web应用程序描述文件是Web应用程序的配置文件

3.4.3 tomcat主要配置步骤(需配置2台)

1、安装jdk,配置Java环境

2、安装配置tomcat

3、建立java的web测试站点

3.4.5 Tomcat配置命令

1.安装jdk,配置Java环境

#tar xf jdk-7u65-linux-x64.gz //解压jdk软件包

#mv jdk1.7.0_65/ /usr/local/java //移动解压的jdk包到指定路径

#vim /etc/profile.d/java.sh //建立java.sh脚本

export J**A_HOME=/usr/local/java

export PATH=$PATH:$J**A_HOME/bin //在PATH环境变量中添加java根目录下的/bin子目录

#source /etc/profile.d/java.sh //执行java.sh脚本

#java -version //查看java版本

#rpm -qa | grep java //查看是否安装java

#rpm -e --nodeps tzdata-java-2012c-1.el6.noarch

2.安装配置tomcat

#tar zxvf apache-tomcat-7.0.54.tar.gz

#mv apache-tomcat-7.0.54 /usr/local/tomcat7

#/usr/local/tomcat7/bin/startup.sh //启动tomcat,重启要添加自动启动rc.local

#netstat -anpt | grep 8080 //tomcat默认运行端口为8080

登录 http://192.168.1.1:8080 测试Tomcat成功

3.建立java的web测试站点

#mkdir –pv /web/webapp1

#vim /web/webapp1/index.jsp

%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>l

html>

head>

title>JSP test1 page/title>

/head>

body>

% out.println("Welcom to test site,http://www.test1.com");%>

body>

/html>

#vim /usr/local/tomcat7/conf/server.xml

Host name="localhost" appBase="webapps"

unpackWARs="true" autoDeploy="true">

Context docBase="/web/webapp1" path="" loadable="false" >

/Context>

3.5 nginx服务器配置

3.5.1建立yum源

#mkdir /media/cdrom

#mount /dev/cdrom /media/cdrom

#vim /etc/yum.repos.d/local.repo

[local]

name=RHEL DVD

baseurl=file:///media/cdrom

enabled=1

gpgcheck=0

#yum -y install pcre-devel zlib-devel openssl-devel //安装相关软件包

3.5.2解压并安装nginx

#groupadd www //创建组

#useradd -g www www -s /bin/false //创建用户

# tar zxf nginx-1.6.0.tar.gz

#cd nginx-1.6.0

#./configure --prefix=/usr/local/nginx --user=www --group=www

--with-file-aio --with-http_stub_status_module --with-http_gzip_static_module

--with-http_flv_module --with-http_ssl_module

#make //指定服务器及权重

server 192.168.1.2:8080 weight=1;

}

location / {

root html;

index index.html index.htm;

proxy_pass ="http://tomcat_server/">http://tomcat_server; //设置转发的服务器

}

# /usr/local/nginx/sbin/nginx -t //测试nginx配置文件

3.5.4启动nginx服务

#/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

#killall -s HUP nginx

# ps aux | grep nginx //查看nginx服务进程

# netstat -anpt | grep nginx //查看端口号及PID进程号

-------------------------------------------end----------------------------------------

v2-be7b3a919d240f369cef3d85db776fa7_hd.j



信安干货,请关注专栏:https://zhuanlan.zhihu.com/c_1142392164838404096

关闭