Apache服务器配置管理

来源:互联网 发布:python升级到2.7 pip 编辑:程序博客网 时间:2024/06/05 11:43

WEB服务器的工作原理:

Web系统是客户/服务器模式(C/S)的,有服务器端和客户端程序两部分。

Web客户端与Web服务器端的通信过程如下(用户每次浏览网站获取一个页面,都会重复如下的连接过程,周而复始):

    1)Web客户端通过浏览器根据用户输入的URL地址连接到相应的Web服务器;

    2)从Web服务器上获得指定的Web文档;

    3)断开与远程的Web服务器的连接.

 

 我的计算机配置:XP中装VM,VM中装的RedHat(IP:192.168.121.132)

安装Apache服务器:

   Apache官网下载地址:http://httpd.apache.org/download.cgi

1)  安装Apache的硬件和软件配置要求

确保磁盘至少有50MB的空闲空间;

确保操作系统已经安装并正确配置了gcc

2)  解压httpd-2.4.1.tar.gz包文件

# tar –xzvf  httpd-2.4.1.tar.gz

3)  进入httpd-2.4.1目录,使用configure配置安装参数

#./configure –prefix=/usr/local/apache2 (--with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre)

4)  编译并安装Apache

#make

#make install

 

安装过程中遇到的问题,解决方法:

   #./configure --prefix= /usr/local/apache2    ……检查编辑环境时出现如下:

1checking for APR... no
configure: error: APR not found .  Please read the documentation.

 

安装APR(Apache Portable Runtime )

apr下载地址:http://apr.apache.org/download.cgi
#tar -zxvf apr-1.4.2.tar.gz //unzip -o apr-1.4.2.zip
#cd apr-1.4.2
#./configure  --prefix =/usr/local/apr
#make
#make install

 

2checking for APR-util... no
configure: error: APR-util not found .  Please read the documentation.

 

安装APR-util

apr-util下载地址:http://apr.apache.org/download.cgi

#tar -zxvf apr-util-1.3.9.tar.gz
#cd apr-util-1.3.9
#./configure --prefix=/usr/local/apr-util  --with-apr=/usr/local/apr

#make
#make install

 

3、configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/

安装pcre

pcre下载地址:http://sourceforge.net/projects/pcre/

#tar –zxvf pcre-8.10. tar.gz  ( unzip  pcre-8.10.zip)
#cd pcre-8.10
#./configure --prefix=/usr/local/pcre
#make
#make install

 

Apache服务的启动、关闭和检测

#cp /usr/local/apache2/bin/apachectl  /usr/local/sbin   //复制Apache启动文件到/usr/local/sbin  

#apachectl  start\stop\restart     //启用、停止、重启

#netstat –an|grep tcp (查看是否有80端口(默认))

# ps -ef |grep httpd  (进程查看)

浏览器登录http://127.0.0.1http://localhost或系统IP(查看是否出现/usr/local/apache2/htdocs/index.html文件中的相应内容)

usr/local/apache2/htdocs 为网页文件根目录

 

Apache的基本配置及维护:

配置文件所在位置:/usr/local/apache2/conf/httpd.conf

# apachectl -V  //查看Apache软件的版本信息

# apachectl -l  //查看已经被编译的模块

#apachectl configtest    //验证配置http.conf是否正确

Apache日志分析:

Apache服务器运行后会生成两个日志文件:

access_log (访问日志)      error_log (错误日志)

[root@localhost Server]# pwd  (软件包所在目录位置

/media/RHEL_5.2 i386 DVD/Server

[root@localhost Server]# ll |grep webalizer-2.01_10-30.1.i386.rpm

-rw-r--r-- 380 root root   107121 2007-01-19 webalizer-2.01_10-30.1.i386.rpm

 

[root@localhost Server]# rpm -ivh --test webalizer-2.01_10-30.1.i386.rpm (模拟安装

warning: webalizer-2.01_10-30.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...                                                       ########################################### [100%]

[root@localhost Server]# rpm -ivh webalizer-2.01_10-30.1.i386.rpm  (安装

warning: webalizer-2.01_10-30.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...                                                       ########################################### [100%]

   1:webalizer                                                     ########################################### [100%]

[root@localhost etc]# rpm -lq webalizer (查看安装的软件包清单

/etc/cron.daily/00webalizer

/etc/httpd/conf.d/webalizer.conf

/etc/webalizer.conf

/usr/bin/webalizer

/usr/bin/webazolver

/usr/share/doc/webalizer-2.01_10

/usr/share/doc/webalizer-2.01_10/README

/usr/share/man/man1/webalizer.1.gz

/var/lib/webalizer

/var/www/usage

/var/www/usage/msfree.png

/var/www/usage/webalizer.png

[root@localhost htdocs]# vi /etc/webalizer.conf (修改配置文件,红色为修改后

#LogFile        /var/log/httpd/access_log

LogFile        /usr/local/apache2/logs/access_log

#OutputDir      /var/www/usage

OutputDir      /usr/local/apache2/htdocs/loganalyze

[root@localhost bin]# /usr/bin/webalizer (运行webalizer,将在/usr/local/apache2/htdocs/loganalyze目录下生成相应的报表)

 

Apache安全配置:

由httpd.conf配置文件中的Diretory段来设定,通过Allow、Deny、Order指令进行配置

例如:<Directory /usr/local/apache2/htdocs/images>

    AllowOverride none

   Order deny ,allow (先执行拒绝,在执行允许规则)

  Deny from all (拒绝所有客户端访问)

  Allow from 192.168.121.132 (允许REdHat本身访问)

 #Require all denied

</Directory>

 效果:RedHat浏览器上访问允许(在RedHat上访问时须输入192.168.121.132才能得出效果,此时不能用localhost登录);XP上访问images文件时就不能正常访问。

 

通过用户验证来保证Web服务器的初级安全:

当Web服务器请求经此认证模式保护的URL时,将会出现一个对话框,要求用户输入用户名和口令。用户输入后,传给Web服务器,Web服务器验证它的正确性。如果正确,则返回页面;否则将返回401错误。

   1)  创建保存用户名和口令的认证口令文件users(在/usr/local/apache2/conf下),并添加用户;

#htpasswd  -c /usr/local/apache2/conf/users  lidong (添加名为lidong的用户信息到users; -c选项为创建文件)

   2)  对httpd.conf配置文件中的<Directory>段进行设置,添加如下:(设置完重启即可生效)

<Directory "/usr/local/apache2/htdocs/secure_info">

    Options Indexes FollowSymLinks

AllowOverride none

AuthType Basic   (认证类型:基本认证)

AuthName "secure_info_auth"

AuthUserFile /usr/local/apache2/conf/users (口令文件位置)

require user lidong

Order deny,allow

Deny from all

Allow from 192.168.121.132

 #Require all denied

</Directory>

    3)测试。浏览器中登录192.168.121.132/secure_info ,若登录成功则将要求用户输入用户名和用户口令

 

原创粉丝点击