yum httpd安装详解

yum httpd安装详解:

1.安装httpd

yum -y install httpd

2.关闭selinux,iptables程序:

[[email protected] ~]# service iptables stop
[[email protected] ~]# setenforce 0

3.查看下当前系统80端口是否被占用:

[[email protected] ~]# ss -tnl
State       Recv-Q Send-Q                                                     Local Address:Port                                                       Peer Address:Port 
LISTEN      0      128                                                                   :::22                                                                   :::*     
LISTEN      0      128                                                                    *:22                                                                    *:*     
LISTEN      0      100                                                                  ::1:25                                                                   :::*     
LISTEN      0      100                                                            127.0.0.1:25                                                                    *:*     
[[email protected] ~]#

httpd基本配置和应用:

主配置文件:/etc/httpd/conf/httpd.conf

分段配置文件:/etc/httpd/conf.d/*.conf

服务脚本:/etc/rc.d/init.d/httpd

脚本的配置文件:/etc/sysconfig/httpd

模块文件目录:/etc/httpd/modules  --> /usr/lib64/modules

主程序文件:/usr/sbin/httpd (prefork)

/usr/sbin/httpd.worker (worker)

/usr/sbin/httpd.event (event)

日志文件目录:/var/log/httpd

Access_log:访问日志文件

Error_log:错误日志

站点文档目录:/var/www/html

4.启动httpd:

[[email protected] ~]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd: httpd: Could not reliably determine the server‘s fully qualified domain name, using ::1 for ServerName
                                                           [  OK  ]
[[email protected] ~]#

启动时的报错信息:是无法当前使用主机的主机名。没有问题可以忽略。

而且此时的80端口已经启动监听,可以用浏览器来访问:

[[email protected] logs]# ss -tnl
State       Recv-Q Send-Q         Local Address:Port           Peer Address:Port 
LISTEN      0      128                       :::80                       :::*     
LISTEN      0      128                       :::22                       :::*     
LISTEN      0      128                        *:22                        *:*     
LISTEN      0      100                      ::1:25                       :::*     
LISTEN      0      100                127.0.0.1:25                        *:*     
[[email protected] logs]#

成功访问测试页面,因为没有主页,把403的页面定位在welcome.conf页面:

修改welcome.conf文件就会出来系统内部文件页面系统:

[[email protected] conf.d]# ls
README  welcome.conf.bak
[[email protected] conf.d]#

修改之后复制一个文件进去会显示:

5.httpd主配置文件:

配置文件分割为3端:

[[email protected] conf.d]# grep "Section" /etc/httpd/conf/httpd.conf 
### Section 1: Global Environment
### Section 2: ‘Main‘ server configuration
### Section 3: Virtual Hosts
[[email protected] conf.d]#

注意:Main server 和 Virtual hosts 不能同时启用:默认没有启动虚拟主机。

1.指定监听地址和端口:

1:省略ip表示本机所有可用ip地址;

2:可以指定多次,用于指明多个不同端口。

# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, in addition to the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
#Listen 12.34.56.78:80
Listen 80
Listen 8080

2.持久连接:

持久连接:建立后每个资源获取结束不会断开连接,而继续下去到结束;

断开:

数量:100

时间:60秒

KeepAlive Off
 
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100
 
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 15

非持久:每个资源单独专用连接获取:

3.MPM多处理模块:并发请求响应模型

/etc/sysconfig/httpd:修改模块地方。

httpd  -l:查看静态模块

httpd  -m:查看动态模块

httpd  -t -D DUMP_MODULES

prefock:
<IfModule prefork.c>  //如果加载了这个模块,就实现一下配置,一个条件化模块加载
StartServers        8  //服务在启动时默认启动几个子进程
MinSpareServers    5  //最小空闲进程数量
MaxSpareServers    20  //最大空闲进程数量
ServerLimit         256 //限制MaxClients 最大活动进程
MaxClients         256 //最大并发量,就是同时访问数量
MaxRequestsPerChild 4000 //每个子进程最多能处理的请求数量,处理够数量后就被kill然后重新启动
</IfModule>
worker:
<IfModule mpm_worker_module>  
StartServers 2                   //服务器启动时建立的子进程数,默认值是"3"。
MaxClients 150                 //允许同时伺服的最大接入请求数量(最大线程数量)
MinSpareThreads 25             //最小空闲进程      
MaxSpareThreads 75             //最大空闲进程
ThreadsPerChild 25              //每个子进程建立的常驻的执行线程数
MaxRequestsPerChild 0           //设置每个子进程在其生存期内允许伺服的最大请求数量.0是不会结束。
</IfModule>

4.模块加载:DSO

loadMoudle <moudle_name><moudle_path>

LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so

5.定义main,主页文件路径

DocumentRoot "/var/www/html"

6.站点访问路径控制:

文件系统路径:

<Directory “/PATH/TO?SOMEDIR”>

</Directory>

7.directory定义:

Optiones

i. Indexes:当访问的路径下没有主页面,也没有资源,就用列表形式呈现。

ii. 如果有某页面文件指向DocumentRoot之外的文件,照样显示文件。

iii. None 关闭

iv. All 都启用

Order:检查次序

Order Allow Deny 明确Allow才允许,其他为Deny

8.定义默认主页面

DirectoryIndex index.html index.html.var

自左而右的次序

9.路径别名:

比如:Alias /bbs/ “/web/bbs/htdocs/”

如果访问bbs 则直接指向web/bbs/htdocs

10.默认字符集:

AddDefaultCharset UTF-8

11.基于用户的访问控制:

质询:www-Authenticate:服务器用401拒绝客户请求,说明需要用户提供用户名,密码,淡出对话框。

认证:客户端用户填入账号密码,再次发送请求。

比如:/var/www/html/iamges 不能访问

1.定义配置:

<Directory "/var/www/html/iamges">
        Options Indexes
        AllowOverride None
        AuthType Basic
        AuthName "iamges"
        AuthUserFile /etc/httpd/users/.htpasswd
        Require valid-user
</Directory>

2.htpasswd

[[email protected] ~]# mkdir /etc/httpd/users
[[email protected] ~]# htpasswd -c -m /etc/httpd/users/.htpasswd hzm
New password: 
Re-type new password: 
Adding password for user hzm

3.测试访问

12.虚拟主机:

http三种类型虚拟主机:ip,端口,域名。

<VirtualHost 192.168.112.128:80>
   ServerName www.a.com
   ServerAlias  a.com
   DocumentRoot /vhosts/a.com/
</VirtualHost>
 
<VirtualHost 192.168.112.128:80>
   ServerName www.b.com
   ServerAlias b.com
   DocumentRoot /vhosts/b.com/
</VirtualHost>
 
[[email protected] users]# curl www.a.com
<h1>www.aww.a.com</h1>
[[email protected] users]# curl www.b.com
<h1>www.b.com</h1>
[[email protected] users]#
时间: 2024-10-10 18:51:31

yum httpd安装详解的相关文章

httpd 安装详解(待更新)

httpd 安装详解 安装httpd: rpm包:CentOS发行版中直接提供 编译安装:定制新功能,或其它原因 安装方式: yum install httpd CentOS 6:httpd-2.2 程序环境: 配置文件: /etc/httpd/conf/httpd.conf/httpd /etc/httpd/conf.d/*.conf 服务脚本: /etc/rc.d/init.d/httpd 脚本配置文件:/etc/sysconfig/httpd 主程序文件: /usr/sbin/httpd

CentOS程序包管理器rpm、yum以及程序包编译安装详解

一.程序包管理器RPM和Yum简介 程序包管理器:将编译好的应用程序的各组成文件打包成一个或几个程序包文件,可以更方便地实现程序包的安装.升级.卸载和查询等管理操作. rpm软件包管理器(RPM Package Manager):rpm包存在依赖关系,依赖关系复杂,安装时间很长,虽然可以忽略依赖关系,但是可能会导致程序包安装后无法正常使用. yum程序包管理器( Yellow dog Updater, Modified):yum是基于RPM包管理,自动解决程序包间的依赖关系.根据配置文件的资源地

HTTPD服务详解

HTTPD服务详解 目录 一.httpd的程序版本 二.httpd的特性 三.httpd的功能特性 四.httpd使用 1.httpd的安装 2.程序环境 Httpd-2.2 (Centos6) http-2.4 (Centos7) 五.http配置相关说明 1.修改监听的ip和port 2.持久连接 3.MPM 4.DSO配置指令模块加载 5.定义Main'server文档页面路径 6.站点访问控制 文件系统路径 URL路径 7.<Directory> 中基于源地址实现访问控制 Option

zabbix专题:第二章 zabbix3.0安装详解

zabbix3.0安装详解 本节目录大纲 安装配置mariadb 安装服务器端 zabbix web配置 web页面初始化 更改为中文 中文乱码问题 zabbix专题:第二章 zabbix3.2安装详解 zabbix专题:第二章 zabbix3.2安装详解 官方文档地址: https://www.zabbix.com/documentation/3.2/manual/installation/install_from_packages 我安装zabbix用的rpm包,可以从官网的源里面去下载,需

Cacti使用安装详解

Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具.Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数.它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构.host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善.界面友好.软件 Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量

Apache服务简介及编译安装详解

Apache服务简介及编译安装详解 一.Apache简介 Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,是目前世界上使用最广泛的一种web server,它以跨平台,高效和稳定而闻名,可以运行在几乎所有广泛使用的计算机平台上.Apache的特点是简单.速度快.性能稳定,并可做代理服务器来使用. Apache是用C语言开发的基于模块化设计的web应用,总体上看起来代码的可读性高于php代码,它的核心代码并不多,大多数的功能都被分割到各种

Yum软件包管理详解

目录 1. Yum 1.1 检查和更新包 1.1.1 查询更新 1.1.2 更新包 1.1.3 使用 ISO 和 Yum 离线升级系统 1.2 使用包 1.2.1 搜索包 1.2.2 列出包 1.2.3 显示包信息 1.2.4 安装包 删除包 1.3 查看事务记录 1.3.1 事务记录 1.3.2 检查事务 1.3.3 恢复和重复事务 1.4 配置yum和yum存储库 1.4.1 配置 /etc/yum.conf 文件 1.4.2 /etc/yum.conf 的[main]选项 1.4.3 /e

Apache的httpd命令详解

Apache的httpd命令详解 来源:全栈开发者 发布时间:2012-01-03 阅读次数:10965 4 httpd.exe为Apache HTTP服务器程序.直接执行程序可启动服务器的服务.本文以Apache2.2.21版本为例详细介绍该指令的各个参数及用法. 语法格式: httpd [-D name] [-d directory] [-f file]         [-C "directive"] [-c "directive"]         [-w]

Cloudera impala简介及安装详解

一.Impala简介 Cloudera Impala对你存储在Apache Hadoop在HDFS,HBase的数据提供直接查询互动的SQL.除了像Hive使用相同的统一存储平台,Impala也使用相同的元数据,SQL语法(Hive SQL),ODBC驱动程序和用户界面(Hue Beeswax).Impala还提供了一个熟悉的面向批量或实时查询和统一平台. 二.Impala安装 1.安装要求 (1)软件要求 Red Hat Enterprise Linux (RHEL)/CentOS 6.2 (