http的工作原理包括4个步骤:

1.连接:浏览器与服务器建立连接打开一个socket(套接字)的虚拟文件,标志者连接的成功。

2.请求:浏览器向web提交post或是get请求。

3.应答

4.关闭连接。

apach的主要默认配置信息

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

2.根文档目录: /var/www/html

3.访问日志文件/var/log/httpd/error[access]_log

4.apache 模块存放路径 /usr/lib/httpd/modules

主要配置参数:

servertype    分为standalone    请求结束后进程不消亡

                           xinetd           消亡

serverroot   rpm 安装路径在/etc/httpd   源代码安装在 /usr/local/apach

port 监听的端口

uid和gid  服务器默认以这个身份和组运行,默认的话是nobody

serveradmin 和servername用于出错时返回

documentroot 文档目录的绝对路径

userdir用户的家目录

directoryindex  索引的文件名

timeout  用户连接网络超时时间,短影响服务质量,长影响性能

maxspireservers  最大空闲进程数,达到最大空闲数量的时候终止多余的空闲进程保持这个数量。

maxkeepaliverequests  每个连接的最大请求数,实际配置尽量调高,以获得较高的系统性能

keepalive和keepalivetimeout 是否保持会话,开启时可以使许多请求通过同一个tcp连接发送,节约网络资源和系统资源。

hostnamelookups 对客户端进行域名验证,是否开启或两次。

bindaddress 只监听来自某个ip地址

maxclient  apache的最大连接数量

一)web服务访问控制

 1.配置指令

order  表名用户是先设置允许的访问的地址还是拒绝的地址 

          allow,deny默认禁止所有,后者覆盖前者,同时满足取后者

           deny,allow 相反

例子)order   deny,allow

           deny  from  all

           allow from admin.org

       除了admin.org域外拒绝所有主机的访问。

 2。使用.htaccess文件做访问控制

1.启用并控制对.htaccess的使用

AccessFileName .htaccess

<Files ~ "^\.htaccess">
    Order allow,deny
    Deny from all
</Files>
 

2.在.htaccess文件中使用指令进行控制

allowoverrides 指令指定.htaccess文件可以覆盖的选项

 all  读取所有指令

none  禁止处理.htaccess

options  文件列出选项

fileinfo  .htaccess文件包含修改文档类型信息的指令

authconfig  包含的验证指令

indexes 控制目录列表方式

limit     文件中包含的allow,deny,order指令

options指令:

none目录没有启用任何选项

all  启动除了multiview外所有选项

Indexes 当找不到可用文件后目录的文件列表作为html显示

Includes 允许服务器侧包含

followsymlinks  不安全,不用

execCGI 允许cGI程序

Multiviews 计算机自动匹配合适的用户请求文档

 例子)

[root@localhost abc]# vim /etc/httpd/conf/httpd.conf

AccessFileName .htaccess

 <Files ~ "^\.htaccess">
Order allow,deny
Deny from all
</Files>

<Directory "/var/www/html/abc">
    AllowOverride options
</Directory>

[root@localhost ~]# cd /var/www/html/
[root@localhost html]# mkdir abc

[root@localhost html]# cd abc/

 

[root@localhost abc]# echo "a">a

[root@localhost abc]# vim .htaccess

options   -Indexes

测试:没有启用.htaccess前

 

web服务器安全防护_web 服务 安全防护

 网页会把当前目录显示出来不安全

加上.htaccess后

 

web服务器安全防护_web 服务 安全防护_02