httpd服务配置与部署

1.编译安装httpd-2.4
2.配置三种不同风格的虚拟主机
1 相同Ip不同端口
2相同端口不同ip
3相同IP相同端口不同域名
实验环境说明:**

主机名 操作系统 ip地址
[email protected] ~ rhel7 192.168.43.199

更改主机名,关掉防火墙和selinux。

     [[email protected] ~]# systemctl stop firewalld.service
   [[email protected] ~]#  setenforce 0
   [[email protected] ~]# getenforce
   Permissive*

#安装开发环境

 [[email protected] ~]# yum groupinstall "Development Tools" -y
 过程略.......
 [[email protected] ~]# yum -y install openssl-devel pcre-devel expat-devel lib tool
 过程略......
 #下载并安装apr-1.4+apr-util-1.4

 [[email protected] src]# wget http://mirrors.shu.edu.cn/apache//apr/apr-1.6.3.tar.bz2
 过程略
 [[email protected] src]# wget http://mirrors.shu.edu.cn/apache//apr/apr-util-1.6.1.tar.bz2
 过程略

#下载完成后对其进行解压

 [[email protected] src]# ls
apr-1.6.3.tar.bz2  apr-util-1.6.1.tar.bz2  debug  httpd-2.4.34.tar.bz2  kernels
[[email protected] src]# tar xf apr-1.6.3.tar.bz2
[[email protected] src]# tar xf apr-util-1.6.1.tar.bz2
[[email protected] src]# ls
apr-1.6.3          apr-util-1.6.1          debug                 kernels
apr-1.6.3.tar.bz2  apr-util-1.6.1.tar.bz2  httpd-2.4.34.tar.bz2

#编辑configure文件

[[email protected] apr-1.6.3]# vim configure

 cfgfile=${ofile}T
    trap "$RM \"$cfgfile\"; exit 1" 1 2 15
    #$RM "$cfgfile"    加注释

#编译安装 apr-1.6.3和apr-util-1.6.1,编译安装过程省略。

[[email protected] apr-1.6.3]# ./configure --prefix=/usr/local/apr
[[email protected] apr-1.6.3]# make && make install
[[email protected] apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[[email protected] apr-util-1.6.1]# make && make install

#下载编译安装httpd:

[[email protected] ~]#wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.3
4.tar.bz2
[[email protected] ~]# ls
anaconda-ks.cfg  httpd-2.4.34.tar.bz2
[[email protected] ~]# tar xf httpd-2.4.34.tar.bz2
[[email protected] ~]# cd httpd-2.4.34
[[email protected] httpd-2.4.34]# ./configure --prefix=/usr/local/apache > --sysconfdir=/etc/httpd24 > --enable-so > --enable-ssl > --enable-cgi > --enable-rewrite > --with-zlib > --with-pcre > --with-apr=/usr/local/apr > --with-apr-util=/usr/local/apr-util/ > --enable-modules=most > --enable-mpms-shared=all > --with-mpm=prefork
 [[email protected] httpd-2.4.34]# make && make install

#开启服务

[[email protected] bin]# ./apachectl start
httpd (pid 62102) already running

#查看进程

[[email protected] bin]# ps -ef |grep httpd
root      62102      1  0 22:47 ?        00:00:00 /usr/local/apache/bin/httpd -k start
daemon    62103  62102  0 22:47 ?        00:00:00 /usr/local/apache/bin/httpd -k start
daemon    62104  62102  0 22:47 ?        00:00:00 /usr/local/apache/bin/httpd -k start
daemon    62105  62102  0 22:47 ?        00:00:00 /usr/local/apache/bin/httpd -k start
daemon    62106  62102  0 22:47 ?        00:00:00 /usr/local/apache/bin/httpd -k start
daemon    62107  62102  0 22:47 ?        00:00:00 /usr/local/apache/bin/httpd -k start
root      62114   2085  0 22:52 pts/1    00:00:00 grep --color=auto httpd
[[email protected] bin]# ss -antl
State      Recv-Q Send-Q Local Address:Port                Peer Address:Port
LISTEN     0      128                *:22                             *:*
LISTEN     0      100        127.0.0.1:25                             *:*
LISTEN     0      128               :::80                            :::*
LISTEN     0      128               :::22                            :::*
LISTEN     0      100              ::1:25                            :::*

#在客户机上验证

2.配置三种不同风格的虚拟主机
2.1相同ip不同端口.

[[email protected] htdocs]# mkdir yiyi
[[email protected] htdocs]# mkdir scsc
[[email protected] htdocs]# echo ‘hello‘ > /usr/local/apache/htdocs/yiyi/index.html
[[email protected] htdocs]#echo ‘world‘ > /usr/local/apache/htdocs/scsc/index.html
[[email protected] htdocs]# ls
index.html  scsc  yiyi

#更改配置文件内容。

[[email protected] ~]# vim /etc/httpd24/httpd.conf                                                                                                                                                      # If your host doesn‘t have a registered DNS name, enter its IP addres    s here.

      ServerName www.example.com:80    #取消前面的#号
   #Deny access to the entirety of your server‘s filesystem. You must
[[email protected] ~]# vim /etc/httpd24/httpd.conf
#Listen 12.34.56.78:80
Listen 80
Listen 8080   #添加监听8080端口

编辑配置文件:

[[email protected] ~]# vim /etc/httpd24/httpd.conf

<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
<VirtualHost 192.168.118.100:80>
ServerName www.ls.com
    DocumentRoot "/usr/local/apache/htdocs/tom"
    ErrorLog "/usr/local/apache/htdocs/haha.log"
    CustomLog "/usr/local/apache/htdocs/haha.log" combined
    <Directory /usr/local/apache/htdocs/tom>
        Require all granted
    </Directory>
</VirtualHost>
<VirtualHost 192.168.118.100:8080>
ServerName www.jerry.com
    DocumentRoot "/usr/local/apache/htdocs/jerry"
    ErrorLog "/usr/local/apache/htdocs/haha.log"
    CustomLog "/usr/local/apache/htdocs/haha.log" combined
    <Directory /usr/local/apache/htdocs/jerry>
        Require all granted
    </Directory>
</VirtualHost>
"/etc/httpd24/httpd.conf" 530L, 19464C

#重启httpd服务:

[[email protected] bin]# ./apachectl restart

Windows开机服务验证:


2.2相同端口不同的ip
#增加虚拟主机2的ip

[[email protected] ~]# ip addr add 192.168.43.111/24 dev ens33
[[email protected] ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:39:f7:f2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.43.199/24 brd 192.168.43.255 scope global dynamic ens33
       valid_lft 3509sec preferred_lft 3509sec
    inet 192.168.168.34/24 brd 192.168.168.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet 192.168.43.111/24 scope global secondary ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::9059:e88a:8b54:f6fa/64 scope link
       valid_lft forever preferred_lft forever

#更改配置文件虚拟主机2的IP地址:

[[email protected] bin]# vim /etc/httpd24/httpd.conf
#virtual host 2
<VirtualHost 192.168.43.111:80>
    ServerName www.scsc.com
    DocumentRoot "/usr/local/apache/htdocs/scsc"
    ErrorLog "logs/error_log"
    CustomLog "logs/access_log" combined
        <Directory /usr/local/apache/htdocs/scsc>
              Require all granted
        </Directory>
</VirtualHost>

#重启一下httpd服务:

[[email protected] ~]# cd /usr/local/apache/bin
[[email protected] bin]# ./apachectl restart
[[email protected] bin]# ss -ant

#在Windows浏览器上进行验证:


3.相同IP相同端口不同域名
#更改配置文件:

[[email protected] bin]# vim /etc/httpd24/httpd.conf 

</IfModule>
#virtual host 1
<VirtualHost 192.168.43.199:80>
    ServerName www.yiyi.com
    DocumentRoot "/usr/local/apache/htdocs/yiyi"
    ErrorLog "logs/error_log"
    CustomLog "logs/access_log" combined
        <Directory /usr/local/apache/htdocs/yiyi>
                Require all granted
        </Directory>
</VirtualHost>
#virtual host 2
<VirtualHost 192.168.43.199:80>
    ServerName www.scsc.com
    DocumentRoot "/usr/local/apache/htdocs/scsc"
    ErrorLog "logs/error_log"
    CustomLog "logs/access_log" combined
        <Directory /usr/local/apache/htdocs/scsc>
              Require all granted
        </Directory>
</VirtualHost>

#在windows客户机上增加环境变量,让虚拟域名和虚拟主机ip对照:

#找到hosts文件增加如下内容:

127.0.0.1 wwis-dubc1-vip60.adobe.com
127.0.0.1 activate-sjc0.adobe.com
192.168.43.199 www.scsc.com
192.168.43.199 www.yiyi.com

#重启服务,在Windows上进行验证:

原文地址:http://blog.51cto.com/13945839/2178021

时间: 2024-11-09 00:33:35

httpd服务配置与部署的相关文章

Linux之Web服务(2)Httpd服务配置之二

Linux之Web服务(2)Httpd服务配置之二 前言 在上一篇通过一些简单的案例或说明来介绍了部分关于Httpd2.4中httpd.conf配置文件中的配置选项及对应的功能.主要是对访问控制和在处理对指定目录或文件进行访问控制的一些安全问题性的处理.但是一直没有提到访问控制的具体讲解,本篇列出访问控制的具体使用选项和功能,以及其它高级配置. 1.Httpd2.4 文档访问授权具体参数 前提:文档访问授权选项配置只适合在以下标签中生效: <Directory >  <FIles>

Linux之Web服务(2)Httpd服务配置之三

Linux之Web服务(2)Httpd服务配置之三 前言 默认安装的Httpd服务一般只有默认的一个DocumentRoot节点配置,及一个站点文档资源存放根目录,但是在生产环境中需要有多种分类的资源,比如用于外部访问和内部访问,又或者是资源本身类型,比如分别用来存放一些文档.图片.单项加密算法文件等,为了更好分配站点管理的资源,Httpd服务提供了VirtualHost及虚拟主机的配置,可以在一个Httpd服务下模拟进行部署多个站点,这样不同的站点进行不同的配置,更方便进行分布式管理. Vir

Linux之Web服务(2)Httpd服务配置之四

Linux之Web服务(2)Httpd服务配置之四 前言 接上一篇的虚拟主机,本片主要介绍虚拟主机的一些搭建和部署,本篇通过一个具体的案例来显示虚拟主机的作用和特性. 案例功能介绍: (1) 准备DNS解析3个域名或者添加/etc/hostst/3条主机名IP档案,解决域名解析 (2) 基于主机名实现三个虚拟主机 (3) 每虚拟主机使用独立的访问日志和错误日志 (4) 在第二个虚拟主机上提供/status: (5) 在第三个虚拟主机提供路径别名/bbs,访问其它文件系统路径: (6) 第三个虚拟

Linux之Web服务(2)Httpd服务配置之一

Linux之Web服务(2)Httpd服务配置之一 Apache HTTP Server Apache HTTP 服务器,简称Apache,是非常留下的Web服务器软件.通常和脚步语言比如PHP,数据库MySQL一起工作,合成为LAMP栈(Linux, Apache, MySQL, PHP). 当然流行的Web服务器还有nigix,但是nigix虽然轻量级很稳定,但是功能并不如Apache HTTP功能丰富,并且现在的Apache HTTP还支持模块化功能,及可以开发自己的功能模块并加入到此We

httpd服务配置(未完待续)

httpd服务的详细配置 程序环境 主配置文件: /etc/httpd/conf/httpd.conf /etc/httpd/conf.d/*.conf 服务脚本: /etc/rc.d/init.d/httpd 配置文件:/etc/sysconfig/httpd 主程序文件: /usr/sbin/httpd #默认为prefork,后边介绍 /usr/sbin/httpd.event /usr/sbin/httpd.worker 日志文件目录: /var/log/httpd access_log

安装httpd服务配置简略过程

一 网络安装二 配置yum源 三 yum源配置文件四 测试五 安装httpd服务六 关闭防火墙1.iptables -F 2.iptables -X 3.setenforce 0七 打开本网段地址的任意一台主机,打开网页浏览器搜索 http:// + IP 原文地址:http://blog.51cto.com/13958260/2174006

安装httpd服务配置

本地yum源安装 mkdir /opt/dvd   (先用mkdir去根下opt目录下建一个名字叫dvd的目录) mount /dev/sr0   /opt/dvd  (用mount命令,挂载光盘设备(/dev/sr0),将光盘挂载到刚刚建立的dvd目录下(/opt/dvd)) cd  /etc/yum.repo.d/  (首先,用cd命令,到/etc/yum.repo.d 目录下) vi dvd.repo (在/etc/yum.repo.d 目录下,vi编辑一个名字为dvd.repo的文件)注

Apache httpd(apache2)服务配置详解,Mac下设置虚拟主机部署多个web项目,及反向代理部署Java项目

Apache httpd服务配置详解 查看版本:httpd -v Server version: Apache/2.4.33 (Unix) Server built:   Apr  3 2018 17:54:07 文件路径:/etc/apache2/httpd.conf # 服务目录(全局配置)用于指定Apache的安装路径,# 此选项参数值在安装Apache时系统会自动把Apache的路径写入ServerRoot "/usr" # 设置互斥对象的目录# Mutex default:/

httpd服务详解及基于openssl的使用

httpd常见特性 1.事先创建空闲进程. 2.按需维持适当的进程. 3.使用模块化设计,核心比较小,各种功能都以模块方式添加. 4.支持运行时配置,支持单独编译模块. 5.支持多种方式的虚拟主机配置. 6.支持https协议,通过mod_ssl模块实现. 7.支持用户认证 8.支持基于IP或主机名的ACL 9.支持基于每目录的访问控制. 10.支持URL重写. MPM(Mulit Path Modules)多道处理模块. mpm_winnt windows上专用的线程处理机制. perfork