安全起见,尽量少显示信息
1、ServerTokens Prod
该参数设置http 头部返回的apache 版本信息。可用的值和含义如下(显示的信息逐渐增加):
Prod:仅软件名称,例如:apache
Major:包括主版本号,例如:apache/2
Minor:包括次版本号,例如:apache/2.0
Min:仅apache 的完整版本号,例如:apache/2.0.54
OS:包括操作系统类型,例如:apache/2.0.54(Unix)
Full: 包括apache 支持的模块及模块版本号, 例如:Apache/2.0.54 (Unix) mod_ssl/2.0.54 OpenSSL/0.9.7g
2、ServerSignature Off
在页面产生错误时是否出现服务器版本信息。推荐设置为 Off
3、用户认证
在 APACHE 中,用户的认证可以采用数据来存储用户认证信息,不过我们这里先介绍使用文本来存储用户的信息。例如我们要使用户在访问 /download/ 时需要认证才能访问,需要进行如下的配置:
(1)在配置文件 httpd.conf,需要有如下的配置:
AccessFileName .htaccess #指名访问控制文件的文件名
<Files ~ "^\.ht"> #.ht开头的文件禁止访问
Order allow,deny
Deny from all
Satisfy All
</Files>
.........
Alias /download/ "/var/www/download/"
<Directory "/var/www/download">
Options Indexes
AllowOverride AuthConfig
</Directory>
AllowOverride AuthConfig 就是启用了用户认证
(2) 创建用户信息文件:
/usr/local/apache2/bin/htpasswd -c /var/httpuser/passwords bearzhang
用apache的htpasswd命令为bearzhang用户创建访问口令,口令文件存储在/var/httpuser/passwords 文件里
(3)创建用户访问控制文件.htaccess,在本案例中为 /var/www/download/.htaccess文件的内容如下
AuthType Basic #基本认证
AuthName "Restricted Files" #采用文件认证
AuthUserFile /var/httpuser/passwords #用户信息存储位置
Require user bearzhang #只有bearzhang 用户可以访问
#Require valid-user (要求用户认证)