WEB概念
WEB是一种交互式图形界面的Internet服务,具有强大的信息连接功能,通过超文本链接( HyperText ) 的 方式,将信息通过 Internet 传递到全球每个角落!一般情况下,终端用户通过浏览器输入比较完整的URL即可以完成访问
HTTP协议
HTTP(HyperText Transfer Protocol),是目前WWW传递数据的主流协议!网站上的网页,则需要符合 HyperText Markup Language(HTML)的语法。
HTTP服务原理
当我们在网址栏输入网址之后:
1)Client经过DNS解析得到WWW主机的IP,会发出一个数据包,以http协议联接WWW主机,通 知WWW主机要以http的方法来取得数据。
2)WWW主机收到数据包后,根据Client的要求,提供相关的讯息来响应,大部分情况下用 http的协议传送用HTML 语法的网页数据到Client端的浏览器;
http服务安装
通过rpm的方式,会安装多余的模块可能存在安全问题,所以我们选取编译安装的方式安装Apache服务。
一.编译安装Apache软件包
首先我们卸载自带的httpd服务
rpm -e httpd --nodeps
然后进行编译安装
1)第一步解开源代码封装包
tar zxf httpd-2.2.17.tar.gz -C /usr/src/
2)第二步配置选择安装的功能 和安装目录等信息
cd /usr/src/httpd-2.2.17/
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
3)第三步编译将配置信息生成可执行的二进制文件
make
4)第四步安装
make install
二.优化执行路径
ln -s /usr/local/httpd/bin/* /usr/local/bin/
ls -l /usr/local/bin/httpd /usr/local/bin/apachectl(查看软链接)
如图所示
三.添加httpd系统服务
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
vi /etc/init.d/httpd
在前面加入两行如图所示,更改首行的执行环境
完成后保存退出
chkconfig --add httpd(调整启动级别)
chkconfig --list httpd(查看启动状态)
如图所示
这个时候我们便配置完成
打开浏览器输入127.0.0.1可以看到
这里的界面为http服务默认的目录。
httpd服务访问控制
为了让我们的页面更安全我们来配置用户授权限制也就是说,用户在访问我们的界面时需要密码。
添加用户
cd /usr/local/httpd/bin 切换目录
htpasswd -c /usr/local/httpd/conf/.htpass webadmin
添加一个用户名为webadmin的用户 在第一次添加用户的时候需要(-c)参数,后面既可省略
查看用户记录文件
cat /usr/local/httpd/conf/.htpass
左边为用户名,右边为密码(加密显示)
对网站目录添加授权
vi /usr/local/httpd/conf/httpd.conf
在如图所示的位置加这四行,注意最上面是<Directory “/usr/local/httpd/htdocs”>里面,保存退出。
重启服务
service httpd restart
测试
再一次用浏览器查看127.0.0.1发现访问的时候需要用户名和密码
这个时候我们输入之前添加的用户名和密码即可,可以有效的防止外部人员查看我们的网络,也是一种安全的防御措施。
httpd服务的目录结构
下面我们来介绍下目录结构
服务目录:/usr/local/httpd/
主配置文件:/usr/local/httpd/conf/httpd.conf
网页目录:/usr/local/httpd/htdocs/
服务脚本:/usr/local/httpd/bin/apachectl
执行程序:/usr/local/httpd/bin/httpd
访问日志: /usr/local/httpd/log/access_log
httpd.conf配置文件
常用的全局配置参数
ServerRoot:服务目录
ServerAdmin:管理员邮箱
User:运行服务的用户身份
Group:运行服务的组身份
ServerName:网站服务器的域名
DocumentRoot:网页文档的根目录
Listen:监听的IP地址、端口号
PidFile:保存httpd进程PID号的文件
DirectoryIndex:默认的索引页文件
ErrorLog:错误日志文件的位置
CustomLog:访问日志文件的位置
LogLevel:记录日志的级别,默认为warn
Timeout:网络连接超时,默认为300秒
KeepAlive:是否保持连接,可选On或Off
MaxKepAliveRequests:每次连接最多请求文件数
KeepAliveTimeout:保持连接状态时的超时时间
Include:需要包含进来的其他配置文件
区域配置项
<Directory “/usr/local/httpd/htdocs”>
Options FollowSymLinks
#控制选项,允许使用符号链接
AllowOverride None
#不允许隐含控制文件中的覆盖配置
Order deny,allow
#访问控制策略的应用顺序
Deny from all
#禁止任何人访问此区域