WEB服务器的架设,在linux有一个很著名的架构叫lamp:linux+apache+mysql+php
Apache一直是Internet上最流行的Web服务器
后台进程:httpd
脚本:/etc/rc.d/init.d/httpd
使用端口:80(http),443(https)
所需RPM包:httpd
配置路径:/etc/httpd/*
默认网站存放路径:/var/www/*
apache主要目录和文件说明
主配置文件位置/etc/httpd/conf/*或者/usr/local/apache2/conf/httpd.conf
启动脚本/etc/rc.d/init.d/httpd
格式的帮助文档/usr/local/apache2/manual/*html
用在html网页中的图标文件/usr/local/apache2/icons/*
建立和更新apache用户的程序/usr/local/apache2/htpasswd
http服务器程序/usr/sbin/httpd
日志文件/usr/local/apache2/
优点:免费,稳定,速度快
我们先安装apache
rpm -ivh httpd-2.2.3-31.el5.centos.i386.rpm
mv httpd-2.0.54 apache
cd apache
./configure --prefix=/usr/local/apache2 --enable-module=so
make
make install
安装apache至/usr/local/apache 并配置apache支持dso方式
查看一下安装Apache的情况
[root@host CentOS]# rpm -qa | grep httpd
httpd-2.2.3-31.el5.centos
httpd-manual-2.2.3-31.el5.centos
system-config-httpd-1.3.3.3-1.el5
安装好了,启动Apache,
[root@host CentOS]# service httpd start
现在就可以先看看这个服务带给我们的是什么,因为做这个实验应该可以DNS服务实验一起,但是时间的问题没有在一起做,访问WEB服务的时候,我们没有用域名服务器,只是对应WEB服务器的IP地址
要想网页上渡口自己想配置的内容就要来配置Apache,我们继续一步一步的来配置他!!!
这是apache的所有配置文件存放的目录
[root@host ~]# ll /etc/httpd/
总计 28
drwxr-xr-x 2 root root 4096 11-04 17:08 conf
drwxr-xr-x 2 root root 4096 11-04 17:09 conf.d
lrwxrwxrwx 1 root root 19 11-04 17:08 logs -> ../../var/log/httpd
lrwxrwxrwx 1 root root 27 11-04 17:08 modules -> ../../usr/lib/httpd/modules
lrwxrwxrwx 1 root root 13 11-04 17:08 run -> ../../var/run
这是网页文件存放目录,一般在html内
[root@host ~]# ll /var/www/
总计 48
drwxr-xr-x 2 root root 4096 2009-09-04 cgi-bin
drwxr-xr-x 3 root root 4096 11-04 17:08 error
drwxr-xr-x 2 root root 4096 2009-09-04 html
drwxr-xr-x 3 root root 4096 11-04 17:08 icons
drwxr-xr-x 14 root root 4096 11-04 17:09 manual
drwxr-xr-x 2 webalizer root 4096 11-04 17:08 usage
[root@host ~]# ll /var/www/html/
总计 0
apache的主配置文件
[root@host ~]# vim /etc/httpd/conf/httpd.conf
httpd.conf中每行包含一条语句,行末使用反斜杠“\”可以换行,但是反斜杠与下一行中间不能有任何其他字符(包括空白)
httpd.conf的配置语句除了选项的参数值以外,所有选项指令均不区分大小写,可以在每一行前用“#”号表示注释。
全局配置的相关参数,全局的参数一般不用改哦
ServerType
选择系统激活服务器的方式。可以是inetd或standalone
默认应该是独立的stationalone
ServerRoot
设定Apache 安装的绝对路径
#
ServerRoot "/etc/httpd"
TimeOut
设定 服务器接收至完成的最长等待时间
#
Timeout 120
KeepAlive
设定服务器是否开启连续请求功能,真实服务器一般都要开启
#
KeepAlive Off
MaxKeepAliveRequests
设定服务器所能接受的最大连续请求量
#
MaxKeepAliveRequests 100
#
KeepAliveTimeout 15 \\使用者‘连续’请求的等待时间上限数
##
## Server-Pool Size Regulation (MPM specific)
##
# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# ServerLimit: maximum value for MaxClients for the lifetime of the server
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule prefork.c>
StartServers 8 \\设定激活时所需建立的子进程数
MinSpareServers 5 \\设定最小闲置子进程数
MaxSpareServers 20 \\设定最大闲置子进程数
ServerLimit 256
MaxClients 256 \\设定同时能够提供使用者的最大服务请求数
MaxRequestsPerChild 4000
</IfModule>
Port
设定http服务的默认端口。
User/Group
设定 服务器程序的执行者与属组
#
User apache
Group apache
我们说过,网页文件默认是放在/var/www/html中的,我们现在就自己去写个网页,简单的,来测试下
[root@host ~]# ll /var/www/html/
总计 0
[root@host ~]# echo hello,this is my home,welcome! > /var/www/html/index.html
[root@host ~]# ll /var/www/html/
总计 8
-rw-r--r-- 1 root root 48 02-19 10:50 index.html
[root@host ~]# cat /var/www/html/index.html
hello,this is my home,welcomell!
然后重新访问你的服务器,看看有什么变化
在主配置文件(/etc/httpd/conf/httpd.conf)中,看见DirectoryIndex了么,这个位置就是定义主页文件的名字的,自己可以随意修改,但是一般网页开发都写成了index.html,index.htm default.html 等等
#
DirectoryIndex index.html index.html.var
我们按照自己的想法构架一个PHP WEB网站。。。GO。。。
添加了一个index.php ,方便一会我们测试apache支持php,如果找不到,系统会出现redhat的测试页面
#
DirectoryIndex index.html index.php
我们测试把默认网站目录改到root家目录下
第一步,修改DocumentRoot这个位置 1
第二步,修改目录的权限设置 2
重启一下httpd服务
[root@host webphp]# service httpd restart
客户端浏览
现在我们自己建一个PHP页面吧。。。
[root@host webphp]# ll /root/webphp
总计 0
[root@host webphp]# echo hello.This is a php webservers! > /root/webphp/index.php
[root@host webphp]# ll /root/webphp
总计 8
-rw-r--r-- 1 root root 32 02-19 13:58 index.php
我们来看看我们自己建的PHP页面吧。。。
基于LINUX下的基本服务构架都实验过了!但是对于构架好后的正常维护,还需要有更好的环境去努力学习啊。。。
-------------------