0543-实践配置apahe服务并实现基于虚拟主机的实践

1    apache下载:

登录官网:http://www.apache.org/ 根据下图提示下载

下载版本为: httpd-2.2.34.tar.gz    (二进制源码)

2    在web02机器配置、编译、安装apache

2.1    apache 安装

####apache httpd安装步骤(源码编译安装)####

mkdir -p /home/oldboy/tools/
cd /home/oldboy/tools/
wget https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.2.34.tar.gz
tar xf httpd-2.2.34.tar.gz
cd httpd-2.2.34  #进入源码包里面才可以配置、编译、安装。
#less INSTALL #查看安装指导
#less README  #查看说明
yum install zlib zlib-devel -y
#C语言源码编译前配置
./configure --prefix=/application/apache2.2.34 --enable-deflate --enable-expires --enable-headers --enable-modules=most --enable-so --with-mpm=worker --enable-rewrite
#源码编译成二进制,是写的过程,速度慢。
make #编译的过程,(编译完成后最后一行是:make[1]: Leaving directory `/home/oldboy/tools/httpd-2.2.34‘说明已经编译完成)
#二进制安装过程,属于拷贝过程,速度快。
make install #拷贝的过程(安装后最后一行是make[1]: Leaving directory `/home/oldboy/tools/httpd-2.2.34‘说明已经安装完成)

2.2    apache编译安装后配置(配置三个虚拟主机站点)

ln -s /application/apache2.2.34/ /application/apache
ll /application/apache/
[[email protected] httpd-2.2.34]# cd /application/apache/htdocs
[[email protected] htdocs]# mkdir bbs www blog
[[email protected] htdocs]# cd /application/apache/conf/
[[email protected] conf]# ll
总用量 92
drwxr-xr-x 2 root root  4096 8月  27 21:57 extra
-rw-r--r-- 1 root root 13956 8月  27 21:57 httpd.conf
-rw-r--r-- 1 root root 12958 8月  27 21:57 magic
-rw-r--r-- 1 root root 53015 8月  27 21:57 mime.types
drwxr-xr-x 3 root root  4096 8月  27 21:57 original

[[email protected] conf]# vim httpd.conf 把#Include conf/extra/httpd-vhosts.conf这行的#注释去掉。把98行的#ServerName www.example.com:80修改为ServerName 127.0.0.1:80

[[email protected] conf]# vim /application/apache/conf/extra/httpd-vhosts.conf
把<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/application/apache2.2.34/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error_log"
    CustomLog "logs/dummy-host2.example.com-access_log" common
</VirtualHost>
修改为:
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/application/apache2.2.34/htdocs/www"
    ServerName www.etiantian.org
    ServerAlias etiantian.org
    ErrorLog "logs/www-error_log"
    CustomLog "logs/www-access_log" common
</VirtualHost>

#VirtualHost全部配置如下所示:
[[email protected] conf]# tail -36 /application/apache/conf/extra/httpd-vhosts.conf   #
# Use name-based virtual hosting.
#
NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/application/apache2.2.34/htdocs/www"
    ServerName www.etiantian.org
    ServerAlias etiantian.org
    ErrorLog "logs/www-error_log"
    CustomLog "logs/www-access_log" common
</VirtualHost>
#
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/application/apache2.2.34/htdocs/bbs"
    ServerName bbs.etiantian.org
    ErrorLog "logs/bbs-error_log"
    CustomLog "logs/bbs-access_log" common
</VirtualHost>
#
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/application/apache2.2.34/htdocs/blog"
    ServerName blog.etiantian.org
    ErrorLog "logs/blog-error_log"
    CustomLog "logs/blog-access_log" common
</VirtualHost>

检查语法:
[[email protected] conf]# ../bin/apachectl -t
Syntax OK  #这个OK的标志是检查apache的语法没有错误

启动apache
[[email protected] htdocs]# /application/apache/bin/apachectl start

如果apache已经启动了,优雅重新apache
[[email protected] htdocs]# /application/apache/bin/apachectl graceful

3    验证配置的三个虚拟主机站点是否可以正常登陆(在web01机器上面测试)

在web01上面测试apache先添加hosts文件解析
[[email protected] ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.1.5      lb01
172.16.1.6      lb01
172.16.1.7      web02 www.etiantian.org etiantian.org blog.etiantian.org bbs.etiantian.org
172.16.1.8      web01 
172.16.1.51     db01 db01.etiantian.org
172.16.1.31     nfs01
172.16.1.41     backup
172.16.1.61     m01
[[email protected] ~]# curl -I www.etiantian.org    ##403错误代表没有首页
HTTP/1.1 403 Forbidden
Date: Sun, 27 Aug 2017 14:56:47 GMT
Server: Apache/2.2.34 (Unix) DAV/2
Content-Type: text/html; charset=iso-8859-1

在web02虚拟主机站点服务器给各个站点添加首页:
[[email protected] htdocs]# vi /application/apache/conf/httpd.conf 把Options Indexes FollowSymLinks修改为Options -Indexes FollowSymLinks
[[email protected] htdocs]# echo ‘apache www‘ >www/index.html
[[email protected] htdocs]# echo ‘apache bbs‘ >bbs/index.html   
[[email protected] htdocs]# echo ‘apache blog‘ >blog/index.html  

在web01上面继续测试:继续curl虚拟主机站点
[[email protected] ~]# curl www.etiantian.org
apache www        #测试OK
[[email protected] ~]# curl bbs.etiantian.org
apache bbs        #测试OK
[[email protected] ~]# curl blog.etiantian.org
apache blog       #测试OK
[[email protected] ~]# curl -I www.etiantian.org
HTTP/1.1 200 OK    #测试OK
Date: Sun, 27 Aug 2017 16:20:55 GMT
Server: Apache/2.2.34 (Unix) DAV/2
Last-Modified: Sun, 27 Aug 2017 14:59:40 GMT
ETag: "204c4-b-557bd6d7606d8"
Accept-Ranges: bytes
Content-Length: 11
Content-Type: text/html

如上测试结果说明三个虚拟主机站点www.etiantian.org、blog.etiantian.org、bbs.etiantian.org都已配置OK了。

######
./configure
--prefix=/application/apache2.2.34
--enable-deflate
--enable-expires
--enable-headers
--enable-modules=most
--enable-so
--with-mpm=worker
--enable-rewrite

虚拟主机配置:
域名 站点目录
www.etiantian.org /application/apache/htdocs/www
blog.etiantian.org /application/apache/htdocs/blog
bbs.etiantian.org /application/apache/htdocs/bbs
时间: 2024-08-09 13:24:42

0543-实践配置apahe服务并实现基于虚拟主机的实践的相关文章

Nginx提供网站服务应用包括(虚拟主机、用户访问控制、用户验证、nginx平滑升级、防盗链)的配置

Nginx   开源且跨平台的软件    俄罗斯人开发的   提供网站服务  和  代理服务 Nginx 提供网站服务应用环境? 1.虚拟主机2.用户访问控制3.用户验证4.防盗链 实验环境: 安装软件:nginx-0.855.tar.gz 操作系统:centos6.5 实验:(一) 实验目的:nginx源码包的安装以及基本的使用. 安装源码包要安装的工具:开发工具 和开发环境 1.安装nginx源码包 建立ngix软件夹用来存放nginx软件包 添加一个进程的所有者和所属组为www,www为n

HAProxy详解(三):基于虚拟主机的HAProxy负载均衡系统配置实例【转】

一.基于虚拟主机的HAProxy负载均衡系统配置实例 1.通过HAProxy的ACL规则配置虚拟主机: 下面将通过HAProxy的ACL功能配置一套基于虚拟主机的负载均衡系统.这里操作系统环境为:CentOS release 6.7,HAProxy版本为haproxy-1.4.24,要实现的功能如图: 本实例有一个电商网站服务器群.一个论坛服务器群.一个博客服务器群和默认服务器群,4个服务器群都由多台服务器组成,而4个服务器群又组成了一个应用服务器群组,在每个服务器群的前端有一个基于HAProx

01 安装apache php配置 时区 环境变量 安装mysql 虚拟主机 文件夹访问权限 目录别名

php介绍 简介与历史 应用领域: php运行环境 php语言运行原理 安装apache: PHP的命令行运行模式(独立运行): 配置apache以运行php网页 配置php的基本运行环境 确定php配置文件(php.ini)的位置: 配置时区: 设置环境变量 检测apache配置文件语法 配置数据库连接机制 安装mysql数据库 虚拟主机配置 端口监听: 主机配置关键项 配置文件夹访问权限 主机别名设置 文件夹访问控制的文件控制方式 目录别名设置Alias 多站点配置: php介绍 简介与历史

邮件服务系列之四基于虚拟用户的虚拟域的邮件系统(安装courier-authlib以及部分配置方法)

要受使用Mutt必须安装一个收邮件的代理,例如dovecot,配置完成之后启动服务, Mutt用户的邮件代理 mutt -f 指定用户的邮箱,路径,一般指定对应的协议即可访问, mutt用户的界面如下所示,是纯文本界面 具体的使用如下所示 #mutt -f pop://[email protected] 出现如下所示的界面,输入对应的密码 登陆以后出现一个界面 根据提示可以进行简单的查看以及收发删除邮件的操作,是一个很方便使用的纯文本的邮件收发系统 虚拟主机,虚拟域 1.web服务器中虚拟主机:

基于虚拟主机的HAProxy配置实战

本实例是如上图所示 主要实现的功能如下: 当客户访问www.tb.com/tb.com的时候HAProxy将网站提交到电商服务器集群当访问bbs.tb.com的时候,将访问请求调度到论坛集群,实现论坛负载均衡,当访问blog.tb.com的时候,将请求调度到博客服务器集群,实现博客集群的负载均衡,除了上面三种请求外,就将请求调度到缺省的其他服务器集群HAProxy的安装很简单,见 下面主要是来配置它 1 global 2 log 127.0.0.1 local0 info 3 maxconn 4

搭建FTP/NFS服务(vsftpd基于虚拟用户的访问形式)

题目:搭建一套文件vsftp文件共享服务,共享目录为/ftproot,要求:(描述完整的过程) 1)基于虚拟用户的访问形式: 2)匿名不允许上传: 3)禁锢所有的用户于其家目录当中: 4)限制最大并发连接数为200: 5)匿名用户的最大传输速率512KB/s: 6)虚拟用户的账号存储在mysql数据库当中. 7)数据库通过NFS进行共享. 搭建环境: FTP/NFS服务器:192.168.10.99 (CentOS 7) 搭建FTP/NFS详细过程: 1.配置vsftpd基于pam_mysql的

Apache2.4版本环境下基于虚拟主机、ssl、用户控制

环境说明:此篇博客是基于编译安装httpd2.4博客基础上进行的 一.虚拟主机: 1.1基于host [[email protected] apache]# vim/etc/httpd24/httpd.conf Include/etc/httpd24/extra/httpd-vhosts.conf   #开启虚拟主机 #DocumentRoot"/www/htdocs"    #将中心主机注释掉 [[email protected] apache]# cd/etc/httpd24/ex

配置httpd结合php及默认虚拟主机

一.配置httpd支持php1?httpd的主配制文件: /usr/local/apache/conf/httd.conf1?在我们安装好httpd之后,会有一个提示set ServerName,我们进入以上这个配制文件,把Servername前面的#号去掉,然后注释掉一个php,这样就不会提示出错了.2?增加一行配制:Require all granted 如果不加这一行,访问是403我们要首先要ping 下80端口是不是通的,临时让linux防火墙开启80端口: iptables -I IN

nginx的高级配置(1)——为某个虚拟主机添加用户验证

版本:centos6.5 ; mysql-5.6.26 ;nginx-1.6.3 ;php-5.4.37 环境架构:LNMP 1.配置第二个虚拟主机 可以在nginx.conf 加一行 include  vhosts/*.conf; 这样,我们就可以在 /usr/local/nginx/conf/vhosts目录下创建虚拟主机配置文件了. #mkdir /usr/local/nginx/conf/vhosts #cd !$ #vim  111.conf   // 加入 server server