httpd:是一个提供网站服务的程序

监听端口:80

环境准备:

Linux CentOS7.3系统

使用一台服务端,一台客户端即可;

一、安装httpd

1:安装

[root@localhost ~]# systemctl stop firewalld        

[root@localhost ~]# setensorce  0    

 

[root@localhost ~]# rpm -e httpd –nodeps                 #卸载系统自带的httpd

[root@localhost ~]# mkdir /media/cdrom                 #创建挂载点文件夹

[root@localhost ~]# mount /dev/cdrom /media/cdrom          #挂载光盘

[root@localhost ~]# yum -y install gcc* apr-devel apr-util-devel pcre-devel     #安装开发包

 

[root@localhost ~]# tar zxvf httpd-2.4.25.tar.gz                      #解压缩包

[root@localhost ~]# cd httpd-2.4.25

[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi     

注释:

--prefix:制定程序的安装目录

--enable-so:启用动态加载模块DSO的支持,使httpd具备进一步扩展功能的能力

--enable-rewrite:启用网页地址重写功能,用于网站优化

--enable-charset-lite:启动字符集支持,以便支持使用各种字符集编码的网页

--enable-cgi:启用cgi脚本程序支持,扩展网站的应用访问能力

 

[root@localhost httpd-2.4.25]# make && make install          

[root@localhost httpd-2.4.25]# ls /usr/local/httpd      

[root@localhost httpd-2.4.25]# /usr/local/httpd/bin/apachectl  start 

[root@localhost httpd-2.4.25]# netstat -anpt |grep httpd 

[root@localhost httpd-2.4.25]# /usr/local/httpd/bin/apachectl  stop       

[root@localhost httpd-2.4.25]# netstat -anpt |grep httpd 

 

2:优化执行路径

[root@localhost httpd-2.4.25]# ln -s /usr/local/httpd/bin/* /usr/local/bin/    

[root@localhost httpd-2.4.25]# ls -l /usr/local/bin/httpd /usr/local/bin/apachectl  

 #查看软连接

[root@localhost httpd-2.4.25]# httpd  -v                                     

[root@localhost httpd-2.4.25]# apachectl  start                             

[root@localhost httpd-2.4.25]# netstat -anpt |grep httpd          

[root@localhost httpd-2.4.25]# apachectl  stop              

[root@localhost httpd-2.4.25]# netstat -anpt |grep httpd        

3:添加httpd系统服务

使用chkconfig添加为系统服务

[root@localhost httpd-2.4.25]# cp /usr/local/httpd/bin/apachectl  /etc/init.d/httpd              #复制配置文件

[root@localhost httpd-2.4.25]# vi /etc/init.d/httpd                         //编辑配置文件

添加:

#!/bin/sh        

#chkconfig:35 85 21         

#description:httpd server

[root@localhost httpd-2.4.25]# chkconfig --add httpd           #加入系统服务,开机启动

[root@localhost httpd-2.4.25]# chkconfig --list httpd       

[root@localhost httpd-2.4.25]# service httpd start                   #启动httpd

 

二、httpd服务器的基本配置

1:确定网站的名称、ip地址和域名

2:配置并启动httpd

[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf

修改(前面的数字是行号):

    ServerName www.bdqn.com           ##200行        

 

[root@localhost ~]# apachectl -t                                               #检测配置文件语法

2:启动httpd服务

[root@localhost ~]# systemctl start httpd                                 #启动httpd

[root@localhost ~]# netstat -anpt | grep httpd      

3:部署网页

[root@localhost ~]# vim /usr/local/httpd/htdocs/index.html         #编辑主页

<html><body><h1>It works!</h1></body></html>

[root@localhost ~]# service httpd restart                                          #重启httpd服务

 

4:测试

打开网站

http://192.168.10.101

 

5:查看站点访问情况

[root@localhost ~]# tail /usr/local/httpd/logs/access_log  

[root@localhost ~]# tail /usr/local/httpd/logs/error_log    

 

 

三、httpd.conf配置文件解释

1:全局配置项

[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf

ServerRoot "/usr/local/httpd"      

Listen 80                                                                  #监听端口(默认80)

User daemon                                                          #用户     (默认daemon)

Group daemon                                                       #用户组(默认daemon)

ServerAdmin you@example.com                          #邮箱地址

ServerName www.bdqn.com                         #网站域名

DocumentRoot "/usr/local/httpd/htdocs"           #网页存储位置

DirectoryIndex index.html                                     #默认主页

ErrorLog "logs/error_log"                                      #错误日志文件存储位置

LogLevel warn                                                        #日志级别

CustomLog "logs/access_log" common               #正常访问日志

 

Include conf/extra/proxy-html.conf                     #虚拟主机路径

 

 

2:区域配置项

[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf

<Directory />                      #根目录

    AllowOverride none

    Require all denied

</Directory>

 

<Directory "/usr/local/httpd/htdocs">    #限制路径

    Options Indexes FollowSymLinks

    AllowOverride None

    Require all granted                  #允许所有主机访问还可以拒绝所有人访问

</Directory>

 

 

 

Centos7源码部署apache/httpd服务的更多相关文章

  1. InfluxDB源码阅读之httpd服务

    操作系统 : CentOS7.3.1611_x64 go语言版本:1.8.3 linux/amd64 InfluxDB版本:1.1.0 服务模块介绍 源码路径: github.com/influxda ...

  2. Centos7源码安装Apache和PHP

    源码安装Apache 安装需要的依赖 yum -y install gcc autoconf automake make pcre pcre-devel openssl openssl-devel​# ...

  3. centos7源码安装Apache及Tomcat

    源码安装Apache (1) 一.通过 https://apr.apache.org/  下载 APR 和 APR-util 通过 http://httpd.apache.org/download.c ...

  4. CentOS7 实战源码部署apache网站服务器

    简介:实战演练apache网站服务器的搭建 Apache简介: Apache软件基金会的一个开源免费的网页服务器,也是目前世界上使用最广泛的一种web server , apache最出名的是它跨平台 ...

  5. centos7 源码部署LNMP

    一.环境 系统环境:centos 7.4 64位 Nginx:1.7.9 MySQL: 5.7.20 (二进制包) PHP:5.6.37 二.Ngin 安装 Nginx部署 yum install   ...

  6. Centos7源码部署Redis3.2.9

    目录 一.环境准备 二.安装 三.测试 四.编写启动脚本 一.环境准备 [Redis-Server] 主机名 = host-1 系统 = centos-7.3 地址 = 1.1.1.1 软件 = re ...

  7. linux下源码安装apache服务

    1.搭建静态网站是,我们只需要搭建apache服务即可满足要求. 例如:如果我再客户端游览器输入地址,他会找到192.168.1.100这个服务器,然后根据端口会找到apache服务器.apache他 ...

  8. Linux学习日记——源码编译Apache

    [本文为笔者在学习Linux 下的软件安装时,尝试使用源码安装Apache 的过程,事后进行一个小小的总结,发现错误望指正.] 一.典型的源码编译安装软件的过程包括以下3步: 1) 运行 config ...

  9. 烂泥:源码安装apache

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近要开始学习nagios监控方面的知识了,但是nagios与apache结合的比较紧密,所以本篇文章就先把apache的源码安装学习下. 我们现在分以 ...

随机推荐

  1. python |elasticsearchs操作es的例子

    from elasticsearch import Elasticsearch import json import time es = Elasticsearch(['es地址:9200'],ign ...

  2. [转]解决 gem install 安装失败

    链接地址:https://blog.csdn.net/weixin_42414461/article/details/85337465

  3. [数据结构 - 第3章] 线性表之双向链表(C语言实现)

    一.什么是双向链表? 双向链表(double linked list)是在单链表的每个结点中,再设置一个指向其前驱结点的指针域.所以在双向链表中的结点都有两个指针域,一个指向直接后继,另一个指向直接前 ...

  4. 将你的数据导入到json格式

    不知道为什么大家那么偏爱json格式,清晰?跨平台?或许这都是它的优点吧,之前我都是将我的数据放到txt中,今后就用json吧.初步写了一个写入json的模板,就这么用吧. def get_qq_05 ...

  5. 关于docker的scratch镜像与helloworld

    关于docker的scratch镜像与helloworld 参考:https://hub.docker.com/_/scratch?tab=description 参考:https://segment ...

  6. Java byte和hex十六进制字符串转换

    在Java中字符串由字符char组成, 一个char由两个byte组成, 而一个byte由八个bit组成, 一个十六进制字符(0-F)实际上由4个字节byte即可表达, 因此, 从字节数组到十六进制字 ...

  7. 介绍一款好用的命令行工具Cmder

    一.Cmder的介绍: 在大多数情况下,我们都想复制命令行窗口中的命令行,但是cmd复制粘贴大家都懂得:有没有更好的工具替代呢? 答案是肯定的,今天我将为大家介绍一款工具--Cmder. Cmder可 ...

  8. 了解下Scala隐式转换与柯理化

    之前有看过kafka源码,有很多implict声明的方法,当时看的一头雾水,今天趁着空闲,了解下scala 的隐式转换和柯理化相关语法知识. 隐式转换 需要类中的一个方法,但是这个类没有提供这样的一个 ...

  9. nacos初探--作为配置中心

    什么是nacos Nacos 支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心).动态配置服务(可以做配置中心).动态 DNS 服务. 官方介绍是这样的: Nac ...

  10. java之抽象类介绍

    什么抽象方法和抽象类 抽象方法 在类里面定义的没有方法体且用关键字“abstract”来修饰的方法就是抽象方法,所谓的没有方法体指的是在方法声明的时候没有大括号以及其中的内容,而是直接在声明时在方法名 ...