无忧编程_ASP.NET  / C# / PHP 程序员的软件世界

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 77|回复: 0

yum httpd安装步骤详解

[复制链接]

245

主题

272

帖子

1095

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1095
发表于 2017-9-7 17:39:00 | 显示全部楼层 |阅读模式
yum httpd安装步骤详解  yum httpd安装详解
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://houzhimeng.blog.51cto.com/3938990/1703920
yum httpd安装详解:
1.安装httpd
[size=1em]
[size=1em]1

[size=1em][size=1em]yum -y install httpd




2.关闭selinux,iptables程序:
[size=1em]
[size=1em]1

[size=1em]2

[size=1em][size=1em][root@localhost ~]# service iptables stop
[size=1em][root@localhost ~]# setenforce 0




3.查看下当前系统80端口是否被占用:
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em][size=1em][root@localhost ~]# ss -tnl
[size=1em]State       Recv-Q Send-Q                                                     Local Addressort                                                       Peer Addressort
[size=1em]LISTEN      0      128                                                                   :::22                                                                   :::*     
[size=1em]LISTEN      0      128                                                                    *:22                                                                    *:*     
[size=1em]LISTEN      0      100                                                                  ::1:25                                                                   :::*     
[size=1em]LISTEN      0      100                                                            127.0.0.1:25                                                                    *:*     
[size=1em][root@localhost ~]#




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:
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em][size=1em][root@localhost ~]# service httpd restart
[size=1em]Stopping httpd:                                            [  OK  ]
[size=1em]Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using ::1 for ServerName
[size=1em]                                                           [  OK  ]
[size=1em][root@localhost ~]#




启动时的报错信息:是无法当前使用主机的主机名。没有问题可以忽略。
而且此时的80端口已经启动监听,可以用浏览器来访问:
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em][size=1em][root@localhost logs]# ss -tnl
[size=1em]State       Recv-Q Send-Q         Local Addressort           Peer Addressort
[size=1em]LISTEN      0      128                       :::80                       :::*     
[size=1em]LISTEN      0      128                       :::22                       :::*     
[size=1em]LISTEN      0      128                        *:22                        *:*     
[size=1em]LISTEN      0      100                      ::1:25                       :::*     
[size=1em]LISTEN      0      100                127.0.0.1:25                        *:*     
[size=1em][root@localhost logs]#




成功访问测试页面,因为没有主页,把403的页面定位在welcome.conf页面:
修改welcome.conf文件就会出来系统内部文件页面系统:
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em][size=1em][root@localhost conf.d]# ls
[size=1em]README  welcome.conf.bak
[size=1em][root@localhost conf.d]#




修改之后复制一个文件进去会显示:
5.httpd主配置文件:
配置文件分割为3端:
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em][size=1em][root@localhost conf.d]# grep "Section" /etc/httpd/conf/httpd.conf
[size=1em]### Section 1: Global Environment
[size=1em]### Section 2: 'Main' server configuration
[size=1em]### Section 3: Virtual Hosts
[size=1em][root@localhost conf.d]#




注意:Main server 和 Virtual hosts 不能同时启用:默认没有启动虚拟主机。
1.指定监听地址和端口:
1:省略ip表示本机所有可用ip地址;
2:可以指定多次,用于指明多个不同端口。
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em]10

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




2.持久连接:
持久连接:建立后每个资源获取结束不会断开连接,而继续下去到结束;
断开:
数量:100
时间:60秒
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em]10

[size=1em]11

[size=1em]12

[size=1em]13

[size=1em]14

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




非持久:每个资源单独专用连接获取:
3.MPM多处理模块:并发请求响应模型
/etc/sysconfig/httpd:修改模块地方。
httpd  -l:查看静态模块
httpd  -m:查看动态模块
httpd  -t -D DUMP_MODULES
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em][size=1em]prefock:
[size=1em]<IfModule prefork.c>  //如果加载了这个模块,就实现一下配置,一个条件化模块加载
[size=1em]StartServers        8  //服务在启动时默认启动几个子进程
[size=1em]MinSpareServers    5  //最小空闲进程数量
[size=1em]MaxSpareServers    20  //最大空闲进程数量
[size=1em]ServerLimit         256 //限制MaxClients 最大活动进程
[size=1em]MaxClients         256 //最大并发量,就是同时访问数量
[size=1em]MaxRequestsPerChild 4000 //每个子进程最多能处理的请求数量,处理够数量后就被kill然后重新启动
[size=1em]</IfModule>




[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em][size=1em]worker:
[size=1em]<IfModule mpm_worker_module>  
[size=1em]StartServers 2                   //服务器启动时建立的子进程数,默认值是"3"。
[size=1em]MaxClients 150                 //允许同时伺服的最大接入请求数量(最大线程数量)
[size=1em]MinSpareThreads 25             //最小空闲进程      
[size=1em]MaxSpareThreads 75             //最大空闲进程
[size=1em]ThreadsPerChild 25              //每个子进程建立的常驻的执行线程数
[size=1em]MaxRequestsPerChild 0           //设置每个子进程在其生存期内允许伺服的最大请求数量.0是不会结束。
[size=1em]</IfModule>




4.模块加载:DSO
loadMoudle <moudle_name><moudle_path>
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em]10

[size=1em]11

[size=1em]12

[size=1em]13

[size=1em]14

[size=1em]15

[size=1em]16

[size=1em]17

[size=1em]18

[size=1em][size=1em]LoadModule auth_basic_module modules/mod_auth_basic.so
[size=1em]LoadModule auth_digest_module modules/mod_auth_digest.so
[size=1em]LoadModule authn_file_module modules/mod_authn_file.so
[size=1em]LoadModule authn_alias_module modules/mod_authn_alias.so
[size=1em]LoadModule authn_anon_module modules/mod_authn_anon.so
[size=1em]LoadModule authn_dbm_module modules/mod_authn_dbm.so
[size=1em]LoadModule authn_default_module modules/mod_authn_default.so
[size=1em]LoadModule authz_host_module modules/mod_authz_host.so
[size=1em]LoadModule authz_user_module modules/mod_authz_user.so
[size=1em]LoadModule authz_owner_module modules/mod_authz_owner.so
[size=1em]LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
[size=1em]LoadModule authz_dbm_module modules/mod_authz_dbm.so
[size=1em]LoadModule authz_default_module modules/mod_authz_default.so
[size=1em]LoadModule ldap_module modules/mod_ldap.so
[size=1em]LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
[size=1em]LoadModule include_module modules/mod_include.so
[size=1em]LoadModule log_config_module modules/mod_log_config.so
[size=1em]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.定义配置:
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

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




2.htpasswd
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em][size=1em][root@localhost ~]# mkdir /etc/httpd/users
[size=1em][root@localhost ~]# htpasswd -c -m /etc/httpd/users/.htpasswd hzm
[size=1em]New password:
[size=1em]Re-type new password:
[size=1em]Adding password for user hzm




3.测试访问

12.虚拟主机:
http三种类型虚拟主机:ip,端口,域名。
[size=1em]
[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em]10

[size=1em]11

[size=1em]12

[size=1em]13

[size=1em]14

[size=1em]15

[size=1em]16

[size=1em]17

[size=1em][size=1em]<VirtualHost 192.168.112.128:80>
[size=1em]   ServerName www.a.com
[size=1em]   ServerAlias  a.com
[size=1em]   DocumentRoot /vhosts/a.com/
[size=1em]</VirtualHost>
[size=1em]  
[size=1em]<VirtualHost 192.168.112.128:80>
[size=1em]   ServerName www.b.com
[size=1em]   ServerAlias b.com
[size=1em]   DocumentRoot /vhosts/b.com/
[size=1em]</VirtualHost>
[size=1em]  
[size=1em][root@localhost users]# curl www.a.com
[size=1em]<h1>www.aww.a.com</h1>
[size=1em][root@localhost users]# curl www.b.com
[size=1em]<h1>www.b.com</h1>
[size=1em][root@localhost users]#



本文出自 “我的学习博客” 博客,请务必保留此出处http://houzhimeng.blog.51cto.com/3938990/1703920


windows .net(C#+MSSQL) linux(php+mysql)  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软件编程 Inc.  

GMT+8, 2017-9-22 19:49 , Processed in 0.239000 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表